Sepa Direct Debit

Overview #

Accepting SEPA Direct Debit payments on your website consists of:

  1. Creating an object to track a payment;
  2. Collecting payment method information;
  3. Mandate acknowledgment;
  4. Submitting the payment to Stripe for processing.

WooshPay uses this payment object, the PaymentIntent, to track and handle all the states of the payment until the payment completes.

SEPA direct debit transactions have a limit of 1,000 EUR each.

image.png

Integration Method #

Checkout #

Determine compatibility #

To support SEPA Direct Debit payments in Checkout, Prices for all line items must be expressed in Euro (currency code eur).

Available country codes
EU countriesAT, BE, BG, HR, CY, CZ, DK, EE, FI, FR, DE, GR, HU, IE, IT, LV, LT, LU, MT, NL, PL, PT, RO, SK, SI, ES, SE
EEA CountriesIS, LI, NO
Countries that have bilateral agreements with EUAD, SM, MC, VA
Other SEPA-supporting countries (supported EUR-denominated accounts only)PF, TF, GI, GG, IM, JE, BL, PM, CH, GB, WF
———————–
Supported currencieseur
Presentment currencieseur

Accept a payment #

Use this guide to learn how to enable SEPA Direct Debit—it shows the differences between accepting a card payment and using SEPA Direct Debit.

Enable SEPA Direct Debit as a payment method
When creating a new Checkout Session, you need to:

  1. Add sepa_debit to the list of payment_method_types.
  2. Make sure all your line_items use the eur currency.

Integration Method #

Server to Server #

Create a PaymentIntent #

A PaymentIntent is an object that represents your intent to collect payment from a customer and tracks the lifecycle of the payment process through each stage.
First, create a PaymentIntent on your server and specify the amount to collect and the eur currency (SEPA Direct Debit does not support other currencies).
If you already have an integration using the Payment Intents API, add sepa_debit to the list of payment method types for your PaymentIntent.

Request

{
    "amount": 2000,
    "currency": "EUR",
    "confirm": true,
    "payment_method_options": {
        "sepa": {
            "iban": "DE12500105170648489890"
        }
    },
    "payment_method_data": {
        "type": "sepa",
        "billing_details": {
            "address": {
                "country": "DE"
            },
            "email": "john.doe@fake.id",
            "name": "John Doe"
        }
    },
    "return_url": "https://wooshpay.com"
}

Test your integration #

Wooshpay provides test numbers you can use to make sure your integration is ready for production.

Use the SEPA Direct Debit test numbers when testing your Checkout integration with SEPA Direct Debit.

Test IBAN: DE12500105170648489890

What are your feelings
Updated on August 8, 2023