Customer, Account and Card-Related Errors
This page provides a comprehensive list of potential error codes that may arise during Customer, Account, or Card validations, whether within the Vault or as determined by the Acquirer or by the Issuer.
PY0002
- Card is expired
PY0002
- Card is expiredProduct/s: VAULT
Error Code and Message | PY0002 - Card is expired |
HTTP Code | 400 |
Problem | The card used for the transaction has already expired. |
What you should do | The API Consumer or the merchant should advise the customer to use a valid and active card. For sandbox testing, you can use any of the valid cards in Sandbox Credentials and Cards . |
PY0121
- Card is expired
PY0121
- Card is expiredHTTP Status: 400
Product/s: INVOICE CHECKOUTPLUGINS
⚠️ Applicable for Card payments only.
This occurs when an expired card is used. You can suggest to the customer to attempt the transaction using a valid and active card. This specific error is determined by the Acquirer.
PY0007
- Invalid token status
PY0007
- Invalid token statusProduct/s: VAULT
Error Code and Message | PY0007 - Invalid token status |
HTTP Code | 400 |
Problem | The API call was made with a paymentTokenId already used or has expired. |
What you should do | The API Consumer should generate a new paymentTokenId using Create Payment Token |
PY0008
- Token is invalid
PY0008
- Token is invalidProduct/s: VAULT
Error Code and Message | PY0008 - Token is invalid |
HTTP Code | 400 |
Problem | The API call was made with a paymentTokenId that is not valid or does not exist. |
What you should do | The API Consumer should generate a valid paymentTokenId via the Create Payment Token |
PY0021
- Failed to add customer
PY0021
- Failed to add customerHTTP Status: 400
Product/s: VAULT
This is a systemic error that occurs when creating a customer record. Please review the mandatory fields for creating a customer and try again.
If the error persists even after multiple retries, please escalate the issue to
PY0023
- Customer does not exist
PY0023
- Customer does not existProduct/s: VAULT
Error Code and Message | PY0023 - Customer does not exist |
HTTP Code | 404 |
Problem | The API call was made with a customerId that does not exist. |
What you should do | The API Consumer should use a customerId that exists or create a new id via Create Customer API |
PY0024
- Failed to delete customer
PY0024
- Failed to delete customerHTTP Status: 400
Product/s: VAULT
This is a systematic error in deleting a customer record.
Validate the status of the customer record by calling Retrieve Customer. If it still exists, retry sending another request to delete the customer record.
If the error persists even after multiple retries, please escalate the issue to
PY0025
- Failed to update customer details
PY0025
- Failed to update customer detailsHTTP Status: 400
Product/s: VAULT
This is a systematic error in updating Customer details.
Validate the status of the customer record by calling Retrieve Customer. If it exists and details are not modified, retry sending another request to update the customer record.
If the error persists even after multiple retries, please escalate the issue to
PY0026
- Failed to update card details
PY0026
- Failed to update card detailsProduct/s: VAULT
Error Code and Message | PY0026 - Failed to update card details |
HTTP Code | 400 |
Problem | A call to Update a Card of Customer was made with the isDefault set to false. |
What you should do | If the API Consumer wants to set the vaulted card as default, the API Consumer should pass the isDefault with the value true when using the endpoint. |
PY0027
- Card does not exist
PY0027
- Card does not existProduct/s: VAULT
Error Code and Message | PY0027 - Card does not exist |
HTTP Code | 404 |
Problem | Can be either of the following:
|
What you should do |
|
PY0028
- Failed to delete card
PY0028
- Failed to delete cardHTTP Status: 400
Product/s: VAULT
This is a systematic error in deleting the Card. Kindly retry the transaction.
Validate the Card record by calling Retrieve Card. If it still exists, retry sending another request to delete the card record.
If the error persists even after multiple retries, please escalate the issue to
PY0029
- No card found for customer
PY0029
- No card found for customerProduct/s: VAULT
Error Code and Message | PY0029 - No card found for customer |
HTTP Code | 400 |
Problem | The customer does not have an existing vaulted card. |
What you should do | Vault a card following the Pay and Save or Save a Card only flow. |
PY0030
- Invalid card token status
PY0030
- Invalid card token statusProduct/s: VAULT
Error Code and Message | PY0030 - Invalid card token status |
HTTP Code | 400 |
Problem | The card vaulting session has expired. |
What you should do | Complete the Pay and Save or Save a Card only flow within the expiry limit. See the Card Vaulting Transaction Expiration in the Business Rules to Code for Online Payments. |
PY0036
- Card is not supported
PY0036
- Card is not supportedProduct/s: INVOICE CHECKOUTVAULTPLUGINS
Error Code and Message | PY0036 - Card is not supported |
HTTP Code | 400 |
Problem | The card used for the transaction is from a card scheme not supported by Maya. |
What you should do | As the API Consumer or as a merchant, confirm with your Relationship Manager that your expected card scheme has been configured. The card schemes supported by Maya are:
|
PY0043
- Card already exists
PY0043
- Card already existsHTTP Status: 400
Product/s: VAULT
This error will happen if the card you are trying to link is already linked to the customer.
Validate the Card record by calling Retrieve Card.
PY0105
- Account has insufficient balance to perform this transaction
PY0105
- Account has insufficient balance to perform this transactionHTTP Status: 400
Product/s: INVOICE CHECKOUTPAY WITH MAYAVAULTPLUGINS CHECKOUT-QRPHDYNAMIC QRPH
The linked account or the account being used does not have sufficient balance to make the transaction.
You can inform the user that the transaction was declined due to insufficient funds and advise them to cash in before making a transaction.
PY0117
- Card is invalid
PY0117
- Card is invalidHTTP Status: 400
Product/s: INVOICE CHECKOUTVAULTPLUGINS
This error will happen if the card being used is invalid or no longer valid (card BIN is not supported or the card is inactive).
Make sure you are using a valid and active card when making a transaction.
PY0119
- Issuer declined card or account
PY0119
- Issuer declined card or accountHTTP Status: 400
Product/s: INVOICE CHECKOUTPAY WITH MAYAVAULTPLUGINS CHECKOUT-QRPH
You will encounter this issue when the Issuer rejects any transactions to be made using this card.
Recommend trying with a different card.
PY0120
- Issuer decline
PY0120
- Issuer declineHTTP Status: 400
Product/s: INVOICE CHECKOUTPAY WITH MAYAVAULTPLUGINS CHECKOUT-QRPHDYNAMIC QRPH
You will encounter this error when the customer has provided invalid card details (e.g. expired card, or wrong card number).
Recommend trying a different card.
PY0123
- Account limit exceeded
PY0123
- Account limit exceededHTTP Status: 400
Product/s: INVOICE CHECKOUTPAY WITH MAYAVAULTPLUGINS CHECKOUT-QRPHDYNAMIC QRPH
The linked account or the account being used has reached the maximum number of transactions.
You can inform the user that the transaction was declined due to a limit. They can retry the transaction on the next day or use other accounts.
PY0127
- Please update incomplete customer records
PY0127
- Please update incomplete customer recordsHTTP Status: 400
Product/s: VAULT
You will encounter this error when Fraud protection is enabled and the provided customer details are incomplete.
Make sure to provide the minimum required customer details, as described in Fraud Protection guide, and retry the transaction.
PY0136
- Account or Card is compromised
PY0136
- Account or Card is compromisedHTTP Status: 400
Product/s: INVOICE CHECKOUTPAY WITH MAYAVAULTPLUGINS
You will encounter this error when the account is closed and is no longer usable.
You have to unlink the account and ask the user to link another account.