Are you looking for test card numbers?

Would you like to contact support?

Developer-resource icon

Error codes and messages

When you make an API call to Adyen and there is an error, you will receive a response with HTTP status code different from 200. In this response, you get errorCode and message fields that help you diagnose and solve the error.

Depending on your integration type, there are a number of error codes you can receive. All integrations can receive Generic error codes.

There are also error codes specific for an integration type or payment method:

Generic error codes

000 - Unknown

This error can have multiple potential causes. Here are some examples:

  • Unknown: Unauthorised: The API key or Auth credentials are incorrect.
  • Recurring payments require a shopperReference: The shopper reference is required to share tokens, create permits, and other recurring payment flows.
  • Validation 000: Lookup failed.
  • Unable to parse message.
  • Not Found.
  • paymentDetails not supplied: Check if the recurring details and the recurringDetailReference are being passed correctly.
  • Not allowed to change the shopperInteraction: The merchant recurring permission is missing.
  • The Account Updater connection is only supported for Visa & Mastercard.
  • CVC is required for OneClick card payments.

010 - Not allowed


  • The web service user is missing the permissions API PCI role, HPP API Payments role, and/or API Payment RefundWithData role.
  • Incorrect user API.
  • In case of refundWithData, missing roles API Payment RefundWithData and Merchant Payout.

100 - Required object 'amount' is not provided.

Cause: Missing parameter

  • Add the missing parameter(s) amount or originalReference.
  • Compare your request with a standard request for that endpoint, and identify missing parameters.

101 - Invalid card number


  • Incorrect card number or length.
  • Incorrect capitalization of PaRes.

102 - Unable to determine variant

Cause: The card number field contains an incorrect value.

103 - CVC is not the right length


  • The CVC is not valid.
  • The CVC is alpha numeric instead of numeric only.
  • There are more than three digits.

104 - Billing address problem

Cause: Missing a required field under billingAddress.
Solution: Check the billingAddress object for missing fields.

105 - Invalid paRes from issuer

  • Cause: The issuer returns an URL-encoded PaRes or MD.
  • Solution: URL-decode the PaRes and MD before submitting them in the /payments/details request.

  • Cause: The issuer returns the correct PaRes value, but the parameter name is different from PaRes, for example PaResponse or paRes.
  • Solution: Adyen only accepts this parameter as PaRes. If the issuer has returned something different, make sure that you change it to PaRes before submitting it in the /payments/details request.

  • Cause: The PaRes parameter is empty, or some other reason different from the above.
  • Solution: Ask your shopper to contact the issuing bank to report the error.

106 - This session was already used previously

107 - Recurring is not enabled

Cause: Missing user permission.
Solution: Add the Merchant Recurring role to the associated web service user.

108 - Invalid bankaccount number

Cause: The IBAN might be incorrect.

109 - Invalid variant

Cause: Missing txvariant details.
Solution: Check the requestData and pass the details correctly.

110 - BankDetails missing

Cause: The IBAN might be incorrect.

111 - Invalid BankCountryCode specified


  • The parameter name is spelled incorrectly.
  • The value passed for countryCode is not following the ISO standard.


  • Confirm the parameter name spelling in the Adyen API Explorer.
  • Check that the countryCode value corresponds to a country and is spelled correctly, for example use DE for Germany.

112 - This bank country is not supported


  • countryCode length is not following the ISO standard.
  • countryCode does not exist.

113 - No InvoiceLines provided

Cause: Invoice lines are missing in the requestData.

114 - Received an incorrect InvoiceLine

Cause: Incorrect currency used, or the lineReference is 'null'.
Solution: Check the invoice line against the requestData.

115 - Total amount is not the same as the sum of the lines

Cause: linesTotalQuantity is not equal to request.getAmount().getValue().

116 - Invalid date of birth

Cause: Incorrect date of birth format is being passed.
Solution: Check what is being passed in the dateOfBirth parameter.

117 - Invalid billing address

Cause: The billingAddress object does not contain all the required fields.
Solution: Check the required parameters in the API Explorer.

118 - Invalid delivery address

Cause: The deliveryAddress is 'null' or there is an error in the delivery address format.

119 - Invalid shopper name

Cause: The shopperName is 'null'.

120 - Required field 'shopperEmail' is not provided.


  • The shopperEmail is not being passed.
  • The shopperEmail is not formatted correctly.

121 - Required field 'shopperReference' is not provided.

Cause: shopperReference is 'null'.

122 - Required field 'telephoneNumber' is not provided.

Cause: The phoneNumber or telephoneNumber is 'null'.

124 - Invalid PhoneNumber

125 - Invalid recurring contract specified

Cause: The recurring object is not passed correctly.
Solution: Check the requestData and make sure that the recurring object is correct.

126 - Bank Account or Bank Location Id not valid or missing

127 - Required field 'accountHolderName' is not provided.

128 - Required field 'card.holderName' is not provided.

129 - Expiry Date Invalid


  • The value is not numeric.
  • The value contains an empty space.
  • The expiry month is not set.
  • The month value is not between 1 and 12.

Solution: Check variable/input passed into field.

130 - Reference Missing


  • The reference parameter is missing.
  • The requestData is missing multiple parameters.

Solution: Check if the reference parameter is passed correctly.

131 - Required field '' is not provided.

132 - Required field 'billingAddress.street' is not provided.

133 - Required field 'billingAddress.houseNumberOrName' is not provided.

134 - Billing address problem (Country)

135 - Required field 'billingAddress.stateOrProvince' is not provided.

136 - Failed to retrieve OpenInvoiceLines

137 - Field 'amount' is not valid.


  • The amount being passed is greater than the limit.
  • The amount being passed isn't positive.

Solution: Check variable/input.

138 - Unsupported currency specified


  • The payment method does not support the currency.
  • SEPA Direct Debit only supports EUR as the currency.
  • The currency code is blocked.
  • The acquirer does not support this currency.
  • Missing currencyCode.
  • The currency code is not found in the supported currency code list.

139 - Recurring requires shopperEmail and shopperReference

Cause: Missing shopperReference and shopperEmail.

140 - Invalid expiryMonth[1..12] / expiryYear[>2000], or before now

141 - Invalid expiryMonth[1..12] / expiryYear[>2000]

142 - Bank Name or Bank Location not valid or missing

143 - Submitted total iDEAL merchantReturnUrl length is {0}, but max size is {1} for this request

144 - Invalid startMonth[1..12] / startYear[>2000], or in the future

145 - Invalid issuer countrycode

146 - Invalid social security number

147 - Required field '' is not provided.

148 - Required field 'deliveryAddress.street' is not provided.


  • You are not sending all parameters.
  • You are sending all parameters, the value is EMPTY.

Solution: Pass all required parameters or make sure that you pass data in each parameter.

149 - Required field 'deliveryAddress.houseNumberOrName' is not provided.

150 - Delivery address problem (Country)

151 - Required field 'deliveryAddress.stateOrProvince' is not provided.

Cause: StateOrProvince field is missing in delivery address and is required for the selected country.

152 - Invalid number of installments


  • Installment value is zero.
  • The payment method is not set up with installment.


  • Check the requestData.
  • Configure installment under the specific payment method, for example Visa.

153 - Invalid CVC

Cause: Not passing numeric or valid values.
Solution: Check what variable or input is being passed into the CVC field.

154 - No additional data specified

155 - No acquirer specified

156 - No authorisation mid specified

157 - No fields specified

158 - Required field {0} not specified

159 - Invalid number of requests

160 - Not allowed to store Payout Details

161 - Invalid iban


  • The IBAN is incorrect.
  • There is a mismatch between IBAN and country.


  • Verify the IBAN number.
  • Check if IBAN is supported for the specified countryCode.

162 - Inconsistent iban


  • Swift Code / BIC does not exist - SEPA/Giro/Direct Debit.
  • Payout party/account BIC/Swift invalid.
  • Bank/mt940 - Invalid BIC/Swift in co-relation to countryCode.
  • Exceeded IBAN characters/digits.

163 - Invalid bic

164 - Auto capture delay invalid or out of range

165 - MandateId does not match pattern

166 - Amount not allowed for this operation

167 - Original pspReference required for this operation

Cause: Original PSP missing in the requestData.

168 - AuthorisationCode required for this operation

170 - Generation Date required but missing

171 - Unable to parse Generation Date

172 - Encrypted data used outside of valid time period

Cause: Merchant server-side date/time is not set up correctly. For example, the merchant server side is set up to 1975 when it is 2020, or the date isn't in a plus or minus 24 hour range as of today.
Solution: Check the server-side date/time configuration.

173 - Unable to load Private Key for decryption

174 - Unable to decrypt data


  • Using HTTP GET instead of HTTP POST.
  • Environment mismatch (LIVE or TEST).
  • The Origin key/Client key was not generated correctly.
  • API key should match the API key from the web service user, and should match the environment.

Solution: If you are seeing this using a plugin, generate a new web service user with the relevant permissions.

175 - Unable to parse JSON data

Cause: Check if the parameters sent are formatted correctly in JSON.
Solution: Read through the requestData to find the error.

180 - Invalid shopperReference

Cause: shopperReference is empty, doesn't exist or is not found.

181 - Invalid shopperEmail

Cause: shopperEmail is empty, doesn't exist or is not found.

182 - Invalid selected brand

Cause: The selected brand is not equal to the brand on the stored token, or empty.

183 - Invalid recurring contract

Cause: Not found in Recharge. Qiwi can also throw this error if recurring contract isn't found.

184 - Invalid recurring detail name

Cause: Value is empty or 'null', or the name doesn't match with the recurringDetail name.

185 - Invalid additionalData


  • Too many fields/entries.
  • SplitPayment missing/not valid.
  • AdyenGivingAccount not specified, cannot be retrieved or does not exist.


  • SplitPayments - check the additionalData object for errors or missing data.
  • The number of items in the object is less than 1000.
  • itemReference must always be unique in case you're using Adyen for Platforms.
  • If any additionalData is not valid, remove it from modification processing. For example, a payment can go through, but a split will not.

186 - Missing additionalData field

187 - Invalid additionalData field


  • Too many fields/entries.
  • SplitPayment missing/not valid.
  • AdyenGivingAccount not specified, cannot be retrieved or does not exist.

188 - Invalid pspEchoData

Cause: The previous recurringDetail token was not saved correctly or does not exist.

189 - Invalid shopperStatement

Cause: Empty value passed in requestData.

190 - Invalid shopper IP

Cause: The shopperIP is empty.

191 - No params specified

192 - Invalid field {0}

193 - Bin Details not found for the given card number


  • Not sending in correct parameters.
  • Not passing applicable value.

194 - Billing address missing

195 - Could not find an account with this key: {0}

196 - Invalid Mcc


  • Check MCC length.
  • Should be a numeric value.
  • An alphanumeric value is provided.

198 - Reference may not exceed 79 characters

Cause: The reference contains more than 80 characters.

199 - The cryptographic operation could not proceed, no key configured

200 - Invalid country code

Cause: Incorrect countryCode.
Solution: Use ISO 3166-1 alpha-2 format.

203 - Invalid Bank account holder name


  • Account holder name is inconsistent with FATF 16 recommendations.
  • Name may not contain numbers.

205 - Missing or invalid networkTxReference


  • Only digits provided.
  • Incorrect format.
  • Must have an alphanumeric combination.
  • Can also occur if recurring value is 'null'.

213 - Required field 'socialSecurityNumber' is not provided.

Cause: The socialSecurityNumber, which is required for the payment method, is missing.

600 - No InvoiceProject provided

601 - No InvoiceBatch provided

602 - No creditorAccount specified

603 - No projectCode specified

604 - No creditorAccount found

605 - No project found

606 - Unable to create InvoiceProject

607 - InvoiceBatch already exists

608 - Unable to create InvoiceBatch

609 - InvoiceBatch validity period exceeded

690 - Error while storing debtor

691 - Error while storing invoice

692 - Error while checking if invoice already exists for creditorAccount

693 - Error while searching invoices

694 - No Invoice Configuration configured for creditAccount

695 - Invalid Invoice Configuration configured for creditAccount

700 - No method specified

701 - Server could not process request


  • Incorrect POST / Content Type.
  • Might be sending XML, HTTP etc.
  • Insufficient web service user permissions when using Pay by Link.
  • Using Pay by Link with incorrect shopperReference.
  • API version not specified.
  • RequestURL is not valid.


  • Send JSON formatted, send HTTP POST.
  • Pay by Link: make sure the web service user has the required permissions.

702 - Problem parsing request


  • The request contains a field that is not recognized, or the format is not valid. This validation was introduced in API v64.
  • Empty input which would have resulted in a null result: you might be using requestData from the API Explorer without populating your merchant account details.
  • Internal Error.
  • Required field shopperEmail is 'null'.

704 - Request already processed

Cause: The web service user is sending multiple authorised requests.
Solution: Check that you send in requests only once.

800 - Contract not found


  • shopperReference does not exist.
  • The requestData is creating a contract and using the recurringDetailReference at the same time.

Solution: Check if the details were saved previously, check the shopperReference.

801 - Too many PaymentDetails defined

Cause: The root cause of these timeouts is too many paymentDetails, or an incorrect integration for the same recurring or shopper reference.

802 - Invalid contract

Cause: There are no valid contract types (recurring or OneClick), or the contract type is not one of RECURRING, ONECLICK or PAYOUT.
Solution: Check the data that is sent in on the PAL, and then the data that is sent in on the PAL. Check the recharge service under the recurring field.

803 - PaymentDetail not found


  • selectedRecurringDetailReference does not exist.
  • You have used the /disable endpoint to disable the recurringDetailReference.
  • requestData is missing, for example open invoice lineItems for Klarna.

Solution: Check if the values being passed are correct and valid.

804 - Failed to disable

805 - RecurringDetailReference not available for provided recurring-contract

806 - No applicable contractTypes left for this payment-method

Cause: The txvariant Maestro cannot have recurring. The scheme mandates 3D Secure for all Maestro transactions, which is why recurring transactions are not possible.
Solution: Recreate the contract, check the contract creation parameters or change current requestData.

807 - Invalid combination of shopper interaction and recurring-contract

Cause: Recurring contract was not set up with shopperInteraction.

901 - Invalid Merchant Account


  • Sending in the wrong merchant account.
  • MD values are wrong when running the 3D Secure flow.
  • The web service that is isn't permitted for that merchantAccount.
  • Company is not active.

Solution: Make sure that the MD is not being reused, and make sure that the merchant account in the request actually exists.

902 - Invalid or empty request data

903 - Internal error

904 - Unable To Process

Cause: Error communicating with Adyen.

905 - Payment details are not supported


  • Missing paymentMethod in Customer Area.
  • paymentMethod not set up for countryCode.
  • No acquirer account found for merchant account with variant cupcredit for given currency for action AUTH.


  • countryCode in requestData should match with paymentMethod txvariant in CA (for example, bankTransfer_DE should match with countryCode DE in requestData)

906 - Invalid Request: Original pspReference is invalid for this environment


  • LIVE/TEST PSP mismatch.
  • Sending TEST PSP to LIVE endpoint.

Solution: Pass the correct PSP or check environment you're testing in.

907 - Payment details are not supported for this country/ MCC combination


  • paymentMethod in Customer Area is missing or not configured for a specific country.
  • There are MCC restrictions.
  • Did not pass className: TxScreening (the transaction fails card number check on prepaid cards specifically).

Solution: Check paymentMethod configuration for logical errors.

908 - Invalid request


  • Using incorrect endpoint.
  • Incorrect requestData is sent to incorrect endpoint.

Solution: Check what the goal of the request is and fix the requestData. Make sure you are sending to the correct endpoint.

912 - The TX Variant does not support the redemption type

916 - The transaction amount exceeds the allowed limit for this type of card

950 - Invalid AcquirerAccount

951 - Configuration Error (acquirerIdentification)

952 - Configuration Error (acquirerPassword)

953 - Configuration Error (apiKey)

954 - Configuration Error (redirectUrl)

955 - Configuration Error (AcquirerAccountData)

956 - Configuration Error (currencyCode)

957 - Configuration Error (terminalId)

958 - Configuration Error (serialNumber)

959 - Configuration Error (password)

960 - Configuration Error (projectId)

961 - Configuration Error (merchantCategoryCode)

962 - Configuration Error (merchantName)

963 - Invalid company registration number

964 - Invalid company name

965 - Missing company details

966 - Configuration Error (privateKeyAlias)

967 - Configuration Error (publicKeyAlias)

1000 - Card number cannot be specified for Incontrol virtual card requests

1001 - Recurring not allowed for Incontrol virtual card requests

1002 - Invalid Authorisation Type supplied

2000 - Bank account details do not meet instruction format


  • Not passing bank details required for Payout.
  • Using selectedRecurringDetailReference as LATEST which may or may not correspond to bank details.

29_001 - Field '{0}' may not exceed {1} characters.


  • The value provided in the field exceeded the allowed number of characters.
  • The value is provided in the wrong field. For example, the field must be PaReq instead of PaRes.
  • For generated or encrypted values, something might have gone wrong in the generation process which caused the value to be too long.


  • Check the values that you are providing in the fields.
  • If you confirm that the fields and values are correct but the error persists, contact our Support Team.

29_100 - The request is larger than the allowed maximum of {0} bytes


  • The request's body contained more bytes than the maximum allowed for that endpoint.

Checkout error codes

14_002 - paymentData has not been provided in the request

14_003 - Invalid paymentData

14_004 - Missing payment method details

14_005 - Invalid payment method details

One reason could be that the recurring contract on a token might be missing. For example, a payment method only supports creating a RECURRING contract, but you are trying to use a ONECLICK contract.

14_006 - paymentMethod object has not been provided in the request

14_007 - Invalid payment method data

There is an error with information in the paymentMethod object. For example, the paymentMethod.type might be missing.

14_008 - Session has expired

14_010 - The request contains no sdkVersion although the channel is set to Web

14_011 - The provided channel is conflicting the provided parameters

Solution: Provide the correct token for iOS or Android, or sdkVersion for Web. Do not provide both token and sdkVersion.

14_012 - The provided SDK token could not be parsed

14_013 - For HTML Response; origin has to be provided

14_014 - This end point requires the version to be specified

14_015 - Token is missing

14_016 - Invalid sdkVersion provided

14_017 - The provided SDK Token has an invalid timestamp

14_018 - Invalid payload provided

14_019 - The request does not contain sdkVersion or token

14_020 - No issuer selected

14_021 - Unknown terminal

14_022 - Missing uniqueTerminalId

14_023 - Installments were not configured in setup request

14_024 - Invalid open invoice request

14_026 - The selected flow is invalid

14_027 - The provided returnUrlQueryString is invalid

14_028 - 3D Auth Data is incomplete

Solution: Provide both PaRes and MD fields.

14_029 - CVC is required for this payment but not provided

14_030 - Return URL is missing

14_031 - Bank account is missing

14_032 - Provide either threeds2.fingerprint or threeds2.challengeResult

14_033 - The provided fingerprint is invalid

14_034 - The provided fingerprint is invalid. Field affected: FIELD_NAME

Cause: If the affected field is threeDSCompIn, the cause is that the device fingerprint is not forwarded to the /payments/details API call with the payment response.
Solution: Check that you receive the device fingerprint data, and that you pass the data in the /payments/details API call.

14_035 - 'origin' or 'notificationURL' must be provided

14_036 - Missing required field 'channel'

14_037 - Provided orderData is invalid

14_0378 - Provided recurringExpiry format is invalid. Required format: yyyy-MM-dd'T'HH:mm:ssX, for example 2019-12-31T23:59:59+02:00

14_0379 - expiresAt is greater than the allowed date, max allowed: VALUE

14_0380 - PaymentData and MD belong to different requests, please submit the correct MD

14_0381 - Missing or invalid clientKey/originKey

14_0382 - Missing or invalid conversionId

14_0383 - Missing or invalid shopperStage

14_0384 - Missing or invalid details for provided shopperStage

14_0385 - PaymentLink is expired

14_0392 - Payment details are incomplete. Please provide both PaRes and MD.

Remark: This error can only occur in the authentication-only flow.

3DS2 error codes

15_001 - deviceChannel shall be present

15_002 - Required field FIELD_NAME missing for device channel DEVICE_CHANNEL_NAME

15_003 - Field FIELD_NAME should not be present for device channel DEVICE_CHANNEL_NAME

15_004 - Invalid value in field FIELD_NAME

15_005 - Unexpected field FIELD_NAME

15_006 - messageCategory shall be present

15_007 - Value of FIELD_NAME is too long (VALUE > MAX_ALLOWED_VALUE)

15_008 - Invalid merchant configuration for 3DS 2.0

15_009 - threeDS2Token is required

15_010 - Invalid deviceChannel value. Must be 'app', 'browser' or 'TRI'.

15_011 - pspReference is not a valid pspReference

15_012 - Result not present

15_013 - Cannot add 3DS2 authentication values because addRawThreeDSecureDetailsResult is not enabled

15_014 - Invalid threeDS2Token

15_015 - Invalid browserInfo provided

15_016 - Language must be a valid tag according to IETF BCP47 definition

15_017 - Cannot perform an authorisation on a 3DS2 transaction more than 12 hours after the transaction began

15_018 - colorDepth must be 1, 4, 8, 15, 16, 24, 32 or 48 bit

15_019 - stateOrProvince invalid

15_020 - invalid transStatus

Cause: Check the requestData. It is likely that the transStatus is Null.
Solution: Check what is being passed in the request, and check with the issuer. The transStatus is defined by the issuer.

15_021 - notificationURL cannot be localhost

Cause: You are most likely using a custom browser implementation, and trying to test your implementation on your localhost.
Solution: Deploy a public notification server if you are testing or using a browser-based 3D Secure flow.

15_022 - invalid authenticationOnly field

15_023 - threeDS2RequestData is not supported for threeDS2InMDFlow

Cause: You are most likely using a deprecated flow: you are sending in the threeDS2RequestData object inside the payments request, and at the same time you request the threeDS2InMDFlow in the additionalData or via your account data settings.
Solution: Either remove the threeDS2RequestData object from the /payments request, or use the native flow. Do not rely on the redirect flow.

15_024 - Result not present - Authentication older than 60 days

Amazon Pay error codes

5_601 - Unknown error for Amazon Pay

Cause: Amazon responded with errorMessage: Null.

5_602 - Amazon Pay token doesn't exist for Amazon Pay

Cause: The amazonPayToken is missing.

5_603 - Amazon Pay signature corrupt

5_604 - Invalid Amazon Pay value supplied: VALUE

5_605 - Could not find Merchant Private Key

Cause: The Encryption Key hasn't been setup on the web service user for your merchant account.

5_606 - Amazon Pay token is not chargeable

Cause: The amazonPayToken is not correct.

5_607 - Invalid account

5_608 - Invalid refund status

5_609 - Missing header fields

5_610 - Amazon Pay is not available

5_611 - Rejected by Amazon

5_612 - Amazon Pay internal error

5_613 - Amazon Pay timeout

5_614 - Amazon Pay sent invalid response

5_615 - Authentication Notification to Amazon Pay failed

Apple Pay error codes

5_001 - Apple Pay token amount-mismatch

Cause: The amount that you have configured in the Drop-in for the Apple Pay component is different from the final amount that you are sending in the /payments request.
Solution: Make sure that the amount in the front-end mirrors the amount you send in the /payments request.

5_002 - Invalid Apple Pay token

Cause: Your web service user and/or merchant account set up is incorrect.

5_003 - Incorrect Apple Pay token version

Cause: There is an Apple Pay version mismatch. You may have to regenerate your token and set up your web service user again.

5_004 - Could not find Merchant Private Key

Cause: The CSR is not valid, you most likely provided a different certificate compared to the certificate that is registered on the Apple Pay developer portal.
Solution: Do the PEM certificate exchange flow again, and provide the same certificate.

5_005 - Could not find Merchant Public Key

Cause: The CSR is not valid, you most likely provided a different certificate compared to the certificate that is registered on the Apple Pay developer portal.
Solution: Do the PEM certificate exchange flow again, and provide the same certificate.

5_006 - Apple Pay signature corrupt

Cause: There is a signature mismatch, the signature cannot be read.

5_007 - Missing certificate for Apple Pay signature

Cause: The signature is empty, there is no certificate or the certificate is missing.
Solution: Set up the web service user again, and configure the Apple Pay token.

5_008 - Our Test system does not accept Live tokens

Google Pay error codes

5_202 - Invalid PayWithGoogle token


  • You are not passing the correct token, or there is an incorrect merchant account in the request data.
  • Incorrect payment method MID setup.
  • Android App not registered with Google in case of Android integration.

Solution: Make sure that you are sending in the correct token. Do not escape the stringified JSON send it as it is.

5_206 - PayWithGoogle signature corrupt

Cause: There is a signature mismatch, the signature cannot be read.

5_208 - PayWithGoogle token already expired

Cause: The token expired. Troubleshoot with Google, as the error is mapped directly with the Google response.