Multibanco Payments

Multibanco is a browser payment method used in Portugal that allows payers to purchase goods online. When the payer selects Multibanco on the checkout page, they receive a payment reference number and an entity ID using which they can either log into their online banking or use an ATM to complete the payment. Once the payment is made, you will be notified and the goods may be released to be shipped to the payer.

Multibanco is a supported browser payment method in the MasterCard Payment Gateway. This page describes integration details specific to Multibanco. It's recommended that you read the integration guidelines for browser payments, before building a Multibanco integration.

Multibanco browser payments are only supported for transactions in the EUR currency.

Prerequisites

To offer Multibanco as a payment method via the MasterCard Payment Gateway:

  • You must be registered with your browser payments service provider.
  • Your merchant profile on the gateway must be configured using the details of your account with the browser payments service provider.
  • You must have a bank account in one of the supported currencies registered against your merchant account at your browser payments service provider.

Multibanco Integration

Multibanco via Hosted Checkout

Multibanco via Hosted Checkout is currently not supported. Please contact your payment service provider for further information.

Multibanco via Direct Payment

Direct Payment integration allows you to offer Multibanco payment method on your own checkout page.

Multibanco is supported from API version 45 onwards.

Make an Initiate Browser Payment request where sourceOfFunds.type = MULTIBANCO and browserPayment.operation = PAY (the Authorize operation is not supported by Multibanco). For the standard fields, see Browser Payments via Direct Payment Integration

.

The following fields are returned in the Initiate Browser Payment/Retrieve Transaction/Retrieve Order response after you initiate a Multibanco payment.

  • sourceOfFunds.provided.multibanco.entityId: Your merchant identifier at Multibanco.
  • sourceOfFunds.provided.multibanco.paymentReference: An identifier for the Multibanco payment.

You must provide these fields to your payer to complete the payment.

Preferred Language

You can set the language that you prefer Multibanco to use for pages displayed to the payer by providing the browserPayment.preferredLanguage field in the Initiate Browser Payment request. However, the language will be used only if Multibanco supports it.

Sample Code to Initiate Multibanco Payment
{
    "apiOperation":"INITIATE_BROWSER_PAYMENT",
    "browserPayment":{
      "operation":"PAY",
    "returnUrl":"https://<return_url>"
},
    "order":{
        "amount":"10.00",
        "currency":"EUR"
        },
        "sourceOfFunds":{"type":"MULTIBANCO"
        }
}  

How to Interpret the Transaction Result

The table below shows the transaction response codes for the possible scenarios you may encounter after initiating a Multibanco payment.

Initiate Browser Payment Response
What This Means...
response.gatewayCode=SUBMITTED
result=SUCCESS
The following fields are returned:
sourceOfFunds.provided.multibanco.entityId
sourceOfFunds.provided.multibanco.paymentReference
Retrieve Transaction/Retrieve Order Response
What This Means...
response.gatewayCode=APPROVED
result=SUCCESS
sourceOfFunds.provided.multibanco.terminalLocation
sourceOfFunds.provided.multibanco.terminalId
The payment is successful.
response.gatewayCode=PENDING
result=PENDING
The MasterCard Payment Gateway is waiting for a notification from the acquirer about the payment result. Try RETRIEVE_TRANSACTION again later or listen to notifications from the MasterCard Payment Gateway.
response.gatewayCode=CANCELLED
result=FAILURE
The payer has cancelled the interaction for this payment. Offer the payer the option to try another payment method.
response.gatewayCode=DECLINED or ACQUIRER_SYSTEM_ERROR
result=FAILURE
The payment was declined. Offer the payer the option to try another payment method.
In the case of an ACQUIRER_SYSTEM_ERROR you may want to inquire with the acquirer the reason for payment failure, or you can try RETRIEVE_TRANSACTION again.
response.gatewayCode=TIMED_OUT
result=FAILURE
Treat this as a declined payment. The gateway will make an attempt to ensure the transaction is not successful or will revert the transaction.

Testing Your Integration

The MasterCard Payment Gateway provides a browser payments emulator that allows you to test your Multibanco integration.

Copyright © 2021 MasterCard