JavaScript is required to view this page
Gateway Error Codes

Gateway Error Codes

When a payment or account-access request cannot continue in the gateway, the customer sees a short message, a suggested next step and a BG code printed after the words "Error code:". The code is what a customer reads back to your support team.

These codes are shown only on the gateway. The APIs never return them: an API error carries a BP code for Blink Payments or a BDT code for Blink Data, documented on each product's Error Codes page.

What the Customer Sees

The gateway screen has the message, an explanation where there is one, and a next step. Some screens return the customer to your redirect_uri automatically after a short countdown; the rest offer a link back to your site. Either way the return carries the status and error parameters described under Return Parameters, and the status column below is the value your application receives for each code. Where it says none, nothing comes back to your application.

Unless a row says otherwise, the customer's next step is to return to your site and start again, and a new attempt always needs a new consent. Whatever the code, confirm the outcome with a server-side GET of the consent before acting on it.

The messages below are the Blink Payments wording. For a Blink Data consent the gateway says "request" in place of "payment" or "payment request"; where the Data wording differs beyond that, the table gives it.

Outcome Codes

The customer or their bank decided, and the request will not proceed.

CodeWhat the customer seesWhat happenedWhat to dostatus
BG004Payment cancelled. (Blink Data: Consent cancelled.)The customer cancelled, on the gateway or at their bank.Nothing to fix.cancelled
BG006We could not identify you with your bank.On the "Send to app" option the bank could not match the identifier the customer entered: a mobile number, customer number or previous consent ID.The customer tries a different identifier, or the redirect option. If your application sent a decoupled flow_hint, check the identifier you supplied.rejected
BG009The payment was declined and you were not charged. (Blink Data: The request was declined.)The bank declined the payment or sent the customer back as declined, or the customer did not approve it.The customer tries another account or bank if the first declined.rejected
BG011Your payment request has not been approved within the timeout period.Blink Payments: on the "Send to app" option the customer did not approve the request in their banking app before the bank's window closed. Either product: the bank returned the customer with a timeout. See Timeouts and Deadlines.The customer approves the bank's notification promptly next time.timeout
BG012Your card payment didn't go through Your card was declined. You haven't been charged. Try another card, or pay by bank instead. (Blink Data: Your request was declined.)Blink Payments: 3D Secure failed without the customer being asked to confirm the payment, or the card issuer declined the card when it was charged. A failed 3D Secure challenge shows no gateway screen: the customer goes straight back to your site. Blink Data: the bank sent the customer back as declined.Blink Payments: when 3D Secure failed, the customer stays in the gateway and can try another card or pay by bank, and this screen, with the return to your site, appears only after the third declined card. When the issuer declined the charge, the consent has ended, so a new attempt needs a new consent.rejected
BG014Your payment was not authorised.The customer declined at the bank, or the bank rejected the consent.If their bank keeps rejecting it, the customer should ask the bank.rejected
BG018Your bank session ended before the payment was authorised. Please try again.The bank's authorisation session expired before the customer finished its steps.The customer completes the bank's steps in one go.rejected
BG019Your card payment didn't go through Your bank couldn't complete its security check for this card, which is needed for a payment of this size. You haven't been charged. Try another card, or pay by bank instead.Blink Payments only: the card could not be authenticated with 3D Secure (for example, the issuer's 3D Secure was unavailable or the card is not enrolled) and the payment, surcharge included, is over BlinkPay's limit for such payments, so it was declined before the card was charged.The customer stays in the gateway and can try another card or pay by bank. This screen, with the return to your site, appears only after the third declined card.rejected

Nothing was decided. The problem is with the link the customer opened or the session it belongs to.

CodeWhat the customer seesWhat happenedWhat to dostatus
BG005We could not find your payment request. (Blink Data: We could not find the request.)The consent the gateway link names no longer exists: it was revoked, or the link was built or edited rather than taken from the consent response. Or the link carries no consent ID at all, in which case the customer sees no link back.Open the gateway only with the redirect_uri returned when the consent was created, unchanged, and never reuse one after the consent has ended. If your records still show the consent as awaiting authorisation, contact support with the consent ID.error, or none when the link had no consent ID
BG007Your payment request is no longer valid.The customer came back to the gateway for a consent whose authorisation window had already passed, such as a tab reopened later. Blink Data: also when a "Send to app" request is not approved before the bank's window closes.Start again.timeout
BG013Thanks for returning. Your previous payment session has completed. (Blink Data: Thanks for returning. Your previous session has completed.)The customer returned to a gateway tab after that session had already finished. This is a notice, not an error: the screen shows the message with no code, so match it by its wording, and offers no link back.Nothing.none
BG016This payment link has already been opened on another device. (Blink Data: This link has already been opened on another device.)The gateway link was opened in a second browser or device. A link works only where it was first opened, and that browser may still complete.The customer continues in the browser where they first opened the link.none
BG017This payment request has timed out.The consent expired before the customer finished: the gateway's inactivity limit or the consent's own expiry passed. See Timeouts and Deadlines.Start again.timeout

Technical Codes

Something failed on the way. The customer did nothing wrong.

CodeWhat the customer seesWhat happenedWhat to dostatus
BG001We couldn't process your payment request.A technical failure, or the bank reported an error without a more specific reason.If several customers report it in a short time, contact support with the consent IDs and times.error
BG002The payment could not be completed. (Blink Data: The request could not be completed.)The customer came back from their banking app, but the gateway could not confirm what happened. Blink Data: also when an authorised consent has no redirect_uri to return to.Read the consent before offering a retry: the payment may have gone through.error
BG003We couldn't cancel your payment request.The customer chose to cancel, but the cancellation did not go through.The consent stays awaiting authorisation until it times out.error
BG015We couldn't verify that you're not a robot.The gateway's bot-protection script could not load, usually because a browser extension, firewall or network blocks it. The screen offers only a refresh, with no link back.The customer allows the script or tries another browser or network, then refreshes.none

Codes not listed here, such as BG008 and BG010, are no longer issued.

Reporting a Problem

If a customer reports a code you cannot explain from their consent's status, contact support with the code, the bank and the consent ID. The customer cannot see the consent ID on the error screen, so take it from the cid return parameter or your own records.