SEPA Direct Debit payments

    Learn how to accept payments with Single Euro Payments Area (SEPA) Direct Debit.

    Overview

    The Single Euro Payments Area (SEPA) is an initiative of the European Union to simplify payments within and across member countries. They established and enforced banking standards to allow for the direct debiting of every EUR-denominated bank account within the SEPA region.

    In order to debit an account, businesses must collect their customer’s name and bank account number in IBAN format. As part of their payment confirmation, customers must accept a mandate that gives the business an authorization to debit the account. Stripe is able to generate this mandate for businesses to present to their customers.

    SEPA Direct Debit is a pull-based, reusable, and asynchronous payment method. This means that it can take up to 14 business days to confirm the success or failure of a payment after you initiate a debit from the customer’s account, though the average is five business days.

    Payment flow

    Customer selects SEPA Direct Debit at checkout

    Customer provides full name, IBAN, and authorizes mandate

    Customer gets notification that the payment is complete

    Preview the payment flow using the test information below or view the sample code on GitHub.

    • Any name
    • Any email address
    • Test account number: DE89370400440532013000

    Getting started

    Get started with accepting SEPA Direct Debit payments or saving SEPA payment details for future payments.

    If you’re using the Sources API, see SEPA Direct Debit Payments with Sources.

    Debit notification emails

    The SEPA Direct Debit rulebook requires that you notify your customer each time you debit their account.

    By default, Stripe will automatically send the customer a standard email notifying them that you have initiated a debit. If you would like to send custom notification emails, you can turn off Stripe emails in the Stripe Dashboard email settings by turning off the Direct debits button.

    If you decide to send your customers a custom notification, it must include:

    • The last 4 digits of the debtor’s bank account
    • The mandate reference (sepa_debit[reference] on the Mandate)
    • The amount to be debited
    • Your SEPA creditor identifier
    • Your contact information

    It’s standard to send notifications at least 14 calendar days before you create a payment. However, SEPA rules let you send notifications closer to the payment date—just make sure your mandate clearly states when customers can expect to receive a notification. The mandate provided by Stripe specifies this can happen up to two calendar days in advance of future payments, allowing you to send notifications at payment creation. For recurring payments of the same amount (e.g., a subscription of a fixed amount), you may indicate multiple upcoming debits with corresponding dates in a single notice.

    Disputed payments

    SEPA Direct Debit provides a dispute process for customers to dispute payments.

    Customers can dispute a payment through their bank on a “no questions asked” basis up to eight weeks after their account is debited. Any disputes within this period are automatically honored.

    After eight weeks and up to 13 months, a customer can only dispute a payment with their bank if the debit is considered unauthorized. If this occurs, we automatically provide the bank with the mandate that the customer approved. This does not guarantee cancellation of the dispute; the bank can still decide that the debit was unauthorized and the customer is entitled to a refund.

    A dispute can also occur if the bank is unable to debit the customer’s account because of an issue (e.g., the account is frozen or has insufficient funds), but has already provided the funds to make the charge successful. If this occurs, the bank reclaims the funds in the form of a dispute.

    When a dispute is created, a dispute.created webhook event is sent and Stripe deducts the dispute amount and dispute fee from your Stripe balance. The dispute fee varies based on your account’s default settlement currency:

    Settlement Currency Dispute Fee
    CHF 10.00 Fr
    DKK 75.00-kr.
    EUR €7.50
    GBP £7.00
    NOK 75.00-kr.
    SEK 75.00-kr.
    USD $10.00

    Unlike credit card disputes, SEPA Direct Debit disputes are final and there is no process for appeal. If a customer successfully disputes a payment, you must contact them if you want to resolve the situation. If you’re able to come to an arrangement and your customer is willing to return the funds to you, they must make a new payment.

    In general, each dispute includes the reason for its creation, but this varies from country to country. For example, disputed payments in Germany do not provide additional information for privacy reasons.

    Refunds

    Refunds for payments made with SEPA Direct Debit must be submitted within 180 days from the date of the original payment. Refunds require additional time to process (typically three to four business days). If you accidentally debit your customer, please contact them immediately to avoid a payment dispute.

    Refunds are processed only after the payment process is complete. If you create a full or partial refund on a payment that has not yet completed, the refund is actioned when the Charge object’s status transitions to succeeded. If the Charge object’s status transitions to failed, the full or partial refund is marked as canceled because the money was never debited from the customer’s bank account.

    SEPA does not explicitly label refunds when the funds are deposited back to a customer’s bank account. Instead, refunds are processed as a credit and include a visible reference to the original payment’s statement descriptor.

    Due to longer settlement time periods and how banks process SEPA Direct Debit transactions, there is potential for confusion between you, your customer, your customer’s bank, and Stripe. For example, your customer may contact both you and their bank to dispute a payment. If you proactively issue your customer a refund while the customer’s bank also initiates the dispute process, your customer may receive two credits for the same transaction.

    When issuing a refund, you should inform your customer immediately that the refund can take up to five business days to arrive in their bank account.

    Was this page helpful?

    Feedback about this page?

    Thank you for helping improve Stripe's documentation. If you need help or have any questions, please consider contacting support.

    On this page