Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Developer tools
Get started
Payments
Finance automation
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
OverviewExplore all products
Start building
Start developing
Sample projects
About the APIs
Build with LLMs
Use Stripe without code
Set up Stripe
Create an account
Web Dashboard
Mobile Dashboard
Migrate to Stripe
    Migrate customer data
    Migrate payment data
      Import payment data
        Card data imports
        ACH data imports
        UK Bacs data imports
        SEPA data imports
        PADs/ACSS data imports
        AU BECS data imports
        Map payment data
        Upload supplementary data
      Export payment data
      Copy payment data
Manage fraud risk
Understand fraud
Radar fraud protection
Manage disputes
Verify identities
HomeGet startedMigrate to StripeMigrate payment dataImport payment data

Import Bacs data to Stripe

Learn how to import your Bacs data from your current payment processor to Stripe.

Copy page

Stripe users in the UK can accept Bacs Direct Debit payments from customers with a UK bank account. You can migrate your data from your current payment processor to your Stripe account using the Bacs bulk change process. We work with other payment processors and Bacs sponsor banks throughout the migration to securely migrate your Bacs data. A Bacs migration takes approximately 6 weeks to complete.

To export Bacs data from Stripe to another payment processor, see Export Bacs data from Stripe.

Before you begin

Before migrating, complete the following account setup:

  • Activate the Bacs Direct Debit payment method in the Stripe Dashboard.

  • Decide which Service User Number (SUN) to use:

    • Stripe shared SUN: A free SUN that uses Stripe’s name and branch on statements, payment sheets, and emails.
    • Custom SUN: For a monthly fee, you can subscribe to Custom Branding and use a custom SUN to show your business name and brand on statements, payment sheets, and emails.
  • Collect the following details required for the migration request form:

    • Bacs SUN with current processor
    • Your preference for shared or custom SUN on Stripe
    • The number of mandates you’re migrating to Stripe
    • Whether you’re requesting migration on behalf of a connected account

Submit your Bacs import migration request

Start the migration process by submitting a data migration request:

  1. Navigate to the Stripe Support form for data migrations. If you’re not signed in, select Sign in and enter the credentials of the account that you want to migrate your data to.
  2. Select Import data from a third party into a Stripe account.
  3. Select Bacs as the data type you want to import.
  4. Complete the remaining fields and select Send email.

Within three days of receiving your request, our Data Migrations team emails you to request a signed bulk change deed.

Complete the bulk change deed

To complete the migration, your current Bacs processor must sign a bulk change deed. This agreement authorizes the transfer of your mandates from your current payment processor to Stripe.

Caution

Sign in to download the bulk change deed.

The following template highlights the requirements of a bulk change deed for an import of Bacs data to Stripe.

bulk change deed template with highlighted requirements

One of the following sets of representatives from your current processor must sign the bulk change deed:

  • Two current SUN owner directors
  • A director and a witness
  • A director and a company secretary

Directors and company secretaries need to be publicly identifiable through public data sources, such as Companies House. If you’re using a witness’s signature, cross out the Secretary/Director label as pictured in the template.

Complete only section 1.1 and the To be completed by the Current Service User section. Leave New Service User and New Sponsoring Bank sections blank and don’t date the document in section 3.3.

Marks on the document such as staples, staple holes, or other amendments invalidate the bulk change deed.

After completing the bulk change deed, reply to the intake form email thread from our Data Migrations team with a scan of it.

Coordinate your bulk change timeline

After we receive your bulk change deed, Stripe’s Data Migrations team works with you, your current payment processor, and our sponsor bank to agree on a bulk change date. On the bulk change date, Stripe imports your mandates and customers into your Stripe account.

We recommend scheduling your bulk change date at least 6 weeks from the date you submit the signed bulk change deed to us. The following process must complete in advance of the bulk change date:

  • Agreement between all parties on a bulk change date
  • Stripe completes a Notification of Change form
  • Review and approval of documents by Stripe and current sponsor banks
  • Advance notice sent to customers about the bulk change
  • Transfer of data to Stripe and preparation of the import

If you need to complete the migration in multiple phases, let us know in the support email thread. We’ll work with you to set different bulk change dates for each phase.

Send letters to payers

The Letter to Payers explains why you need the migration, how it affects payers, and the Direct Debit Guarantee.

Download the pre-approved Letter to Payers template. Inform us if you need to edit the Letter to Payers. Any modifications require a review by Stripe’s sponsor bank.

Caution

Sign in to download the Letter to Payers template.

You can decide how to deliver the Letter to Payers to your customers. Email, mail, and text message are all valid communication options. Not alerting payers to this change can result in failed payments and disputes.

Communication timing

Wait until after you receive final approval for the bulk change from the sponsor banks to send the Letter to Payers.

You must send the Letter to Payers in accordance with the Advance Notice Period in your current SUN. Contact your current processor to confirm your Advance Notice Period.

Your customer might see two active mandates in their banking portal for 1-3 business days while Stripe completes the import of your existing mandates.

Import Bacs mandates

After we receive bulk change approval from the sponsor banks, we coordinate with you and your current processor to transfer the relevant customer and mandate data.

Stripe reviews the data received from your current processor and identifies any problems with the import. We work with you and your current processor to correct any issues. We then share a summary of the import for your final review and approval.

Your current payment processor must cancel your existing mandates before we execute the import on the bulk change date. After cancellation:

  • You can’t charge your customers using your current processor.
  • We execute the mandate import on the bulk change date and email you a confirmation after completion.
  • We create a Customer with an associated BACS PaymentMethod for each unique customer in the transferred data file.

The following table shows the Bacs timeline in business days (T) from the bulk change date to the time you receive funds in your account:

T+0Migration complete and mandate submitted
T+3Mandate is active and the payment is submitted
T+5Funds leave the customer’s bank account
T+7Funds are available in Stripe

File formatting requirements

Export data files must meet the following data standards for us to proceed with an import:

  • The file must be in CSV format.
  • The file must be UTF-8 encoded.
  • Delimit rows by a single newline character \n (not \r\n).
  • Delimit columns by ,
  • You must wrap all fields containing commas in double quotes ". We recommend wrapping all fields in double quotes.
  • Leave empty fields entirely empty (no character in between delimiters). You must not denote a missing field with NULL, N/A, or any other value.
  • Escape any double quotes that are part of the content with another double quote per the CSV RFC. For example: "``William ""``Bard of Avon``"" Shakespeare``"
  • Fields can’t contain newline characters (\r or \n) within a field. Example of what to avoid: 101 1st Ave\nApt 1
  • All rows must have the same number of columns.
  • Columns support any order.
  • You must encrypt sensitive data files with our PGP key before submitting through SFTP.

Bacs data fields

FieldRequiredAdditional info
Old customer IDRequiredWe create a customer ID for each unique old customer ID provided.
NameRequiredMust include the first and last name of the person on the mandate.
Sort codeRequiredMust be 6 digits in length and include leading zeros.
Account numberRequiredMust be 8 digits in length and include leading zeros.
EmailRequiredStripe requires your customer’s email so we can send out notifications. Contact us if your customers don’t have email addresses.
Address line 1RequiredFirst line of the address for the customer’s Bacs mandate.
CityRequiredCity address for the customer’s Bacs mandate.
PostalRequiredZip code of the address for the customer’s Bacs mandate.
CountryRequiredMust be in the form of the ISO 2 letter country code.
PhoneOptionalPhone number of the account holder.
Address line 2OptionalSecondary details of the address for the customer’s Bacs mandate.
StateOptionalState of the address for the customer’s Bacs mandate.
DDI dateOptionalAdditional metadata (date the Bacs mandate was created).
Date of first collectionOptionalAdditional metadata (date the mandate was first charged).
Stripe customer IDOptionalStripe customer ID to map the mandates to if required.
Old source IDOptionalUnique representation of a payment method.
Customer/Bacs MetadataOptionalAny additional metadata.
Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access programme.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc