- Plaid Link—Customers link their bank account through Plaid, and the resulting token is used to process the payment. Adyen only processes Plaid-linked payments for ACH Direct Debit accounts.
- Bank account details—You provide the bank account details via the API. This flow supports ACH, SEPA, and BACS schemes. See Bank accounts for details.
Four Adyen connectors debit a buyer’s bank account. Pick the one that matches who collects the account:
- ACH Direct Debit (redirect): the buyer enters their account and routing numbers on Adyen’s page, and Adyen keeps them.
- SEPA (redirect): the buyer enters their IBAN on Adyen’s page, and Adyen keeps it.
- Pay by Bank (redirect): Adyen sends the buyer to Plaid to choose their bank. US only.
- Bank account (ACH, SEPA, BACS) (stored in Gr4vy): you send the bank account details or a Plaid-linked account, and Gr4vy stores the account. Use this connector to charge bank accounts that you import into Gr4vy.
Setup
Please follow the common Adyen instructions to get set up with Adyen. Next, make sure to enable the relevant bank payment methods (ACH, SEPA, or BACS) on your configured Adyen account. The following additional settings are available.- Force direct bank details—When enabled, the system skips attempting to exchange a Plaid processor token with Adyen and instead fetches raw bank details (account number, routing number, IBAN, or sort code) from Plaid directly. This saves an API call per payment and is useful when you prefer to always process with raw bank details. This setting has no effect on transactions that already use the direct
bankpayment method.
Prerequisites
To use bank payments via Adyen, you must have:- Adyen bank payments enabled: The relevant bank payment method (ACH, SEPA, or BACS) must be enabled in your Adyen account
- Plaid configured: For Plaid-linked payments, set up Plaid in your Gr4vy dashboard to handle bank account linking
Capabilities
Supported countries
Supported currencies
Billing details
Some schemes need billing details on the buyer or transaction. When a required field is missing, the transaction fails with themissing_billing_address error code.
- ACH: Include the billing address
state_codein ISO 3166-2 format, for exampleUS-UT. Gr4vy sends Adyen’s state or province fromstate_codeonly, not from the free-textstate. See Billing address. - SEPA: For an IBAN from a SEPA country outside the European Economic Area, such as
CHorGB, include a billing address withline1,house_number_or_name,postal_code,city, andcountry. - BACS: Include the buyer’s billing email address.
Limitations
Refunds
Partial refunds are not supported for unsettled bank transactions. If you need to refund a bank transaction before it has settled, you must refund the full transaction amount. Once a transaction has settled, partial refunds become available.Payment methods
This connector supports bank accounts linked through Plaid (ACH, SEPA, and BACS) and bank account details submitted via the API. See Bank accounts for that flow.Usage
You can create bank payments via Adyen using either Plaid Link or bank account details.Option 1: Plaid Link
First, use Plaid Link to securely connect the customer’s bank account. See the Plaid integration guide for detailed instructions on implementing Plaid Link. When the customer successfully links their account, you’ll receive apublicToken and account metadata from Plaid.
Use the publicToken from Plaid to create a transaction that is processed through the Adyen bank connector.
method- Set toplaidto indicate a Plaid-linked bank accounttoken- The public token received from Plaid Linkaccount_id- Optional. The specific account ID from Plaid metadata if the customer linked multiple accountspayment_service_id- The UUID of your Adyen bank connection (found in Gr4vy dashboard)
Option 2: Bank account details
Submit raw bank account details directly via the API. Setmethod to bank and scheme to the appropriate value (ach, sepa, or bacs).
The following example uses the ach scheme. For SEPA, replace the scheme with sepa and provide the IBAN as the account_number. For BACS, replace the scheme with bacs and provide the sort code as the routing_number.
Testing
In a test environment, you can use Plaid’s sandbox mode along with Adyen’s test environment:- Configure Plaid with sandbox credentials
- Use Plaid’s test credentials to link a test bank account
- Process test transactions through Adyen’s sandbox