Online-payment icon

Manage tokens

Learn how to manage tokens you stored with Adyen.

      Try it in our API Explorer.
  Postman collection

Implementation examples
  Java Spring
  .NET
  Node.js

You can use the Checkout API to:

List stored payment details

To see all the payment details stored for a shopper, make a POST /paymentMethods request including:

Parameter Description
merchantAccount Your merchant account name.
shopperReference Your unique identifier for the shopper.

The storedPaymentMethods array in the response includes:

Parameter Description
id The storedPaymentMethodId value that you need to make payments with the shopper's stored payment details.
recurringProcessingModel Defines the type of recurring payment that the stored payment details can be used for.

Store payment details

We recommend that you store payment details by making a zero-auth transaction, because a successful authorised result code indicates that the payment details were validated by the card scheme.

If you validated a shopper's payment details in a different way, you can store payment details without making a zero-auth transaction. Make a POST /storedPaymentMethods request including either encrypted or unencrypted payment details:

Parameter Required Description
merchantAccount -white_check_mark- Your merchant account.
shopperReference -white_check_mark- Your unique reference for the shopper. Minimum length: three characters. Do not include personally identifiable information (PII), such as name or email address.
paymentMethod.type -white_check_mark- The payment details to store.
paymentMethod.encryptedCardNumber -white_check_mark- The encrypted card number.
paymentMethod.encryptedExpiryMonth -white_check_mark- The encrypted card expiry month.
paymentMethod.encryptedExpiryYear -white_check_mark- The encrypted card expiry year.
paymentMethod.encryptedSecurityCode -white_check_mark- The encrypted card verification code.
paymentMethod.holderName -white_check_mark- The name of the card holder.
recurringProcessingModel -white_check_mark- Indicates the type of recurring payment the token is intended for. Required when creating a token to store payment details.
Allowed values:
- Subscription: a transaction for a fixed or variable amount, which follows a fixed schedule.
- CardOnFile: enables one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.
- UnscheduledCardOnFile: an unscheduled card-on-file transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.
shopperEmail The shopper's email address.
shopperIP The shopper's IP address.

For example, to store payment details for subscription payments:

You get a response that includes the token that you use to make recurring payments in the id field. For example:

If you store tokens on your server, store the id with the shopperReference.

Update stored details

You can update the following fields without changing the storedPaymentMethodId of the stored payment details:

Field Description
expiryMonth The expiry month.
expiryYear The expiry year.
holderName The cardholder's name.

If the shopper has a new card number, make a /payments request to store new payment details and receive a new identifier.

To update the expiryMonth, expiryYear, or holderName, make a /payments request including:

Parameter Description
amount.value 0
storedPaymentMethodId The token with the stored payment details.
shopperReference Your unique identifier for the shopper.
merchantAccount Your merchant account name.
shopperInteraction Defines the type of shopper interaction that the stored payment details can be used for.

Also include at least one of the fields you want to update:

Parameter Description
expiryMonth The expiry month.
expiryYear The expiry year.
holderName The cardholder's name.

For example, to update the cardholder name, make a /payments request including the required fields and paymentMethod.holderName:

Updates from card networks

Card networks (for example, Visa and Mastercard) also send updates to your shopper's payment details. The way these updates are handled depends on the Account Updater service you use.

  • If you are using our Real Time Account Updater, you do not have to do anything to handle the updates from the card networks. The card details are automatically updated, and the token remains unchanged.
  • If you are using our Batch Account Updater, then you will receive the updated card details in a batch result file. You then need to make a zero-value transaction with the updated card details.

Disable stored payment details

You can delete a single token by its identifier, which is returned when you create a token. Alternatively, to find all tokens for a given shopper, you can list stored payment details and get the id from the relevant item in the storedPaymentMethods array.

To delete the token, make a DELETE /storedPaymentMethods request including the following parameters:

Parameter name Parameter type Description
recurringDetailReference Path parameter The token you want to delete.
merchantAccount Query parameter Your merchant account name.
shopperReference Query parameter Your unique identifier for the shopper.

After you delete payment details stored with Adyen, you must also delete any remaining shopper details from your servers.

See also