Learn how to accept open banking payments in the United Kingdom.
Open banking is an online banking method, supported by most major banks in the United Kingdom. When paying with open banking, the shopper selects their bank from a drop-down in your checkout, and is redirected to their bank's website or app to complete the payment.
|Payment Type||Payment flow||Recurring||Refunds||Partial Refunds||Captures||Partial Captures||Chargebacks|
You can accept open banking payments with:
Integrate with Checkout SDKs
Our Checkout SDKs support open banking payments without any additional configuration.
To know whether a payment is successful, you'll also need to set up notifications.
Integrate with API
In this section, we show the API integration steps for open banking.
Before you begin this section, make sure you read and understand our API Integration guide.
Collect required shopper detailsStep 1:
When a shopper chooses to pay with open banking, you need to collect the issuer ID of their bank in your payment form:
Present a list of available banks in your payment form:
Bank Name Issuer ID Allied Irish Bank 1 Allied Irish Bank (Corporate) 2 Barclays 3 Bank of Scotland 4 Danske Bank 5 Danske Bank (Corporate) 6 First Direct 7 First Trust Bank 8 First Trust Bank (Corporate) 9 Halifax 10 HSBC Bank 11 Lloyds Bank 12 M&S Bank 13 Nationwide Building Society 14 National Westminster Bank 15 Royal Bank of Scotland 16 Santander 17 Ulster Bank 18 Bank of Ireland 19
- Collect the Issuer ID that corresponds to the shopper's bank. You'll need this to make an open banking payment for this shopper.
Step 2: Make a payment
- Make a
/paymentsAPI call, providing:
reference: Your unique reference for this payment.
paymentMethod.issuer: The shopper's bank. Specify this with the Issuer ID value that corresponds to this bank.
returnUrl: The URL the shopper will be redirected back to after they complete the payment.
This returns a
redirectobject containing a
Step 3: Redirect shopper
To complete the open banking payment, the shopper will need to approve it on their bank's website or app.
Redirect the shopper to the URL specified at
When the shopper has completed the payment they will be redirected back to your website or app using the
returnUrlyou specified earlier. This will be appended with a
Do not use the
resultCodeyou receive from the
returnUrlto determine whether the payment was successful. Instead, verify the result on your server.
Step 4: Present payment result
To verify the result of the payment, submit the
The response will contain a
pspReference, which is our unique identifier for this payment, and a
- Use the
resultCodeyou received from the
/payments/detailsendpoint to present the payment result to your shopper via your website or app.
Open banking result codes
resultCodes you can receive for open banking are:
- Authorised: The payment was successful. You will receive the funds in 2-3 days.
- Cancelled: The shopper cancelled the payment while on their bank's website or app. Ask the shopper whether they want to continue with the order, or request that they select a different payment method.
- Refused: The payment was refused by the shopper's bank.
- Pending: The shopper has completed the payment but the final result is not yet known. It may take minutes or hours to confirm this. Inform the shopper that you've received their order, and are waiting for the payment to be completed.
To find out more about result codes and how you can action them, see Result codes.
Open banking notifications
When accepting open banking payments, we recommend that you set up notifications. After set up, you will receive notifications informing you of the result of open banking payments, including those:
- With a Pending status.
- Where the shopper failed to return to your website or app after completing the payment.
If the payment was successful, you'll receive a notification with:
Testing open banking payments
Before accepting live open banking payments, test your integration using the following details:
|Bank name||Issuer ID||Username||Password|
|Model Bank v2||1||mits||mits|
Check the status of open banking test payments in your Customer Area > Transactions > Payments.