If you're a developer, see our Github repository on how to handle transaction errors.
Errors are either originating from the issuing bank (the bank that issued the card) or from Paylike.
An error originating from an issuing bank is returned when either the customer makes a mistake e.g. by entering the wrong card number or due to the issuing bank rejecting the transaction because e.g. the card has been stolen.
In general, you can not resolve errors from the issuing bank, but must instruct the customer to solve it themselves or have them contact their issuing bank.
Errors originating from Paylike is generally caused by you, the merchant. It can be due to a programming error, missing HTTPS, your account not being approved or a rule enforced by Paylike (e.g. 3-D Secure required, transaction size limit or similar). If you are not able to resolve the error yourself, get in touch.
The payment system (Visa/Mastercard) is an old system with thousands of issuing banks and in-between processors. Therefore, the quality of the errors we see from the issuing banks and the card network is, unfortunately, quite poor.
Many errors (30-40 %) are therefore mapped to error 8, which is a generic “card was rejected”. This can mean a myriad of things and in general the only way to investigate such an error is to have the cardholder ask their issuing bank for the specific reason as they've send this generic one as a response.
Have the customer check all card details. If the problem persists, have the customer contact their bank.
Have the customer check the card number. If the problem persists, have the customer contact their bank.
Have the customer check the CVC (security code), typically found on the back of the card. If the problem persists, have the customer contact their bank.
Have the customer check the expiry month and year is correct and not overdue. If the problem persists, have the customer contact their bank.
The card has expired or the customer added an invalid expiry date. Have the customer try again or try another card.
There are not enough funds available to cover the purchase. Have the customer try another card or add funds to their account. If the customer has enough funds on the account, the error is most likely due to a card threshold or limit, e.g. daily spending limit. Such limit can often be changed in the customer's eBanking solution. If the problem persists, have the customer contact their bank.
The card has been rejected by the customer's bank. Instruct the customer to contact their bank and ask why the card was rejected.
The card may be rejected for a myriad of reasons, ranging from something simple as the card not being enabled for online use, the transaction being caught in the issuing bank's fraud filter. However, it's most likely the issuing bank or card network responding with a generic error instead of a more specific one, e.g. error 10 for a stolen card.
Paylike is not able to provide a more specific reason. The customer must contact their bank to get a more specific reason and ask their bank to help them resolve the issue.
The card is restricted. Instruct the customer to contact their bank and ask why the card is restricted.
The card has been blocked and listed as lost or stolen. The customer should contact their bank to resolve this.
Please note, as the card has been marked as lost or stolen, the card details may be in the hands of a criminal and you should therefore be careful if you suspect this. Do not e.g. allow the customer to pay without 3-D Secure.
The customer didn't enter their card number, ask the customer to try again.
The customer didn't enter their card expiry month, ask the customer to try again.
The customer didn't enter their card expiry month, ask the customer to try again.
The customer didn't enter the card CVC (security code) which is typically found on the back of your card, ask the customer to try again.
The amount limit on the card has been reached. Have the customer contact their bank to reset or increase the limit.
The card brand is not supported. If the customer is using a supported payment method please have the customer verify the card number. If the customer is not using a supported payment method, unfortunately, we can't process the transaction.
To complete the transaction the customer must sucessfully authenticate using 3-D Secure. Ask the customer to try again and make sure that they complete the authentication. The authentication is implemented by the customer's bank and is typically a push message in an authenticator/banking app or a text message with a code which must be inserted in the payment window. If 3-D Secure is not initiated ask the customer to contact their bank to ensure 3-D Secure is enabled.
The customer failed to authenticate via 3-D Secure. Ask the customer to try again.
The failing 3-D Secure is usually caused by the customer not authenticating correctly, e.g. by not inserting the verification code, approving the transaction in due time or similar, but it may fail due to a problem at the issuing bank. Problems with issuers 3-D Secure services are often temporary and retrying the transaction often resolves the issue.
If the customer keeps experiencing an issue, they should reach out to their bank to get help.
Have the customer check their card number is correct and make sure 3-D Secure is supported.
If the problem persists, have the customer contact your bank.
When creating the transaction, an invalid currency is sent to Paylike. Ensure your application is sending the correct currency. If you are using one of our plugins or SDK, contact us.
The transaction was rejected for an unknown reason, possibly due to suspicion of fraud.
Some have restrictions on their Paylike account, e.g. a limited number of countries they can accept cards from. If you are aware of such a restriction, please check if the transaction is rejected due to it, e.g. check on binlist.net if the country of the card is outside the list of countries you can accept cards from.
This error is typically due to a temporary interruption of service at one of our upstream processors. Try again 1-3 times, if the error persists, contact us.
The descriptor is the text shown on the cardholder's account statement. Due to limits in Visa and Mastercard the string can maximum be 22 characters long and may only contain ASCII printable characters. To test if your descriptor is valid, simply go to the settings of your Paylike account and insert the descriptor in the “Descriptor” field. If you can update the account, it works. Alternatively, if you are using a dynamic descriptor or similar, check out this repository.
When creating the transaction, an invalid amount is sent to Paylike. Ensure your application is sending the correct amount. If you are using one of our plugins or SDK, contact us.
When creating the transaction, no amount is sent to Paylike. Ensure your application is sending the correct amount. If you are using one of our plugins or SDK, contact us.
When creating the transaction, no currency is sent to Paylike. Ensure your application is sending the correct currency. If you are using one of our plugins or SDK, contact us.
Your website must use https (“SSL”). Contact your developer or web host for help.
When creating the transaction, the amount sent to Paylike is above the limit of a maximum 9 digits. Ensure your application is sending the correct amount. If you are using one of our plugins or SDK, contact us.
The public key you have added is not valid. Please go to your dashboard and ensure the public key is correct.
Your Paylike account is not allowed to create transactions, check your dashboard for a message from support.
Your Paylike account is not allowed to save cards. Saving cards requires approval from Paylike. Contact us to apply for saving cards.
The error codes we expose are Paylike's own and not e.g. “global” error codes from Visa or Mastercard. Therefore, you are not able to look up these error codes elsewhere.