Open the Portico Schema site
Portico Developer Guide
Gateway Response Codes
Appendices > Gateway Response Codes

When checking response codes, be sure to check both the Gateway Response Codes and Issuer Response Codes.

See Validating Response Codes for more information.

System Response Codes

Response Code Description
-21 Unauthorized
-2 Authentication error—Verify and correct credentials.
-1 Portico error—Developers are notified.
0 Success
+1 Gateway system error
+2 Duplicate transactions
+3 Invalid original transaction
+4 Transaction already associated with batch
+5 No current batch
+6 Invalid return amount—This can occur if a credit return request is against a specific original transaction, and the return amount is greater than the original transaction settle amount, or the return amount is zero.
+7 Invalid report parameters
+8 Bad track data
+9 No transaction associated with batch
+10 Empty report
+11 Original transaction not CPC
+12 Invalid CPC data
+13 Invalid edit data
+14 Invalid card number
+15 Batch close in progress
+16

Invalid Ship Date—Transaction rejected because the ship date and month are invalid. Try again in a few seconds and resubmit.

+17 Invalid encryption version
+18 E3 MSR failure—The message returned with this code is the parsed error message from the MSR data stream.
+19

Invalid Reversal Amount—This can occur if a reversal request includes a new settlement amount that is not less than the current total authorization amount. The total authorization amount is the original authorization plus any incremental authorization minus any previous reversal amounts.

+20

Database operation time out—This may occur when Portico is trying to communicate to the database for large amounts of data. If this is due to a search, it can be corrected by adding more specific criteria.

+21 Archive database is currently unavailable—Try the transaction again later.
+22

Archive database is currently unavailable, but an attempt was made to retrieve the data from the real-time database. If there was data available from the real-time database that met the request criteria, then it was returned, however, it is not guaranteed to be complete.

The request may need to be tried again later.

+23

An error was returned from the tokenization service when looking up a supplied token. This  typically means that the provided token is bad, but it can also be returned when the data on the tokenization service has expired, been removed, or is no longer valid.

+24

This typically means that a token was supplied in the request but tokenization is not yet supported for the requested service type (see the section on tokenization for a list of supported services). This can also occur when tokenization is disabled for the entire system.

+25

This error is returned if the merchant provides a token (TokenData.TokenValue) and requests a token (TokenRequest) in CardData. In this case, the transaction is rejected because a token cannot be presented and requested in the same request.

+26

This error is returned if there is an error setting the token attribute. When possible the tokenization service error/return code is returned in the message text.

+27

This error is returned if the requested token was not found.

This error can occur during TokenToPan (Lookup) or ManageTokens->Set (Update) requests.

+30

This can occur when Portico does not receive a response from the back end systems and Portico is not sure if the transaction was successful or not. In this case, the POS is responsible for deciding whether or not to issue a reversal for this transaction. This is used in cases where the transaction is an authorizing transaction, e.g., CreditAuth, CreditSale, DebitSale.

If the transaction is non-authorizing, e.g., CreditAccountVerify, CreditReversal, and Portico receives no response, then Portico sends back a System Error (+1) to the POS.

+31

This occurs when Portico attempts a reversal for the POS, but the reversal fails. In this case, the POS is responsible for issuing the reversal.

+32 Missing KTB error—This can occur when a POS is attempting to send encrypted data, but the expected KTB value was corrupted or not received.
+33 Missing KSN error—This can occur when a POS is attempting to send encrypted data, but the expected KSN value was corrupted or not received.
+34 Invalid data received—This error is returned from a CreditAuth or CreditSale if both GatewayTxnId and a CardData subfield are received.
+35 Device setting error—This error is returned from SendReceipt if the "AllowEmail" setting is not set to true for the DeviceId being used.
+36

Invalid Original Txn for Repeat—This error is returned from a CreditAuth or CreditSale if the original transaction referenced by GatewayTxnId cannot be found. This is typically because the original does not meet the criteria for the sale or authorization by GatewayTxnID. 

This error can also be returned if the original transaction is found, but the card number has been written over with nulls after 30 days.

+37 Missing element—This error is returned if a required (or conditional) element is missing from the transaction.
+38 Invalid auth amount—This error is returned from a CreditAuth or CreditSale by GatewayTxnId when the requested amount is over the threshold set for the transaction type, which is some percentage of the original amount (default = 100%).
+39 Transaction rejected because EMV TLV data was invalid.
+40 Transaction rejected because the referenced transaction has invalid EMV TLV data.
+41 Transaction declined because possible fraud was detected.
+42 Communication Error—System Level Communication Error was detected. 
+43 Currency error—This error is returned when there is a discrepancy between the currency format of the Amount and the selected currency at the Site or Device
+44 Transaction must be in a closed batch
+45 Debit Return is not allowed
+47 Invalid amount—Transaction rejected.  Amount exceeds the maximum length for the Authorization Platform.
+50 Processor System error
+51 Processor Configuration error
+52 Service Not Allowed
+53 Communication Error - Host Unavailable - This error is returned when Portico experiences excessive timeouts for a specific Authorization Platform.
+54 DWS Amount Error - Transaction rejected because the DWS token amount and Transaction amount do not match.
+55 Transaction Failed - Transaction failed after host response.
+95 MUST CLOSE BATCH - Maximum batch size has been reached. Please close batch and retry transaction.