Sample - Adyen Checkout API
POST/validateShopperId

Validate a shopper ID

Validates a shopper identifier for the supplied merchant account and payment method. Provide merchantAccount and paymentMethod, whose type must be payTo or upi_collect; include shopper contact details when available. The response reports whether the shopper identifier is valid, invalid, unknown, or not required.

  • RetriesRetries up to 2×, 500ms backoff, 30s timeout.
  • IdempotentThe SDK sends Idempotency-Key, so a retried request is only applied once.

5 body fields

Shopper validation request containing the merchant account, payment method, and optional shopper details.

merchantAccountstringrequired
The merchant account identifier, with which you want to process the transaction.
paymentMethodobjectrequired
paymentMethod
shopperEmailstringoptional
The shopper's email address. Maximum 300 characters.
shopperIPstringoptional
The shopper's IP address. Maximum 15 characters.
shopperReferencestringoptional
The shopper's reference identifier. Maximum 256 characters.

6 status codes
200Returns a validation result containing the reason and a `result` value of VALID, INVALID, UNKNOWN, or NOT_REQUIRED.
reasonstringoptional
Reason for the result.
resultstringoptional
Result of the validation. Ex: valid, invalid, unknown
Allowed:VALIDINVALIDUNKNOWNNOT_REQUIRED
400Returned when the request cannot be read or understood.
errorCodestringrequired
errorTypestringrequired
messagestringrequired
pspReferencestringoptional
statusintegeroptional
401Returned when authentication is required.
errorCodestringrequired
errorTypestringrequired
messagestringrequired
pspReferencestringoptional
statusintegeroptional
403Returned when the caller lacks permission to process the request.
errorCodestringrequired
errorTypestringrequired
messagestringrequired
pspReferencestringoptional
statusintegeroptional
422Returned when the request fails validation.
errorCodestringrequired
errorTypestringrequired
messagestringrequired
pspReferencestringoptional
statusintegeroptional
500Returned when the server cannot process the request.
errorCodestringrequired
errorTypestringrequired
messagestringrequired
pspReferencestringoptional
statusintegeroptional

Error handling

A 400 is returned when the request cannot be read or understood, a 401 when authentication is required, and a 403 when the caller lacks permission. A 422 is returned when request validation fails, and a 500 when the server cannot process the request. merchantAccount and paymentMethod are required, and paymentMethod.type must be payTo or upi_collect.