Response codes

Overview

Transactions can fail for a variety of reasons, with the result code and description providing details for the failure. API responses include result codes and descriptions, and you can also find this information in the Peach Payments Dashboard:

  1. In the left navigation menu, click Transactions.
  2. Use the search bar or filters to find the transaction that failed, then select it.
  3. The transaction's status, result code, and result description appear at the top of the details panel that appears.
Failed transaction with result code and description.

Failed transaction with result code and description.

Result codes

The result codes are part of the response body's JSON containing a code and a description explaining the code.

Successful

Result codeDescription
000.000.000Transaction succeeded
000.000.100successful request
000.100.105Chargeback Representment is successful
000.100.106Chargeback Representment cancellation is successful
000.100.110Request successfully processed in 'Merchant in Integrator Test Mode'
000.100.111Request successfully processed in 'Merchant in Validator Test Mode'
000.100.112Request successfully processed in 'Merchant in Connector Test Mode'
000.300.000Two-step transaction succeeded
000.300.100Risk check successful
000.300.101Risk bank account check successful
000.300.102Risk report successful
000.300.103Exemption check successful
000.310.100Account updated
000.310.101Account updated (Credit card expired)
000.310.110No updates found, but account is valid
000.400.110Authentication successful (frictionless flow)
000.400.120Authentication successful (data only flow)
000.600.000transaction succeeded due to external update

Successful but flagged for review

Result codeDescriptionNotes
000.400.000Transaction succeeded (please review manually due to fraud suspicion)The bank processed the transaction but Peach Payments flagged it for risk reasons and are reviewing it.
000.400.010Transaction succeeded (please review manually due to AVS return code)
000.400.020Transaction succeeded (please review manually due to CVV return code)
000.400.040Transaction succeeded (please review manually due to amount mismatch)
000.400.050Transaction succeeded (please review manually because transaction is pending)
000.400.060Transaction succeeded (approved at merchant's risk)
000.400.070Transaction succeeded (waiting for external risk review)
000.400.080Transaction succeeded (please review manually because the service was unavailable)
000.400.081Transaction succeeded (please review manually, as the risk status not available yet due network timeout)
000.400.082Transaction succeeded (please review manually, as the risk status not available yet due processing timeout)
000.400.090Transaction succeeded (please review manually due to external risk check)
000.400.100Transaction succeeded, risk after payment rejected

Pending

Result codeDescriptionNotes
000.200.000transaction pending
000.200.001Transaction pending for acquirer, the consumer is not present
000.200.100successfully created checkoutFor Checkout, this indicates that the session is now open.
000.200.101successfully updated checkout
000.200.102successfully deleted checkout
000.200.103checkout is pending
000.200.200Transaction initialized
000.200.201QR Scanned/Link Clicked, waiting for the final authentication result
100.400.500waiting for external risk
800.400.500Waiting for confirmation of non-instant payment. Denied for now.
800.400.501Waiting for confirmation of non-instant debit. Denied for now.
800.400.502Waiting for confirmation of non-instant refund. Denied for now.

Rejected

📘

Although not ideal, if your customers are struggling with repeated:

  • Rejected card transactions: They should pay using a different card (from a different account or bank, if possible) or payment method.
  • Rejected transactions using other payment methods: They should pay using a different payment method.
Result codeDescriptionNotes
000.400.101card not participating/authentication unavailable3-D Secure is not available for this card.
000.400.102user not enrolled3-D Secure is not enabled for this card.
000.400.103Technical Error in 3D systemThere was a technical error with 3-D Secure.
000.400.104Missing or malformed 3DSecure Configuration for Channel3-D Secure is not configured correctly on this channel. Check your 3-D Secure configuration and ensure that it is correct before asking your customer to try again.
000.400.105Unsupported User Device - Authentication not possible3-D Secure is not supported on the customer's device. The customer should try again with another device.
000.400.106invalid payer authentication response(PARes) in 3DSecure TransactionPayment failed due to a failed 3-D Secure response.
000.400.107Communication Error to Scheme Directory ServerTransaction failed due to a communication error.
000.400.108Cardholder Not Found - card number provided is not found in the ranges of the issuerThe customer's card is not supported.
000.400.109Card is not enrolled for 3DS version 23-D Secure 2.0 is not enabled for this card.
000.400.111Data Only request failed
000.400.1123RI transaction not permitted
000.400.200risk management check communication errorTransaction failed due to a communication error.

External payment system

Result codeDescriptionNotes
800.100.100transaction declined for unknown reasonThe customer tried to do a transaction but provided no data or the wrong data for registration, resulting in the issuing bank rejecting the transaction. Your customer must contact their bank for more information on this failure.
800.100.150transaction declined (refund on gambling tx not allowed)
800.100.151transaction declined (invalid card)This could occur because, (1) the customer's card might have expired or (2) the card is not registered for online transactions. The customer should check with their bank why the transaction failed as this is an issue between the customer and their issuing bank.
800.100.152Transaction declined by authorization systemThe risk system of the issuing bank (the customer's bank) declined the transactions for account-related reasons, for example, (1) account closed - customer must contact their bank, (2) do not honor - customer must contact their bank, (3) identification required - FICA required; customer must contact their bank, (4) no card record - customer must contact their bank or check the card number, (5) no credit account - customer must contact their bank or check the card number, (6) no savings account - customer must contact their bank or check the card number, (7) retry the transaction, (8) refer to card issuer - customer must contact their bank, (9) suspected malfunction - customer must contact their bank, (10) violation of law - prohibited, or (12) your customer might not have enabled their bank card or virtual card for online transactions.
800.100.153transaction declined (invalid CVV)Your customer might not have enabled their card for online transactions or the customer is using the wrong CVV or CVC numbers.
800.100.154transaction declined (transaction marked as invalid)The customer's issuing bank declined the transaction. The customer must check with their issuing bank what the issue is. For this type of error, the merchant should not reattempt the transaction.
800.100.155transaction declined (amount exceeds credit)The risk system of the issuing bank (customer's bank) declined the transactions for account-related reasons, for example, (1) the customer probably exceeded their available credit limit (not enough funds available) or (2) most banks allow their customers to set their own limits in their banking app. When customers set these limits, if the transaction exceeds the limit, the transaction fails.
800.100.156transaction declined (format error)For card transactions, if the payment request contains a parameter or value that the acquiring or issuing bank doesn't recognise, a format error might occur. It can also result from a configuration issue, either by Peach Payments or by the acquiring bank. Peach Payments has observed that setting the standingInstruction.type to INSTALLMENT impacts multiple card issuers and can result in the format error. We are actively collaborating with all card issuers to solve this issue. In the meantime, if you continue to encounter this error, please set standingInstruction.type to UNSCHEDULED and not INSTALLMENT.
800.100.157transaction declined (wrong expiry date)The transaction failed because the customer entered the wrong card expiry date (printed on the customer's bank card), card number, or CVV or CVC. The customer should double-check their card details before retrying the transaction.
800.100.158transaction declined (suspecting manipulation)The customer's issuing bank set a limit, for example, (1) the customer is attempting and failing multiple transactions by inputting bad data such as a wrong CVV, expiry date, or re-trying transactions in quick succession or (2) the customer's issuing bank suspects fraudulent behaviour or transacting out of the usual transactional categories. As a protective measure, they might fail the transaction. The customer must contact their issuing bank to learn why the transaction failed.
800.100.159transaction declined (stolen card)
800.100.160transaction declined (card blocked)The customer's card is blocked.
800.100.161transaction declined (too many invalid tries)Too many failed attempts.
800.100.162transaction declined (limit exceeded)The customer exceeded the limit set by their bank. The customer must check their daily limit on their banking app and confirm that the transaction is lower than the limit. The customer must also check whether they have exceeded their transaction limit for that day.
800.100.163transaction declined (maximum transaction frequency exceeded)Account limit reached.
800.100.164transaction declined (merchants limit exceeded)
800.100.165transaction declined (card lost)Transaction declines occur when the customer's card issuer or bank does not authorise the transaction for reasons such as possible fraud, invalid account information, or a lost or stolen card. In such instances, the customer must contact their bank or card issuer immediately to take corrective measures.
800.100.166transaction declined (Incorrect personal identification number)Verification failed.
800.100.167transaction declined (referencing transaction does not match)
800.100.168transaction declined (restricted card)The customer's card issuer declined the transaction as the credit card has some restrictions. The customer must check with their issuing bank what the issue is.
800.100.169transaction declined (card type is not processed by the authorization center)Transaction failed because, (1) the bank card is not enabled for online transactions, (2) the bank card type is foreign registered and not Visa or Mastercard, or (3) there could be an issue with the bank's 3-D Secure server or transaction approval server. The customer should try again if they know that they activated their bank card for online transactions or they should contact their bank for further assistance.
800.100.170transaction declined (transaction not permitted)The issuing bank caused the failure and the cardholder must find out from their bank what caused the transaction to fail.
800.100.171transaction declined (pick up card)The customer's bank rejected the transaction because, (1) the bank flagged the card as a pick up card, depending on the bank, these cards are generally held for a period and "locked", that is, they fail until the customer signs the card out of the bank's possession or (2) the bank has cancelled the card and the customer might not be aware of this as they might have flagged the card as lost or stolen. The customer must contact their issuing bank to find out why they flagged the card as a pick up card.
800.100.172transaction declined (account blocked)Account blocked.
800.100.173transaction declined (invalid currency, not processed by authorization center)
800.100.174transaction declined (invalid amount)The customer is trying to do online payments but is exceeding the amount they can transact with. The customer must check their daily limits for online transactions and then try again.
800.100.175transaction declined (invalid brand)The card brand is not supported. The customer should try a different card brand or payment method.
800.100.176transaction declined (account temporarily not available. Please try again later)
800.100.177transaction declined (amount field should not be empty)
800.100.178transaction declined (PIN entered incorrectly too often)
800.100.179transaction declined (exceeds withdrawal count limit)Withdrawal amount limit exceeded.
800.100.190transaction declined (invalid configuration data)
800.100.191transaction declined (transaction in wrong state on acquirer side)
800.100.192transaction declined (invalid CVV, Amount has still been reserved on the customer's card and will be released in a few business days. Please ensure the CVV code is accurate before retrying the transaction)Invalid security code.
800.100.195transaction declined (UserAccount Number/ID unknown)
800.100.196transaction declined (registration error)
800.100.197transaction declined (registration cancelled externally)
800.100.198transaction declined (invalid holder)
800.100.199transaction declined (invalid tax number)
800.100.200Refer to Payer due to reason not specified
800.100.201Account or Bank Details Incorrect
800.100.202Account ClosedAccount unavailable.
800.100.203Insufficient FundsThe customer has insufficient funds for the transaction. They must check if they have enough funds in their account before trying again.
800.100.204Mandate Expired
800.100.205Mandate Discarded
800.100.206Refund of an authorized payment requested by the customer
800.100.207Refund requested
800.100.208Direct debit not enabled for the specified account or bankDirect debit is not enabled for this account.
800.100.402cc/bank account holder not valid
800.100.403transaction declined (revocation of authorisation order)
800.100.500Card holder has advised his bank to stop this recurring paymentThe customer has stopped the recurring payment on this card.
800.100.501Card holder has advised his bank to stop all recurring payments for this merchantThe customer has stopped the recurring payment on this card.
800.700.100transaction for the same session is currently being processed, please try again later.You made a duplicate request while the payment system was still processing the original request. The customer should wait a while and then try again.
800.700.101family name too long
800.700.201given name too long
800.700.500company name too long
800.800.102Invalid streetThe customer provided an invalid street address.
800.800.202Invalid zipThe customer provided an invalid postal code.
800.800.302Invalid cityThe customer provided an invalid city.

Communication error

Result codeDescriptionNotes
000.400.030Transaction partially failed (please reverse manually due to failed automatic reversal)The customer failed the account verification services (AVS) checks or entered the wrong CVV or CVC. Alternatively, one of the systems processing the transaction was down. Sometimes, if the banks' automatic reversal fails, they must manually reverse the transaction. Peach Payments is working with the acquiring and issuing banks to refund your funds.
900.100.100unexpected communication error with connector/acquirerThe issuing bank, acquiring bank, or a third-party involved in the transaction process was experiencing downtime. Check the Peach Payments status page to see if any banks or third parties are down. If they are, ask the customer to wait for the system to come online to continue with their transaction.
900.100.200error response from connector/acquirer
900.100.201error on the external gateway (e.g. on the part of the bank, acquirer,...)Authentication of this payment failed.
900.100.202invalid transaction flow, the requested function is not applicable for the referenced transaction.An example of this is if the payment method does not support refunds. For example, when the Peach Payments Dashboard cannot refund a Capitec Pay transaction or when you try to trigger a partial refund on a payment method that does not support refunds. To perform the refund, you must do a manual EFT refund from your bank account to your customer's bank account. For more information on which payment methods support refunds, see the Payment methods section.
900.100.203error on the internal gateway
900.100.204Error during message parsing
900.100.300timeout, uncertain resultThe acquiring bank or a third-party involved in the transaction process was experiencing downtime. Check the Peach Payments status page to see if any banks or third parties are down. If they are, ask the customer to wait for the system to come online to continue with their transaction.
900.100.301Transaction timed out without response from connector/acquirer. It was reversed.
900.100.310Transaction timed out due to internal system misconfiguration. Request to acquirer has not been sent.
900.100.400timeout at connectors/acquirer sideThe payment request timed out on the payment provider's end. One reason why this occurs is if the customer does not approve the payment provider's authentication request.
900.100.500timeout at connectors/acquirer side (try later)
900.100.600connector/acquirer currently down
900.100.700error on the external service provider
900.200.100Message Sequence Number of Connector out of sync
900.300.600user session timeoutThe customer's session timed out before they approved the payment request.
900.400.100unexpected communication error with external risk provider

System error

Result codeDescriptionNotes
600.100.100Unexpected Integrator Error (Request could not be processed)
800.500.100direct debit transaction declined for unknown reason
800.500.110Unable to process transaction - ran out of terminalIds - please contact acquirer
800.600.100transaction is being already processedTransaction is already being processed. Please wait before attempting again.
800.800.400Connector/acquirer system is under maintenanceSystem under maintenance. Please wait before attempting to pay again or pay using a different payment method.
800.800.800The payment system is currently unavailable, please contact support in case this happens again.System unavailable. Please wait before attempting to pay again or pay using a different payment method.
800.800.801The payment system is currently under maintenance. Please apologize for the inconvenience this may cause. If you were not informed of this maintenance window in advance, contact your sales representative.System under maintenance. Please wait before attempting to pay again or pay using a different payment method.
999.999.888UNDEFINED PLATFORM DATABASE ERROR
999.999.999UNDEFINED CONNECTOR/ACQUIRER ERROR

Asynchronous workflow error

Result codeDescriptionNotes
100.395.101Bank not supported for Giropay
100.395.102Account not enabled for Giropay e.g. test account
100.395.501Previously pending online transfer transaction timed out
100.395.502Acquirer/Bank reported timeout on online transfer transaction
100.396.101Cancelled by userThe user started a transaction and then cancelled it or Checkout.
100.396.102Not confirmed by user
100.396.103Previously pending transaction timed outThe registration transaction (RG) was not authenticated and timed out. The debit transaction references the registration token so might also fail. See the description for 800.100.152 for more information.
100.396.104Uncertain status - probably cancelled by userThe user started a transaction and then cancelled it or Checkout.
100.396.106User did not agree to payment method terms
100.396.201Cancelled by merchant
100.397.101Cancelled by user due to external update
100.397.102Rejected by connector/acquirer due to external update

Soft decline

Result codeDescription
300.100.100Transaction declined (additional customer authentication required)

External risk system check

Result codeDescriptionNotes
100.380.401User Authentication FailedWrong OTP. This result code signifies that the bank's system was unable to authenticate the customer. Your customer's transaction failed because, (1) you entered the wrong OTP or (2) there was a field or system error with the OTP. Your bank was unable to authenticate you and process the transaction. Try again or contact your bank to find out if there is an issue with the OTP system.
100.380.501Risk management transaction timeoutThe customer probably did not enter their OTP or they might not have seen the 3-D Secure page because their browser or an extension might have blocked it, or because of an issue with the bank's 3-D Secure server. If the card is 3-D Secure enabled, the customer should receive an OTP during the authentication phase of the payment. The customer's bank handles OTP generation and sending. Peach Payments is not aware of and does not control the 3-D Secure authentication process. The customer's bank also authenticates the payment if the customer provides the correct OTP and when completed, sends Peach Payments a successful payment response. Peach Payments does not know upfront whether a customer enabled their card for 3-D Secure. Your customer might not have entered the OTP in time, their bank card is not enabled for online transactions, or there could be an issue with the bank's 3-D Secure server or transaction approval server. Ask your customer to try again if you know they activated their bank card for online transactions or ask them to contact their bank.
100.400.000transaction declined (Wrong Address)
100.400.001transaction declined (Wrong Identification)
100.400.002Transaction declined (Insufficient credibility score)
100.400.005transaction must be executed for German address
100.400.007System error ( possible incorrect/missing input data)
100.400.020transaction declined
100.400.021transaction declined for country
100.400.030transaction not authorized. Please check manually
100.400.039transaction declined for other error
100.400.040authorization failure
100.400.041transaction must be executed for German address
100.400.042transaction declined by SCHUFA (Insufficient credibility score)
Result codeDescription
100.400.043transaction declined because of missing obligatory parameter(s)
100.400.044transaction not authorized. Please check manually
100.400.045SCHUFA result not definite. Please check manually
100.400.051SCHUFA system error (possible incorrect/missing input data)
100.400.060authorization failure
100.400.061transaction declined (Insufficient credibility score)
100.400.063transaction declined because of missing obligatory parameter(s)
100.400.064transaction must be executed for Austrian, German or Swiss address
100.400.065result ambiguous. Please check manually
100.400.071system error (possible incorrect/missing input data)
100.400.080authorization failure
100.400.081transaction declined
100.400.083transaction declined because of missing obligatory parameter(s)
100.400.084transaction can not be executed for given country
100.400.085result ambiguous. Please check manually
100.400.086transaction declined (Wrong Address)
100.400.087transaction declined (Wrong Identification)
100.400.091system error (possible incorrect/missing input data)
100.400.100transaction declined - very bad rating
100.400.120authorization failure
100.400.121account blacklisted
100.400.122transaction must be executed for valid German account
100.400.123transaction declined because of missing obligatory parameter(s)
100.400.130system error (possible incorrect/missing input data)
100.400.139system error (possible incorrect/missing input data)
100.400.140transaction declined by GateKeeper
100.400.141Challenge by ReD Shield
100.400.142Deny by ReD Shield
100.400.143Noscore by ReD Shield
100.400.144ReD Shield data error
100.400.145ReD Shield connection error
100.400.146Line item error by ReD Shield
100.400.147Payment void and transaction denied by ReD Shield
100.400.148Payment void and transaction challenged by ReD Shield
100.400.149Payment void and data error by ReD Shield
100.400.150Payment void and connection error by ReD Shield
100.400.151Payment void and line item error by ReD Shield
100.400.152Payment void and error returned by ReD Shield
100.400.241Challenged by Threat Metrix
100.400.242Denied by Threat Metrix
Result codeDescription
100.400.243Invalid sessionId
100.400.260authorization failure
100.400.300abort checkout process
100.400.301reenter age/birthdate
100.400.302reenter address (packstation not allowed)
100.400.303reenter address
100.400.304invalid input data
100.400.305invalid foreign address
100.400.306delivery address error
100.400.307offer only secure methods of payment
100.400.308offer only secure methods of payment; possibly abort checkout
100.400.309confirm corrected address; if not confirmed, offer secure methods of payment only
100.400.310confirm bank account data; if not confirmed, offer secure methods of payment only
100.400.311transaction declined (format error)
100.400.312transaction declined (invalid configuration data)
100.400.313currency field is invalid or missing
100.400.314amount invalid or empty
100.400.315invalid or missing email address (probably invalid syntax)
100.400.316transaction declined (card missing)
100.400.317transaction declined (invalid card)
100.400.318invalid IP number
100.400.319transaction declined by risk system
100.400.320shopping cart data invalid or missing
100.400.321payment type invalid or missing
100.400.322encryption method invalid or missing
100.400.323certificate invalid or missing
100.400.324Error on the external risk system
100.400.325External risk system not available
100.400.326Risk bank account check unsuccessful
100.400.327Risk report unsuccessful
100.400.328Risk report unsuccessful (invalid data)

Address validation

Result codeDescriptionNotes
800.400.100AVS Check FailedCard address validation failed. The customer should try again with the correct address.
800.400.101Mismatch of AVS street valueCard address validation failed. The customer should try again with the correct address.
800.400.102Mismatch of AVS street numberCard address validation failed. The customer should try again with the correct address.
800.400.103Mismatch of AVS PO box value fatal
800.400.104Mismatch of AVS zip code value fatalCard address validation failed. The customer should try again with the correct address.
800.400.105Mismatch of AVS settings (AVSkip, AVIgnore, AVSRejectPolicy) value
800.400.110AVS Check Failed. Amount has still been reserved on the customer's card and will be released in a few business days. Please ensure the billing address is accurate before retrying the transaction.Card address validation failed. The customer should try again with the correct address.
800.400.150Implausible address dataCard address validation failed. The customer should try again with the correct address.
800.400.151Implausible address state dataCard address validation failed. The customer should try again with the correct address.

3-D Secure

Result codeDescriptionNotes
100.390.101purchase amount/currency mismatch
100.390.102PARes Validation failed
100.390.103PARes Validation failed - problem with signature
100.390.104XID mismatch
100.390.105Transaction rejected because of technical error in 3DSecure systemAuthentication of this payment failed because of a bank error.
100.390.106Transaction rejected because of error in 3DSecure configurationThe bank's 3-D Secure configuration is incorrect. The customer should contact their bank to identify what the issue is.
100.390.107Transaction rejected because cardholder authentication unavailableThe issuing bank rejected the transaction and it failed because, (1) the card holder or issuing bank is not enrolled for 3-D Secure, (2) 3-D Secure card authentication was unsuccessful, for example, if the card holder is not enrolled for 3-D Secure, or (3) the card or issuing bank is not 3-D Secure ready. The customer must contact their bank to check if they have enrolled for 3-D Secure, or they must check themselves if they enrolled their card for 3-D Secure.
100.390.108Transaction rejected because merchant not participating in 3DSecure program
100.390.109Transaction rejected because of Visa status 'U' or AMEX status 'N' or 'U' in 3DSecure programThe bank's 3-D Secure system was experiencing downtime and could not process the transaction. Check the Peach Payments status page to see if any systems are down. If they are, ask the customer to wait for the system to come online to continue with their transaction.
100.390.110Cardholder Not Found - card number provided is not found in the ranges of the issuer
100.390.111Communication Error to Scheme Directory ServerThe issuing bank, acquiring bank, or a third-party involved in the transaction process was experiencing downtime. Check the Peach Payments status page to see if any banks or third parties are down. If they are, ask the customer to wait for the system to come online to continue with their transaction.
100.390.112Technical Error in 3D systemThe bank's 3-D Secure process encountered an error. It could be that their 3-D Secure system is down, ask the customer to check in with their bank.
100.390.113Unsupported User Device - Authentication not possible3-D Secure is not supported on the customer's device. The customer should try again with another device.
100.390.114Not authenticated because the issuer is rejecting authentication
100.390.115Authentication failed due to invalid message format
100.390.116Access denied to the authentication system
100.390.117Authentication failed due to invalid data fields
100.390.118Authentication failed due to suspected fraudThe customer should contact their issuing bank bank for further information.
800.400.200Invalid Payer Authentication in 3DSecure transaction

Allowlist validation

Result codeDescription
800.200.159account or user is blacklisted (card stolen)
800.200.160account or user is blacklisted (card blocked)
800.200.165account or user is blacklisted (card lost)
800.200.202account or user is blacklisted (account closed)
800.200.208account or user is blacklisted (account blocked)
800.200.220account or user is blacklisted (fraudulent transaction)
800.300.101account or user is blacklisted
800.300.102country blacklisted
800.300.200email is blacklisted
800.300.301ip blacklisted
800.300.302ip is anonymous proxy
800.300.401bin blacklisted
800.300.500transaction temporary blacklisted (too many tries invalid CVV)
800.300.501transaction temporary blacklisted (too many tries invalid expire date)
800.310.200Account closed
800.310.210Account not found
800.310.211Account not found (BIN/issuer not participating)

Risk validation

Result codeDescriptionNotes
800.110.100duplicate transactionThe issuing bank has identified that the transaction reference, unique ID, or retreival reference number of the transaction is the same as an earlier transaction. Peach Payments must raise this with the acquiring bank of the merchant who can investigate and confirm why they flagged the transaction as a duplicate.
800.120.100Rejected by Throttling.
800.120.101maximum number of transactions per account already exceeded
800.120.102maximum number of transactions per ip already exceeded
800.120.103maximum number of transactions per email already exceededThe customer's bank rejects the transaction if it fails velocity checking for the email ID in risk management. The customer transacted too many times in a limited amount of time and must allow some time to elapse before transacting again.
800.120.200maximum total volume of transactions already exceeded
800.120.201maximum total volume of transactions per account already exceeded
800.120.202maximum total volume of transactions per ip already exceeded
800.120.203maximum total volume of transactions per email already exceeded
800.120.300chargeback rate per bin exceeded
800.120.401maximum number of transactions or total volume for configured MIDs or CIs exceeded
800.130.100Transaction with same TransactionId already exists
800.140.100maximum number of registrations per mobile number exceeded
800.140.101maximum number of registrations per email address exceeded
800.140.110maximum number of registrations of mobile per credit card number exceeded
800.140.111maximum number of registrations of credit card number per mobile exceeded
800.140.112maximum number of registrations of email per credit card number exceededWhen a merchant enables this risk setting for their website or business, a card number can only have one email registration. This error occurs when trying to register a card and email that was already registered. The customer should either use their registered email or use a new email when registering with an email.
800.140.113maximum number of registrations of credit card number per email exceeded
800.150.100Account Holder does not match Customer Name
800.160.100Invalid payment data for configured Shopper Dispatching Type
800.160.110Invalid payment data for configured Payment Dispatching Type
800.160.120Invalid payment data for configured Recurring Transaction Dispatching TypeThe API parameters are wrong for recurring or one-click transactions.
800.160.130Invalid payment data for configured TicketSize Dispatching Type

Configuration validation

Result codeDescriptionNotes
500.100.201Channel/Merchant is disabled (no processing possible)
500.100.202Channel/Merchant is new (no processing possible yet)
500.100.203Channel/Merchant is closed (no processing possible)
500.100.301Merchant-Connector is disabled (no processing possible)
500.100.302Merchant-Connector is new (no processing possible yet)
500.100.303Merchant-Connector is closed (no processing possible)
500.100.304Merchant-Connector is disabled at gateway (no processing possible)
500.100.401Connector is unavailable (no processing possible)
500.100.402Connector is new (no processing possible yet)
500.100.403Connector is unavailable (no processing possible)
500.200.101No target account configured for DD transaction
600.200.100invalid Payment Method
600.200.200Unsupported Payment Method
600.200.201Channel/Merchant not configured for this payment method
600.200.202Channel/Merchant not configured for this payment typeAn example of this is if a customer tries to pay with a payment method, for example, an American Express card, when American Express is not configured for your Peach Payments account. Inform your customer that the payment method that they attempted is not supported, and that they should select another payment method and try again.
600.200.300invalid Payment Type
600.200.310invalid Payment Type for given Payment Method
600.200.400Unsupported Payment TypeAn example of this is if you try to execute a payment type (such as rebill) that is not supported on a specific API or for a certain payment method.
600.200.500Invalid payment data. You are not configured for this currency or sub type (country or brand)An example of this is if a customer tries to process an American Express card when American Express is not configured for your Peach Payments account, or if you or Peach Payments have blocked cards issued in a particular country.
600.200.501Invalid payment data for Recurring transaction. Merchant or transaction data has wrong recurring configuration.
600.200.600invalid payment code (type or method)
600.200.700invalid payment mode (you are not configured for the requested transaction mode)
600.200.701testMode not allowed
600.200.800invalid brand for given payment method and payment mode (you are not configured for the requested transaction mode)
600.200.810invalid return code provided
600.300.101Merchant key not found
600.300.200merchant source IP address not whitelisted
600.300.210merchant notificationUrl not whitelisted
600.300.211shopperResultUrl not whitelisted
800.121.100Channel not configured for given source type. Please contact your account manager.
800.121.200Secure Query is not enabled for this entity. Please contact your account manager.

Registration validation

Result codeDescriptionNotes
100.150.100request contains no Account data and no registration id
100.150.101invalid format for specified registration id (must be uuid format)
100.150.200registration does not existPeach Payments did not find a stored card for that token.
100.150.201registration is not confirmed yet
100.150.202registration is already deregisteredYou referenced a deleted stored card.
100.150.203registration is not valid, probably initially rejectedWhen the customer tried to register their card for the payment, they provided the wrong data or no data which results in the issuing bank rejecting the registration. The initial registration phase of the transaction failed, meaning, (1) the registering of the card contained no account holder data, (2) the issuing bank was offline for the initial period of the transaction, or (3) did not pass 3-D Secure resulting in the token not being valid. Try the transaction again, and if it does not succeed, contact your bank for assistance.
100.150.204account registration reference pointed to no registration transaction
100.150.205referenced registration does not contain an account
100.150.300payment only allowed with valid initial registration
100.350.100referenced session is REJECTED (no action possible).An example of this is if you try to refund a rejected debit transaction.
100.350.101referenced session is CLOSED (no action possible)
100.350.200undefined session state
100.350.201referencing a registration through reference id is not applicable for this payment type
100.350.301confirmation (CF) must be registered (RG) first
100.350.302session already confirmed (CF)
100.350.303cannot deregister (DR) unregistered account and/or customer
100.350.310cannot confirm (CF) session via XML
100.350.311cannot confirm (CF) on a registration passthrough channel
100.350.312cannot do passthrough on non-internal connector
100.350.313registration of this type has to provide confirmation url
100.350.314customer could not be notified of pin to confirm registration (channel)
100.350.315customer could not be notified of pin to confirm registration (sending failed)
100.350.316cannot extend the token (TE) on unregistered account
100.350.400no or invalid PIN (email/SMS/MicroDeposit authentication) entered
100.350.500unable to obtain personal (virtual) account - most likely no more accounts available
100.350.601registration is not allowed to reference another transaction
100.350.602Registration is not allowed for recurring payment migration

Job validation

Result codeDescription
100.250.100job contains no execution information
100.250.105invalid or missing action type
100.250.106invalid or missing duration unit
100.250.107invalid or missing notice unit
100.250.110missing job execution
100.250.111missing job expression
100.250.120invalid execution parameters, combination does not conform to standard
100.250.121invalid execution parameters, hour must be between 0 and 23
100.250.122invalid execution parameters, minute and seconds must be between 0 and 59
100.250.123invalid execution parameters, Day of month must be between 1 and 31
100.250.124invalid execution parameters, month must be between 1 and 12
100.250.125invalid execution parameters, Day of week must be between 1 and 7
100.250.250Job tag missing
100.360.201unknown schedule type
100.360.300cannot schedule(SD) unscheduled job
100.360.303cannot deschedule(DS) unscheduled job
100.360.400schedule module not configured for LIVE transaction mode

Reference validation

Result codeDescriptionNotes
700.100.100reference id does not exist
700.100.200non matching reference amount
700.100.300invalid amount (probably too large)
700.100.400referenced payment method does not match with requested payment method
700.100.500referenced payment currency does not match with requested payment currency
700.100.600referenced mode does not match with requested payment mode
700.100.700referenced transaction is of inappropriate type
700.100.701referenced a DB transaction without explicitly providing an account. Not allowed to used referenced account.
700.100.710cross-linkage of two transaction-trees
700.300.100referenced tx can not be refunded, captured or reversed (invalid type)
700.300.200referenced tx was rejected
700.300.300referenced tx can not be refunded, captured or reversed (already refunded, captured or reversed)
700.300.400referenced tx can not be captured (cut off time reached)
700.300.500chargeback error (multiple chargebacks)
700.300.600referenced tx can not be refunded or reversed (was chargebacked)
700.300.700referenced tx can not be reversed (reversal not possible anymore)
700.300.800referenced tx can not be voided
700.400.000serious workflow error (call support)
700.400.100cannot capture (PA value exceeded, PA reverted or invalid workflow?)The preauthorisation that you are capturing was already captured, you are capturing more than the preauthorised amount, or you are capturing a reversed preauthorisation.
700.400.101cannot capture (Not supported by authorization system)
700.400.200cannot refund (refund volume exceeded or tx reversed or invalid workflow?)The transaction that you are refunding was already refunded or reversed, or you are refunding a value greater than the original amount.
700.400.300cannot reverse (already refunded|reversed, invalid workflow or amount exceeded)The transaction that you are refunding was already refunded or reversed, or you are refunding a value greater than the original amount.
700.400.400cannot chargeback (already chargebacked or invalid workflow?)
700.400.402chargeback can only be generated internally by the payment system
700.400.410cannot reverse chargeback (chargeback is already reversed or invalid workflow?)
Result codeDescriptionNotes
700.400.411cannot reverse chargeback or invalid workflow (second chargeback)
700.400.420cannot reverse chargeback (no chargeback existing or invalid workflow?)
700.400.510capture needs at least one successful transaction of type (PA)
700.400.520refund needs at least one successful transaction of type (CP or DB or RB or RC)You are trying to refund a transaction that was unsuccessful.
700.400.530reversal needs at least one successful transaction of type (CP or DB or RB or PA)
700.400.540reconciliation needs at least one successful transaction of type (CP or DB or RB)
700.400.550chargeback needs at least one successful transaction of type (CP or DB or RB)
700.400.560receipt needs at least one successful transaction of type (PA or CP or DB or RB)
700.400.561receipt on a registration needs a successful registration in state 'OPEN'
700.400.562receipts are configured to be generated only internally by the payment system
700.400.565finalize needs at least one successful transaction of type (PA or DB)
700.400.570cannot reference a waiting/pending transactionYou are trying te execute a transaction based on a transaction that is still processing, for example, you are trying to refund a transaction, but the debit is not complete.
700.400.580cannot find transaction
700.400.590installment needs at least one successful transaction of type (DB or PA)
700.400.600finalize needs at least one successful transaction of type (IN, DB, PA or CD)
700.400.700initial and referencing channel-ids do not matchAn example of this is if you try to refund a transaction on a different channel from the original debit, or try to capture and authorise on different channels.
700.450.001cannot transfer money from one account to the same account
700.500.001referenced session contains too many transactionsTransaction failed due to an internal error.
700.500.002capture or preauthorization appears too late in referenced session
700.500.003test accounts not allowed in production
700.500.004cannot refer a transaction which contains deleted customer information

Format validation

Result codeDescriptionNotes
100.300.101invalid test mode (please use LIVE or INTEGRATOR_TEST or CONNECTOR_TEST)
100.300.200transaction id too long
100.300.300invalid reference idAn example of this is if a refund does not reference a successful debit.
100.300.400missing or invalid channel idYour merchant credentials are not correct in the transaction request.
100.300.401missing or invalid sender id
100.300.402missing or invalid version
100.300.501invalid response id
100.300.600invalid or missing user login
100.300.601invalid or missing user pwd
100.300.700invalid relevance
100.300.701invalid relevance for given payment type
100.370.100transaction declined
100.370.101responseUrl not set in Transaction/Frontend
100.370.102malformed responseUrl in Transaction/Frontend
100.370.110transaction must be executed for German address
100.370.111system error( possible incorrect/missing input data)
100.370.121no or unknown ECI Type defined in Authentication
100.370.122parameter with null key provided in 3DSecure Authentication
100.370.123no or unknown verification type defined in 3DSecure Authentication
100.370.124unknown parameter key in 3DSecure Authentication
100.370.125Invalid 3DSecure Verification_ID. Must have Base64 encoding a Length of 28 digits
100.370.131no or unknown authentication type defined in Transaction/Authentication@type
100.370.132no result indicator defined Transaction/Authentication/resultIndicator
100.500.101payment method invalid
100.500.201payment type invalid
100.500.301invalid due date
100.500.302invalid mandate date of signature
100.500.303invalid mandate id
100.500.304invalid mandate external id
100.600.500usage field too long
100.900.500invalid recurrence mode
200.100.101invalid Request Message. No valid XML. XML must be url-encoded! maybe it contains a not encoded ampersand or something similar.
200.100.102invalid Request. XML load missing (XML string must be sent within parameter 'load')
200.100.103invalid Request Message. The request contains structural errors
200.100.150transaction of multirequest not processed because of subsequent problems
200.100.151multi-request is allowed with a maximum of 10 transactions only
200.100.199Wrong Web Interface / URL used. Please check out the Tech Quick Start Doc Chapter 3.
200.100.201invalid Request/Transaction tag (not present or [partially] empty)
200.100.300invalid Request/Transaction/Payment tag (no or invalid code specified)
200.100.301invalid Request/Transaction/Payment tag (not present or [partially] empty)
200.100.302invalid Request/Transaction/Payment/Presentation tag (not present or [partially] empty)Your merchant credentials are not correct in the transaction request.
200.100.401invalid Request/Transaction/Account tag (not present or [partially] empty)
200.100.402invalid Request/Transaction/Account(Customer, Relevance) tag (one of Account/Customer/Relevance must be present)
200.100.403invalid Request/Transaction/Analysis tag (Criterions must have a name and value)
200.100.404invalid Request/Transaction/Account (must not be present)
200.100.501invalid or missing customer
200.100.502invalid Request/Transaction/Customer/Name tag (not present or [partially] empty)
200.100.503invalid Request/Transaction/Customer/Contact tag (not present or [partially] empty)
200.100.504invalid Request/Transaction/Customer/Address tag (not present or [partially] empty)
200.100.601invalid Request/Transaction/(ApplePay|GooglePay) tag (not present or [partially] empty)
200.100.602invalid Request/Transaction/(ApplePay|GooglePay)/PaymentToken tag (not present or [partially] empty)
200.100.603invalid Request/Transaction/(ApplePay|GooglePay)/PaymentToken tag (decryption error)
200.200.106duplicate transaction. Please verify that the UUID is unique
200.300.403Invalid HTTP method
200.300.404invalid or missing parameterYou omitted a required parameter (for example, the transaction amount) or submitted an invalid parameter. If you see this error on the Peach Payments Dashboard, contact support for assistance.
200.300.405Duplicate entity
200.300.406Entity not found
200.300.407Entity not specific enough
800.900.100sender authorization failed
800.900.101invalid email address (probably invalid syntax)
800.900.200invalid phone number (has to start with a digit or a '+', at least 7 and max 25 chars long)
800.900.201Unknown channelThe entity ID in the payment request is wrong.
800.900.300Invalid authentication informationThe authentication password is wrong.
800.900.301user authorization failed, user has no sufficient rights to process transaction
800.900.302Authorization failed
800.900.303No token created
800.900.399Secure Registration Problem
800.900.401Invalid IP number
800.900.450Invalid birthdate

Address validation

Result codeDescription
100.800.100request contains no street
100.800.101The combination of street1 and street2 must not exceed 201 characters.
100.800.102The combination of street1 and street2 must not contain only numbers.
100.800.200request contains no zip
100.800.201zip too long
100.800.202invalid zip
100.800.300request contains no city
100.800.301city too long
100.800.302invalid city
100.800.400invalid state/country combination
100.800.401state too long
100.800.500request contains no country
100.800.501invalid country

Contact validation

Result codeDescription
100.700.100customer.surname may not be null
100.700.101customer.surname length must be between 0 and 50
100.700.200customer.givenName may not be null
100.700.201customer.givenName length must be between 0 and 50
100.700.300invalid salutation
100.700.400invalid title
100.700.500company name too long
100.700.800identity contains no or invalid 'paper'
100.700.801identity contains no or invalid identification value
100.700.802identification value too long
100.700.810specify at least one identity
100.900.100request contains no email address
100.900.101invalid email address (probably invalid syntax)
100.900.105email address too long (max 50 chars)
100.900.200invalid phone number (has to start with a digit or a '+', at least 7 and max 25 chars long)
100.900.300invalid mobile phone number (has to start with a digit or a '+', at least 7 and max 25 chars long)
100.900.301mobile phone number mandatory
100.900.400request contains no ip number
100.900.401invalid ip number
100.900.450invalid birthdate

Account validation

Result codeDescriptionNotes
100.100.100request contains no creditcard, bank account number or bank name
100.100.101invalid creditcard, bank account number or bank nameThe transaction failed because, (1) you entered the wrong credit card number, bank account number, or bank name or (2) your credit card is not activated for online transactions. Try again or contact your bank.
100.100.104invalid unique id / root unique id
100.100.200request contains no month
100.100.201invalid month
100.100.300request contains no year
100.100.301invalid year
100.100.303card expiredThe transaction failed because the customer used an expired card. The customer should try again with a valid card.
100.100.304card not yet valid
100.100.305invalid expiration date format
100.100.400request contains no cc/bank account holder
100.100.401cc/bank account holder too short or too long
100.100.402cc/bank account holder not valid
100.100.500request contains no credit card brand
100.100.501invalid credit card brand
100.100.600empty CVV for Visa,MASTER, AMEX not allowed
100.100.601invalid CVV/brand combination
100.100.650empty CreditCardIssueNumber for MAESTRO not allowed
100.100.651invalid CreditCardIssueNumber
100.100.700invalid cc number/brand combinationYour customer might be entering all the digits found on the reverse side of their card, instead of only the last three digits for Visa and Mastercard or the last four digits for Amex and Diners. Remember that by default, Amex is not activated unless you have specifically requested it. If you receive this error often, Peach Payments recommends showing an image of what a CVV is and specifying to customers during the checkout the amount of digits they need to enter. Your customer's transaction failed because, (1) you entered the wrong credit card number, CVV, or CVC, (2) the credit card is not activated for online transactions, or (3) the credit card type is not accepted. Provide Peach Payments with the issuing bank and the country of issue of the credit card for further assistance.
100.100.701suspecting fraud, this card may not be processed
100.200.100bank account contains no or invalid country
100.200.103bank account has invalid bankcode/name account number combination
100.200.104bank account has invalid account number format
100.200.200bank account needs to be registered and confirmed first. Country is mandate based.
100.210.101virtual account contains no or invalid Id
100.210.102virtual account contains no or invalid brand
100.211.101user account contains no or invalid Id
100.211.102user account contains no or invalid brand
100.211.103no password defined for user account
100.211.104password does not meet safety requirements (needs 8 digits at least and must contain letters and numbers)
100.211.105wallet id has to be a valid email address
100.211.106voucher ids have 32 digits always
100.212.101wallet account registration must not have an initial balance
100.212.102wallet account contains no or invalid brand
100.212.103wallet account payment transaction needs to reference a registration

Amount validation

Result codeDescription
100.550.300request contains no amount or too low amount
100.550.301amount too large
100.550.303amount format invalid (only two decimals allowed).
100.550.310amount exceeds limit for the registered account.
100.550.311exceeding account balance
100.550.312Amount is outside allowed ticket size boundaries
100.550.400request contains no currency
100.550.401invalid currency
100.550.601risk amount too large
100.550.603risk amount format invalid (only two decimals allowed)
100.550.605risk amount is smaller than amount (it must be equal or bigger than amount)
100.550.701amounts not matched
100.550.702currencies not matched

Risk management

Result codeDescription
100.380.101transaction contains no risk management part
100.380.201no risk management process type specified
100.380.305no frontend information provided for asynchronous transaction
100.380.306no authentication data provided in risk management transaction

Chargebacks

Result codeDescription
000.100.200Reason not Specified
000.100.201Account or Bank Details Incorrect
000.100.202Account Closed
000.100.203Insufficient Funds
000.100.204Mandate not Valid
000.100.205Mandate Cancelled
000.100.206Revocation or Dispute
000.100.207Cancellation in Clearing Network
000.100.208Account Blocked
000.100.209Account does not exist
000.100.210Invalid Amount
000.100.211Transaction succeeded (amount of transaction is smaller than amount of pre-authorization)
000.100.212Transaction succeeded (amount of transaction is greater than amount of pre-authorization)
000.100.220Fraudulent Transaction
000.100.221Merchandise Not Received
000.100.222Transaction Not Recognized By Cardholder
000.100.223Service Not Rendered
000.100.224Duplicate Processing
000.100.225Credit Not Processed
000.100.226Cannot be settled
000.100.227Configuration Issue
000.100.228Temporary Communication Error - Retry
000.100.229Incorrect Instructions
000.100.230Unauthorised Charge
000.100.231Late Representment
000.100.232Liability Shift
000.100.233Authorization-Related Chargeback
000.100.234Non receipt of merchandise
000.100.299Unspecified (Technical)

Payment Links

All Payment Links result codes start with 1000.

Bulk Payment Links

The API returns an error code in the errorCode parameter of the batch link status response body if the status is error.

All Bulk Payment Links result codes feature 100 after the first period.

Result codeDescription
1000.100.000Processing of the file has failed.
1000.100.010Channel not found
1000.100.020Unable to update batch status to 'processing'
1000.100.101Invalid file format
1000.100.102Empty file uploaded
1000.100.103File contained 0 rows.
1000.100.104File size is too large. Please submit a smaller file.
1000.100.105File contains too many rows.

HTTP status codes

Peach Payments APIs use conventional HTTP status codes to describe the success or failure of requests.

  • Codes in the 2xx range mean success.
  • Codes in the 4xx range mean error or failure. Examples of issues that could cause a 4xx range failure include:
    • You omitted a required parameter
    • A charge failed
  • Codes in the 5xx range mean that something went wrong on the server side while processing the request.

The detailed reason for the failure should be determined from the response data, for example, response code 200.300.404, and not based only on the status code.

Response codeStatusDescription
200OKRequest processed; for certain transactions, you can determine the outcome from the result code in the response.
307Temporary redirectThe requested resource has been temporarily moved.
400Bad requestRequest failed due to missing or invalid parameters. Also returned if the payment failed, for example, if the acquirer declined the transaction.
401UnauthorisedWrong authentication information, for example, one of the authentication parameters is wrong - check them or contact us for correct parameters.
403ForbiddenAuthentication details are valid but do not provide enough permissions to access the requested resource.
404Not foundThe requested resource or endpoint cannot be found, that is, the endpoint or URL does not exist. This can also be caused by typos or wrong IDs.
405Method not allowedThe method is not allowed for the requested URL.
429Too many requestsExceeded the number of requests allowed within a given time period, for example, you might have exceeded the rate limit for the transaction status API.
500Internal server errorThe server encountered an unexpected error while processing the request.
502Bad gatewayThe server, while acting as a gateway or proxy, received an invalid response from the upstream server.
503Service unavailableThe server is not ready to handle the request. It might be overloaded or down for maintenance.