This page explains how to manage bank account details for third-party payouts. It covers how to securely store bank account details, allowing you to process bank account transfers efficiently.
Tokenization for payouts
Adyen's tokenization service lets you process payouts to your counterparties using tokenized bank account details. A token is a unique reference for a third party's bank account details, which helps you minimize security risks, simplify data management, and streamline recurring payouts to known recipients.
Requirements
Before you begin, take into account the following requirements, limitations, and preparations.
Requirement | Description |
---|---|
Integration type | An Adyen payout service integration and our Checkout API for tokenization. |
API credentials | Your company (ws@Company.[YourCompanyAccount]) has the following role to use with the Checkout API:
|
Webhooks | Your server must be able to receive and accept webhooks. |
Limitations | Take the following limitations into account:
|
Setup steps | Reach out to your Adyen contact to enable the feature on your account. |
Supported countries/regions
Adyen currently supports payouts to tokenized local bank account details in the following regions:
Europe |
---|
IBANs (SEPA Direct Debit)
UK Local (BACS)
North America |
---|
US Local (ACH)
Store bank account details
To tokenize and store bank account details:
-
Make a POST /payments request, specifying the following parameters:
Request parameter Required Description amount.currency Set to the currency that is applicable to the bank account. amount.value Set to 0 (zero) to combine with a zero-auth payment. paymentMethod Set to one of the following: - sepadirectdebit: SEPA Direct Debit
- ukLocal: UK Local
- usLocal: US Local
billingAddress An object that contains the address details of the bank account. enablePayOut Set to true. merchantAccount The identifier of your merchant account. recurringProcessingModel Set to Subscription. reference Your unique reference to identify the payment request. returnUrl The return URL to redirect the bank account holder after the payment process. shopperReference Your unique reference to identify the bank account holder. storePaymentMethod Set to true. The following tab shows an example of a zero-auth payment request combined with creating a token for the bank account details.
The token is created after a successful payment authorization. This ensures that the payment details are linked to an active, chargeable account.
-
Find the token in the
storedPaymentMethodId
parameter. You can locate it in either of these places:- In the successful authorization response, under
additionalData.tokenization.storedPaymentMethodId
. - In the recurring.token.created webhook.
The following tab shows an example for an authorized payment response that includes the token.
- In the successful authorization response, under
-
In your system, store the following parameters together, so that the token is associated with the bank account holder:
additionalData.tokenization.shopperReference
additionalData.tokenization.storedPaymentMethodId
You must provide these values when making a bank account payout request.