Sign in
An image of the Stripe logo
Create account
Sign in
Home
Payments
Business operations
Financial services
Developer tools
No-code
All products
Home
Payments
Business operations
Home
Payments
Business operations
Financial services
Developer tools
Overview
Online payments
Products and prices
Invoicing
Subscriptions
Quotes
In-person payments
Multiparty payments
After the payment
Add payment methods
    Overview
    Payment method integration options
    Bank debits
      ACH Direct Debit
      Bacs Direct Debit
      Pre-authorized debit in Canada
      BECS Direct Debit in Australia
      SEPA Direct Debit
        Accept a payment
        Save bank details
    Bank redirects
    Bank transfers
    Buy now, pay later
    Credit transfers (Sources)
    Real-time payments
    Vouchers
    Wallets
Payment Links
Stripe Checkout
Stripe Elements
About the APIs
Regulation support
Implementation guides
Testing
HomePaymentsBank debits

SEPA Direct Debit payments

Learn about Single Euro Payments Area (SEPA) Direct Debit, a common payment method in the European Union.

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. During the payment flow, 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 reusable, delayed notification payment method. This means that it can take up to 14 business days to receive notification on the success or failure of a payment after you initiate a debit from the customer’s account, though the average is five business days.

  • Customer locations

    Europe

  • Payment method family

    Bank debit

  • Connect support

    Yes

  • Presentment currency

    EUR

  • Recurring Payments

    Yes

  • Dispute support

    Yes

  • Payment confirmation

    Business-initiated

  • Payout timing

    3-6 days

  • Refunds/ Partial refunds

    Yes/yes

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

Preview SEPA payment flow

Get started

We recommend you use Checkout or the Payment Element so you can automatically add SEPA Direct Debit and other payment methods from the Stripe Dashboard, without changing your code. Stripe then determines the list of supported payment methods to show each customer by evaluating the currency, payment method restrictions, and other parameters.

The following Stripe products also support adding SEPA Direct Debit from the Dashboard:

  • Invoicing
  • Payment Links
  • Subscriptions

If you prefer to manually list payment methods or want to save SEPA Direct Debit details for future payments, see the following guides:

  • Manually configure SEPA Direct Debit as a payment
  • Save SEPA Direct Debit details for future payments

Debit notification emails

The SEPA Direct Debit rulebook requires that you notify your customer each time you debit their account. For this case, by default, Stripe automatically sends the customer an email.

When processing SEPA Direct Debit payments using the Stripe Creditor ID, debit notification emails are always sent automatically by Stripe.

If you decide to send your customer a custom notification:

  • Turn off Stripe emails in the Stripe Dashboard email settings. However, if you use the Sources API, you can only control emails using mandate.notification_method (for more information, see notifying customers of recurring payments).
  • Use the payment_intent.processing event to trigger debit initiation emails.
  • The email 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 (for example, a subscription of a fixed amount), you may indicate multiple upcoming debits with corresponding dates in a single notice.

Creditor Identifiers (Creditor ID)

A SEPA Creditor Identifier (Creditor ID) is an ID associated with each SEPA Direct Debit payment that identifies the company requesting the payment. While companies may have multiple creditor identifiers, each creditor identifier is unique and allows your customers to easily identify the debits on their account.

By default your Stripe account is configured to use a Stripe Creditor ID when collecting SEPA Direct Debit Payments. Stripe Payments will appear on bank statements alongside your configurable Stripe statement descriptor. We recommend configuring a recognizable statement descriptor to ensure customers recognize payments and to reduce the risk of disputes. If you’re using the Stripe Creditor ID, we also recommend you use Stripe Checkout to collect mandates from your customers for SEPA Direct Debits.

If you’re based in the EU, Stripe recommends that you use your own Creditor ID to both reduce dispute rates and improve your customer experience. You can configure your own Creditor ID on the Payment Method Settings page. When using your own Creditor ID your name will appear on statements instead of Stripe’s and you can use the Stripe statement descriptor for per-payment customization.

After you’ve collected live SEPA Direct Debit payments on your account, you can’t change your Creditor ID in the dashboard. If you need help with this issue, contact Stripe support for information about migrating to a new Creditor ID.

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 (for example, 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 charge.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 CurrencyDispute Fee
BGNлв15.00
CHF10.00 Fr
CZK200 Kč
DKK75.00-kr.
EUR€7.50
GBP£7.00
NOK75.00-kr.
PLN33.50 zł
RONlei36.50
SEK75.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.

If a payment is disputed, and that payment is associated with a multi-use mandate, that mandate could be deactivated. Make sure to check the status of such mandates after a dispute. You have to recollect mandate acceptance from the customers if previous mandate is deactivated.

Payouts

SEPA Direct Debit payments are subject to a 5 business day payout timing if your current payout timing is less than 5 business days or 7 calendar days. When you reach 35,000 USD of SEPA Direct Debit processing volume, payout timing for SEPA Direct Debit payments returns to normal.

Refunds

Customers can dispute a payment with their bank even after it has been refunded, resulting in two credits for the same payment. To prevent fraud, refunds may be disabled upon first refund attempt until your account has been reviewed. The review can take up to 2 business days. If you need assistance processing a refund please contact us via support.stripe.com/contact for further information.

For accounts with refunds enabled, Stripe recommends issuing refunds on SEPA Direct Debit payments only when:

  • It is a trusted and verified customer
  • You have confirmed with the customer that you’re refunding the payment
  • 7 business days have passed since you initiated the payment

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.

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.

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?
Questions? Contact Sales.
Need help? Contact Support.
Watch our developer tutorials.
Check out our product changelog.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
On this page
Payment flow
Get started
Debit notification emails
Creditor Identifiers (Creditor ID)
Disputed payments
Payouts
Refunds
Stripe Shell
Test mode
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Login to your Stripe account and press Control + Backtick on your keyboard to start managing your Stripe resources in test mode. - View supported Stripe commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g. )
The Stripe Shell is best experienced on desktop.
$