Setup

Please follow the common Adyen instructions to get set up with SEPA.

Next, make sure to enable SEPA as a payment method on your configured account.

Usage

To create a SEPA payment, set the method to sepa when calling our transaction API.

{
    "amount": 1800,
    "currency": "EUR",
    "country": "DE",
    "intent": "capture",
    "payment_method": {
        "method": "sepa",
        "country": "DE",
        "currency": "EUR",
        "redirect_url": "https://example.com"
    }
}

Recurring payments

SEPA via Adyen supports recurring payments. To process a recurring payment, please be aware of the following limitations when storing a SEPA payment method for future use.

  • To store a SEPA payment for future use, set store: true on the transaction request.
  • When stored, a SEPA payment method is initially in a processing state until we receive a webhook from Adyen. You will need to set up the Adyen RECURRING_CONTRACT webhooks for us to receive this update.
  • A stored SEPA payment method in a processing state can not be used in Embed until it is ready and marked as succeeded

Once a SEPA payment method is successfully stored, you can use it to create a subsequent payment.

{
    "amount": 1800,
    "currency": "EUR",
    "country": "DE",
    "intent": "capture",
    "payment_method": {
        "method": "id",
        "id": "f758d736-9a81-4bd0-85a9-2d3ee361b863"
    },
    "is_subsequent_payment": true,
    "merchant_initiated": true,
    "payment_source": "recurring"
}

When processing a recurring payment please note the following.

  • SEPA supports the payment_source of recurring and instalment, which will map to Subscription on the Adyen API. In all other scenarios it will set the recurring processing mode as UnscheduledCardOnFile.
  • Until the first transaction is settled, a stored SEPA payment will use a different mandate for the subsequent request. In a production environment, this might lead to a subsequent payment failing if the original mandate has not been fully settled yet.

Testing

In a test environment, you can simulate an SEPA payment. Adyen has extensive instructions on how to help with this.