AI-generated Key Takeaways
-
Response codes are defined for each service and can be found in their respective documentation links.
-
ISO 8583 response codes have been mapped to Google response codes for easier integration.
-
Some ISO 8583 codes may trigger an error response with a specific HTTP code and message.
-
This mapping list is not exhaustive, and Google should be contacted for unmapped ISO codes.
-
Payment integrators are responsible for handling error responses and ensuring idempotency.
Response codes are defined in their respective services.
e.g.
ISO 8583 Mappings
Below is a set of common ISO 8583 response codes and recommended mappings to
Google response codes. Some ISO codes map to an error response. In these cases,
the table specifies which HTTP code to use and what details to
include in the error message.
This is not an exhaustive list. Please contact Google if a particular ISO code is unmapped.
| ISO 8583 Code to Google Code Mappings | |
|---|---|
0Successful approval/completion or that VIP PIN verification is valid |
SUCCESS
|
1Refer to card issuer |
ISSUER_DECLINED
|
2Refer to card issuer, special condition |
ISSUER_DECLINED
|
3Invalid merchant or service provider |
HTTP 400Payment integrator must return an error response indicating which configuration was invalid. |
4Pickup |
CARD_LOST_OR_STOLEN
|
5Do not honor |
DO_NOT_HONOR
|
6General error |
HTTP 500Payment integrator must return an error response with error details. |
7Pickup card, special condition (other than lost/stolen card) |
CARD_LOST_OR_STOLEN
|
8Honor with identification |
SUCCESS
|
9Request in progress |
HTTP 503Payment integrator must return Service Unavailable since Google requires a synchronous response. |
10Partial approval |
ISSUER_DECLINED
|
11VIP approval |
SUCCESS
|
12Invalid transaction |
TRANSACTION_INVALID
|
13Invalid amount (currency conversion field overflow) or amount exceeds maximum for card program. |
TRANSACTION_EXCEEDS_AMOUNT_LIMIT
|
14Invalid account number (no such number) |
CARD_NUMBER_INVALID
|
15No such issuer |
TRANSACTION_COULD_NOT_BE_ROUTED
|
16Insufficient funds |
INSUFFICIENT_FUNDS
|
19Re-enter transaction |
HTTP 503Payment integrator must return Service Unavailable since Google requires a synchronous response. |
20Invalid response |
HTTP 500Payment integrator must return an error response with error details. |
21No action taken (unable to back out prior transaction) |
CARD_NUMBER_INVALID
|
22Suspected Malfunction |
HTTP 503Payment integrator must return Service Unavailable since Google requires a synchronous response. |
25Unable to locate record in file, or account number is missing from the inquiry |
CARD_NUMBER_INVALID
|
28File is temporarily unavailable |
HTTP 503Payment integrator must return Service Unavailable since Google requires a synchronous response. |
30Format error |
HTTP 500Payment integrator must return an error response with error details. |
41Merchant should retain card (card reported lost) |
CARD_LOST_OR_STOLEN
|
43Merchant should retain card (card reported stolen) |
CARD_LOST_OR_STOLEN
|
51Insufficient funds |
INSUFFICIENT_FUNDS
|
52No checking account |
CARD_NUMBER_INVALID
|
53No savings account |
CARD_NUMBER_INVALID
|
54Expired card |
CARD_EXPIRED
|
57Transaction not permitted to cardholder |
TRANSACTION_NOT_ALLOWED
|
58Transaction not allowed at terminal |
TRANSACTION_NOT_ALLOWED
|
59Suspected fraud |
SUSPECTED_FRAUD
|
61Activity amount limit exceeded |
CARD_ACTIVITY_EXCEEDS_AMOUNT_LIMIT
|
62Restricted card (for example, in country exclusion table) |
TRANSACTION_NOT_ALLOWED
|
63Security violation |
CVN_MISMATCH
|
65Activity count limit exceeded |
CARD_ACTIVITY_EXCEEDS_COUNT_LIMIT
|
68Response received too late |
Payment integrator should treat as Deadline Exceeded
|
78Blocked, first used. The transaction is from a new cardholder, and the card has not been properly unblocked. |
CARD_NOT_ACTIVATED
|
80Visa transactions: credit issuer unavailable |
HTTP 503Payment integrator must return Service Unavailable since Google requires a synchronous response. |
80Private label and check acceptance: Invalid date |
CARD_EXPIRATION_DATE_INVALID
|
82Negative CAM, dCVV, iCVV, or CVV results |
CVN_MISMATCH
|
85No reason to decline a request for account number verification, address verification, CVV2 verification; or a credit voucher or merchandise return |
SUCCESS
|
91Issuer unavailable or switch inoperative (STIP not applicable or available for this transaction) |
HTTP 503Payment integrator must return Service Unavailable since Google requires a synchronous response. |
92Destination cannot be found for routing |
TRANSACTION_COULD_NOT_BE_ROUTED
|
93Transaction cannot be completed, violation of law |
TRANSACTION_NOT_ALLOWED
|
94Duplicate transmission |
HTTP 500Payment integrator is responsible to support proper idempotency so this should not happen. If it does, the payment integrator must return an error response and investigate. |
95Reconcile error |
HTTP 500Payment integrator must return an error response with error details. |
96System malfunction, System malfunction or certain field error conditions |
HTTP 500Payment integrator must return an error response with error details. |
N0Force STIP |
HTTP 503Payment integrator must return Service Unavailable since Google requires a synchronous response. |
N3Cash service not available |
HTTP 503Payment integrator must return Service Unavailable since Google requires a synchronous response. |
N4Cashback request exceeds issuer limit |
CARD_ACTIVITY_EXCEEDS_AMOUNT_LIMIT
|
N7Decline for CVV2 failure |
CVN_MISMATCH
|
P2Invalid biller information |
CUSTOMER_INFO_INVALID
|
Q1Card authentication failed |
CARD_AUTHENTICATION_FAILED
|
R0Stop payment order |
STOP_PAYMENT
|
R1Revocation of authorization order |
REVOCATION_OF_AUTHORIZATION
|
R3Revocation of all authorizations order |
REVOCATION_OF_AUTHORIZATION
|
XAForward to issuer |
ISSUER_DECLINED
|
XDForward to issuer |
ISSUER_DECLINED
|
Z3Unable to go online |
HTTP 503Payment integrator must return Service Unavailable since Google requires a synchronous response. |