Menu

MultiBanco

Note: To learn about the features of MultiBanco, there's an overviewhere

How to integrate MultiBanco payments:

Note: Multibanco is also available if you use the Hosted model. The mandatory data is the same for both Direct and Hosted models.

Direct payment request

For Multibanco payments, the <shopperEmailAddress> is mandatory:

Copied!
<?xml version="1.0" ?>
<!DOCTYPE paymentService PUBLIC "-//WorldPay//DTD WorldPay PaymentService v1//EN" "dtd/paymentService_v1.dtd">
<paymentService version="1.4" merchantCode="YOUR_MERCHANT CODE">
  <submit>
    <order orderCode="YOUR_ORDER_CODE"><!--Use a unique order code each time-->
      <description>YOUR_DESCRIPTION</description>
      <amount currencyCode="EUR" value="100" exponent="2"/>
      <orderContent>YOUR_ORDER_CONTENT</orderContent>
      <paymentDetails>
        <MULTIBANCO-SSL shopperCountryCode="PT">
          <successURL>http://www.worldpay.com/successURL</successURL>
          <cancelURL>http://www.worldpay.com/cancelURL</cancelURL>
          <pendingURL>http://www.worldpay.com/pendingURL</pendingURL>
        </MULTIBANCO-SSL>
      </paymentDetails>
      <shopper>
      <shopperEmailAddress>shopper@worldpay.com</shopperEmailAddress><!--Mandatory-->
      </shopper>
    </order>
  </submit>
</paymentService>

Hosted payment request

To redirect the shopper directly to the Multibanco payment pages append the below string to the end of the redirect URL provided in the XML response from Worldpay:

&country=PT&preferredPaymentMethod=MULTIBANCO-SSL

For Multibanco payments, the <shopperEmailAddress> is mandatory:

Copied!
<?xml version="1.0" ?>
<!DOCTYPE paymentService PUBLIC "-//WorldPay//DTD WorldPay PaymentService v1//EN" "dtd/paymentService_v1.dtd">
<paymentService version="1.4" merchantCode="YOUR_MERCHANT CODE">
  <submit>
    <order orderCode="YOUR_ORDER_CODE" installationId="1234567"><!--Use a unique order code each time. Contact Worldpay if you haven't got an installationID-->
      <description>Test order</description>
      <amount value="100" currencyCode="EUR" exponent="2" />
      <orderContent>
        <![CDATA[ ]]>
      </orderContent>
      <paymentMethodMask>
        <include code="ALL"/>
      </paymentMethodMask>
      <shopper>
        <shopperEmailAddress>shopper@worldpay.com</shopperEmailAddress><!--Mandatory-->
      </shopper>
      <statementNarrative>MERCHANT STATEMENT NARRATIVE</statementNarrative>
    </order>
  </submit>
</paymentService>

Example hosted landing page

Below is an example of the Hosted payment page (landing page) that the shopper lands on.

MultiBanco Hosted landing page

Response URLs

If you use the Direct model, you must specify the successURL, cancelURL, and pendingURL. If you use the Hosted model, we recommend that you specify these URLs.

After you submit your order, the Worldwide Payment Gateway returns the following response:

  • Hosted model: Information about how to complete the payment is returned to the shopper on the Worldpay payment pages. The shopper clicks Continue, after which the shopper is redirected to the pending (open) URL.

  • Direct model: The system returns a Worldpay redirection URL. This redirects the shopper to the merchant-supplied Pending URL that contains additional information as shown in the following example:

!--`http://www.worldpay.com/pendingURL?orderKey=BIBIT^DEMO^Example_Multibanco_Order&status=OPEN&multibancoReference=726+092+065&multibanco Entity=11249&multibancoPaymentAmount=100&multibancoPaymentCurrency=EUR`--

http://www.worldpay.com/pendingURL?orderKey=BIBIT^DEMO^Example_Multibanco_Order&status=OPEN&multibancoReference=679+115+881&multibanco_Entity=11893&multibancoPaymentAmount=100&multibancoPaymentCurrency=EUR

This example response includes the parameters listed in the below table.

ParameterExampleDescription
multibancoReference679+115+881The payment reference that the shopper must use to complete the payment.
multibancoEntity11893The entity reference that the shopper must use to complete the payment.
PaymentAmount100The amount that the shopper should pay, expressed in minor currency units. For example, 100 = 100 Euro cents.
multibancoPaymentCurrencyEURThe currency corresponding to the PaymentAmount.

In the above example, you must display a message of the following form to the shopper:

Copied!
To complete your payment, please make a deposit using the details below.

To avoid delays in your payment being processed, please ensure that you use the exact details and payment amount shown below.

You can pay through your Internet bank or at an ATM.

**Reference**: 679115881

**Entity**: 11893

**Amount**: EUR 1

Reference expiry

By default, the Multibanco reference expires in 3 days. You can extend the expiry to 30 or 90 days. Contact yourCorporate Support ManagerorRelationship Managerto request this change on your account.