Online payments can fail for various reasons ranging from incorrectly entered data to a lack of funds or suspicions of fraud. An error code is sent whenever a transaction fails and indicates the reason for the failure.
Transactions can fail for many different reasons. Some of the most common ones include:
- Incorrect payment information, such as the wrong credit card number or CVV, the wrong bank account number or the billing information does not match the address on file for the buyer.
- The buyer has insufficient funds to cover the payment, e.g. because they have reached their credit limit on their credit card, or because there are insufficient funds in their bank accounts.
- The payment exceeds the maximum amount allowed for a single charge to that credit card.
- The transaction has been refused by the issuer of the credit card or bank due to suspicions of fraud. This is particularly common for international transactions where the seller is not located in the same country as the buyer. Some cards do not allow international transactions.
- The credit card has expired or been blocked by the owner due to loss/theft.
ISO 8583 defines a series of standardized response codes for card payments, but these codes may be mapped to provider-specific error codes. These should be covered in the API documentation.
Error codes include codes for an invalid or expired card, issues with incorrect payment information or invalid customer data, missing CVV and issues with 3DS, which can either fail or be a soft decline.
You can find the full list of the error codes used by IXOPAY in our documentation.
If you are the buyer, make sure that you have entered your payment details correctly, that you have sufficient funds to complete the purchase. If you are using a credit card, you can try contacting your bank to authorize the payment. It is possible that your card is not allowed to make international or online payments.
If you are the merchant, this depends on the reason the transaction failed. You can find more information in the transaction or error codes you receive. If the payment data is incorrect, the buyer will need to supply the correct information. In some cases, you may be able to process the transaction using an alternative PSP - for example one located in the same country as the buyer. Some PSPs are more likely to approve a transaction than others, depending on their risk management strategies. A/B testing can be one method of testing which PSP to route specific transactions to to increase authorization rates.
These are some of the advantages of a multi-acquirer setup connected to PSPs in different regions.
If the underlying data submitted by a customer is incorrect (e.g. a mistyped card number), the customer will need to correct the payment information for the payment to succeed.
Using an account updater (such as IXOPAY’s Account Updater) keeps credit card details up-to-date and ensures that card on file transactions do not fail because of changes to the underlying card details. This can be the case if the card has expired or has been reissued and eliminates the need to contact customers for updated payment details.
If the card details are correct, using a local payment service provider will typically increase acceptance rates. Using a local provider avoids the risk that a transaction fails because the card is not authorized for international payment or because of overzealous risk and fraud management strategies.
Working with multiple PSPs (multi-acquirer setup) in combination with smart routing allows you to route transactions to the PSP that is most likely to authorize a transaction. In most cases, this will be a local provider, though some PSPs are less risk-affine than others, and A/B comparisons can be a good way of deciding how to route your transactions to maximize your authorization rates.