Online payments response codes
Error codes help you to debug to issues that occur as a result of sending badly formatted requests. The responseMessage is a short string that provides a brief explanation. The tables below list the available reason codes, as well as their possible causes.
The following fields are in the body of the response:
- responseStatus: Valid values include SUCCESS, DENIED, or ERROR. SUCCESS means the request was approved by the issuer or completed successfully. ERROR is only returned for 4XX or 5XX responses.
- responseCode: This field contains a shorter description of the processing result. For 200 responses, this may be displayed to the consumer.
- responseMessage: This field contains a longer, more descriptive message. These messages are not intended to be displayed to the consumer.
- hostMessage: The term "host" refers to the system from which J.P. Morgan has received a response. The hostMessage is mapped to J.P. Morgan’s response fields, but the unaltered message is returned, if received. For 5XX responses, the presence of this field indicates where the error exists.
Successful responses (200-299)
In general, a 200 status code indicates that a request has successfully processed.
HTTP Status | responseStatus | responseCode | responseMessage |
---|---|---|---|
200 | SUCCESS | ACCEPTED | Transaction accepted |
200 | SUCCESS | ACCEPTED | Request completed |
200 | SUCCESS | APPROVED | Transaction approved by issuer |
200 | SUCCESS | APPROVED | Transaction approved |
200 | SUCCESS | APPROVED | Transaction approved. Honor with ID. |
200 | SUCCESS | PARTIAL_APPROVAL | Transaction partially approved by issuer |
200 | SUCCESS | CUSTOMER_PENDING | Pending the completion of the payment by the consumer |
200 | SUCCESS | ACCEPTED | Requested action is completed |
200 | PENDING | PERFORM_AUTHENTICATION | Perform authentication (orchestrated 3-D Secure (3DS)) |
200 | DENIED | CONSUMER_ABORTED | Consumer aborted the transaction |
200 | DENIED | DECLINED | Consumer cancelled the transaction |
200 | DENIED | DECLINED | Transaction declined — invalid merchant |
200 | DENIED | DECLINED | Transaction declined — invalid transaction |
200 | DENIED | DECLINED | Transaction declined — invalid amount |
200 | DENIED | DECLINED | Transaction declined — invalid issuer |
200 | DENIED | DECLINED | Transaction declined — retry |
200 | DENIED | DECLINED | Transaction declined — duplicate transmission detected |
200 | DENIED | DECLINED | Transaction declined — exceeds pre-authorized amount |
200 | DENIED | DECLINED | Transaction declined — stop payment order |
200 | DENIED | DECLINED | Transaction declined — revocation of authorization order |
200 | DENIED | DECLINED | Transaction declined — revocation of all authorizations order |
200 | DENIED | DECLINED | Surcharge amount not permitted on Visa cards (U.S. acquirers only) |
200 | DENIED | CONSUMER_DECLINED | Consumer declined the transaction |
200 | DENIED | INSUFFICIENT_FUNDS | Transaction declined due to insufficient funds |
200 | DENIED | CARD_EXPIRED | Transaction declined due to expired card |
200 | DENIED | DECLINED_DO_NOT_CONTACT_ISSUER | Transaction declined — do not contact issuer |
200 | DENIED | DECLINED_REFER_TO_ISSUER | Transaction declined — refer to issuer |
200 | DENIED | DECLINED_INVALID_CVV | Transaction declined by the issuer due to invalid card verification value (CVV) |
200 | DENIED | DECLINED_CVV | Transaction declined due to CVV |
200 | DENIED | DECLINED_AVS_CVV | Transaction declined due to address verification service (AVS) result and CVV |
200 | DENIED | CALL_ISSUER_ID_REQUIRED | Transaction declined — call issuer, positive ID required |
200 | DENIED | DECLINED_NOT_SUPPORTED | Transaction declined by issuer |
200 | DENIED | LOST_STOLEN_CARD | Transaction declined — lost or stolen card |
200 | DENIED | PICK_UP_CARD | Transaction declined — pick up card |
200 | DENIED | DO_NOT_HONOR | Transaction declined — do not honor |
200 | DENIED | CARD_NOT_ACTIVE | Transaction declined — card not active |
200 | DENIED | ACCOUNT_CLOSED | Transaction declined — account is closed |
200 | DENIED | NEW_CARD_ISSUED | Transaction declined — new card issued |
200 | DENIED | INVALID_ACCOUNT | Transaction declined — invalid account |
200 | DENIED | USE_IS_RESTRICTED | Transaction declined — use is restricted |
200 | DENIED | DECLINED_BY_PROCESSOR | Issuer approved, but processor declined the request |
200 | DENIED | USE_IS_RESTRICTED | Domestic debit transaction not allowed (regional use only) |
200 | DENIED | DECLINED | Cryptographic failure |
200 | DENIED | DECLINED | Unable to route transaction |
200 | DENIED | DECLINED | Transaction cannot be completed — violation of law |
200 | DENIED | DECLINED | System error |
200 | DENIED | DECLINED | Invalid authorization life |
200 | DENIED | DECLINED | Transaction not permitted to acquirer/terminal |
200 | DENIED | DECLINED | Security violation |
200 | DENIED | DECLINED | Transaction does not fulfill anti-money laundering (AML) requirement |
200 | DENIED | DECLINED | Visa transactions: credit issuer available. Private label: invalid date |
200 | DENIED | DECLINED | Format error |
200 | DENIED | DECLINED | Exceeds withdrawal amount limit |
200 | DENIED | DECLINED | Personal identification number (PIN) not changed |
200 | DENIED | DECLINED | Allowable number of PIN tries exceeded |
200 | DENIED | DECLINED | PIN validation not possible |
200 | DENIED | DECLINED | Unacceptable PIN — transaction declined — retry |
200 | DENIED | DECLINED | Transaction declined |
200 | DENIED | ACCOUNT_CLOSED | Account closed |
200 | DENIED | DECLINED |
Transaction declined |
200 | DENIED | ACCOUNT_CLOSED | Account closed |
200 | DENIED | INVALID_ACCOUNT | Bad account number data (ACH) |
200 | DENIED | DECLINED_NOT_SUPPORTED | Invalid international ACH |
200 | DENIED | INVALID_ACCOUNT | Invalid account number format (ACH) |
200 | DENIED | DECLINED | Customer advises not authorized (ACH) |
200 | DENIED | DECLINED | Authorization revoked by customer (ACH) |
200 | DENIED | DECLINED | ACH non-participant |
200 | DENIED | DECLINED | Customer opt-out (ACH) |
200 | DENIED | DECLINED | Account frozen (ACH) |
200 | DENIED | DECLINED | Beneficiary deceased (ACH) |
200 | DENIED | DECLINED | Accountholder deceased (ACH) |
200 | DENIED | NO_ACCOUNT_FOUND | No account/unable to locate (ACH) |
200 | DENIED | DECLINED | Invalid account type (ACH) |
200 | DENIED | DECLINED | Missing name (ACH) |
200 | DENIED | DECLINED | Transit routing number unknown (ACH) |
200 | DENIED | DECLINED | Invalid transit routing number (ACH) |
200 | DENIED | DECLINED | Electronic processing not supported (ACH) |
200 | DENIED | DECLINED | On negative file (ACH) |
200 | DENIED | DECLINED | Electronic check processing (ECP) account verification decline (ACH) |
200 | DENIED | DECLINED | No information found (ACH) |
200 | DENIED | DECLINED | Not ACH eligible |
200 | DENIED | DECLINED | Account verification/account owner authorization (AOA) decline (ACH) |
Client error responses (400-499)
A 4XX status code indicates that an error has occurred during a request, and provides a list of specific codes. Additional fields are provided in the body of the response to help identify the error. Address the problem and resubmit the request.
HTTP Status | responseStatus | responseCode | responseMessage |
---|---|---|---|
400 | ERROR | VALIDATION_ERROR | Request contains validation error |
400 | ERROR | SANCTIONS_SCREENED | The request originated from a sanctioned country or person |
400 | ERROR | INVALID_CONTENT | Request cannot be parsed |
400 | ERROR | INVALID_DATA | Invalid data passed in the request |
400 | ERROR | MISSING_FIELD | Customer phone and email are required for the method of payment |
400 | ERROR | UNSUPPORTED_ACTION | Refund is not allowed for the referenced transaction |
400 | ERROR | UNSUPPORTED_ACTION | Requested action is not supported for the method of payment |
400 | ERROR | UNSUPPORTED_ACTION | Requested state change is not allowed |
400 | ERROR | UNSUPPORTED_ACTION | Request contains missing or invalid query parameter |
400 | ERROR | UNSUPPORTED_ACTION | Merchant category code (MCC) is not supported for requested action |
400 | ERROR | UNSUPPORTED_ACTION | At least one auto close schedule is required |
400 | ERROR | UNSUPPORTED_ACTION | Recurring is not supported on an auth only request |
400 | ERROR | ALREADY_CAPTURED | Payment has already been captured |
400 | ERROR | ALREADY_VOIDED | Transaction already voided |
400 | ERROR | INVALID_AMOUNT | Amount is greater than original transaction amount |
400 | ERROR | INVALID_AMOUNT | Total refunded amount cannot exceed the referenced purchase amount |
400 | ERROR | INVALID_AMOUNT | Amount cannot be zero |
400 | ERROR | INVALID_AMOUNT | Tax amount cannot exceed transaction amount |
400 | ERROR | INVALID_AMOUNT | Amount is greater than remaining authorization amount |
400 | ERROR | INVALID_AMOUNT | Amount is greater than tolerance amount |
400 | ERROR | INVALID_AMOUNT | Amount is not allowed |
400 | ERROR | INVALID_AMOUNT | Total healthcare amount cannot exceed total amount for healthcare eligible card |
400 | ERROR | INVALID_EXPIRY | Expiry month and year combination is not valid |
400 | ERROR | INCORRECT_CURRENCY | Incorrect currency value passed in the request |
400 | ERROR | UNSUPPORTED_CURRENCY | Merchant not configured to support provided currency |
400 | ERROR | UNSUPPORTED_INDUSTRY_TYPE | Merchant configuration does not support the industry type |
400 | ERROR | UNSUPPORTED_CARD_TYPE | Merchant not configured to accept provided card type |
400 | ERROR | INVALID_MCC | Merchant not configured to support provided MCC |
400 | ERROR | PAYMENT_TYPE_NOT_SUPPORTED | Card bank identification number (BIN) range not supported by card brand |
400 | ERROR | MERCHANT_NOT_CONFIGURED | Merchant is invalid or not configured |
400 | ERROR | INVALID_APP_ID | Application not allowed to process for the merchant |
400 | ERROR | VOID_NOT_ALLOWED | Transaction already cleared |
400 | ERROR | TRANSACTION_TYPE_NOT_SUPPORTED | Transaction type is not supported |
400 | ERROR | TRANSACTION_TYPE_NOT_SUPPORTED | Account verification or $0 auth is not supported |
400 | ERROR | TRANSACTION_TYPE_NOT_ENABLED | Transaction type is not enabled |
400 | ERROR | INVALID_DATA | Invalid data passed in the request |
400 | ERROR | UNSUPPORTED_CARD_TYPE | Merchant configuration does not support the provided card type |
400 | ERROR | INVALID_AMOUNT | Amount sent was zero, unreadable, or exceeds maximum allowable amount |
400 | ERROR | INVALID_AMOUNT | Amount details does not equal total authorization amount |
400 | ERROR | UNSUPPORTED_ACTION | threeDSAuthentication not supported on merchant-initiated transactions (orchestrated 3DS). |
400 | ERROR | INVALID_AMOUNT | Authentication amount is less than transaction amount (orchestrated 3DS). |
400 | ERROR | VALIDATION_ERROR | Invalid data passed in the request installmentCount cannot be greater than 1 for orchestrated authentication (orchestrated 3DS). |
400 | ERROR | INVALID_DATA | authenticationId is not supported with SCAExemptionReason (orchestrated 3DS). |
400 | ERROR | INVALID_DATA | authenticationId is not supported with threeDS object values (orchestrated 3DS). |
400 | ERROR | ALREADY_AUTHENTICATED | Authentication has already been completed (orchestrated 3DS). |
401 | ERROR | UNAUTHORIZED | Authorization credentials are missing or invalid |
403 | ERROR | FORBIDDEN | Merchant not authorized to access the resource |
403 | ERROR | FORBIDDEN | Incorrect combination of application ID and merchant ID in the header |
403 | ERROR | FORBIDDEN | Incorrect application ID in the header |
404 | ERROR | NOT_FOUND | Transaction was not found |
404 | ERROR | NOT_FOUND | Request was not found |
404 | ERROR | NOT_FOUND | Path to the resource is not found |
409 | ERROR | IN_PROGRESS | This request is still in progress |
409 | ERROR | DUPLICATE | Duplicate transaction |
Server error responses (500-599)
A 5XX status code indicates that an error has occurred within the J.P. Morgan (or acquirer) environment during a request. Additional fields are provided in the body of the response to identify the error.
HTTP Status | responseStatus | responseCode | responseMessage |
---|---|---|---|
500 | ERROR | SERVER_ERROR | Server error, please retry |
500 | ERROR | SERVER_ERROR | Processing error within the device wallet service |
503 | ERROR | HOST_ERROR | Unrecognized response from the host |
503 | ERROR | HOST_ERROR | Unspecified error at the host |
503 | ERROR | HOST_ERROR | Acquirer error occurred processing the transaction |
503 | ERROR | SERVICE_UNAVAILABLE | Service is unavailable |
504 | ERROR | TIMEOUT | Request timeout |
Standard Address Verification Service (AVS) responses
addressVerificationResult | Description |
---|---|
ADDRESS_POSTALCODE_MATCH | Street address and zip/postal code were matched |
POSTALCODE_MATCH | Zip/postal code matched. Street address not matched. |
ADDRESS_MATCH | Street address matched |
SERVICE_NOT_SUPPORTED | Service is currently not supported by acquirer or merchant |
NOT_VERIFIED | AVS could not be verified for an international transaction |
SERVICE_NOT_AVAILABLE_RETRY | Issuer system is unavailable. Retry may be attempted |
NOT_AVAILABLE | No data is available from the issuer, or AVS data is not supported for the transaction |
NO_MATCH | No match |
NOT_REQUESTED | AVS not requested |
NAME_MATCH | Cardholder name matched |
NAME_ADDRESS_MATCH | Cardholder name and address matched |
NAME_POSTALCODE_MATCH | Cardholder name and zip/postal code matched |
NAME_ADDRESS_POSTALCODE_MATCHED | Cardholder name, address, and zip/postal code matched |
Standard Card Verification Value (CVV) responses
cardVerificationResult | Description |
---|---|
MATCH | Valid or matched |
NOT_PRESENT | Merchant indicated that CVV is not present on card |
NOT_PROCESSED | Not processed |
NOT_SUPPORTED | Card issuer is not registered and/or certified |
NO_MATCH | Invalid or not matched |