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
Overview
About Stripe payments
Upgrade your integration
Payments analytics
Online payments
OverviewFind your use caseManaged Payments
Use Payment Links
Build a checkout page
Build an advanced integration
Build an in-app integration
Payment methods
Add payment methods
    Overview
    Payment method integration options
    Manage default payment methods in the Dashboard
    Payment method types
    Cards
    Pay with Stripe balance
    Bank debits
    Bank redirects
    Bank transfers
      Accept a payment
      Customer balance
        Reconciliation
        Funding instructions
        Virtual bank account numbers
        Migrating from ACH Credit Transfer Sources
          Migrate with Invoicing or Billing
          Migrate from the Sources API
          Migrate your Standard Connect integration
          Automatic migration to Bank Transfers
      Refunds
    Credit transfers (Sources)
    Buy now, pay later
    Real-time payments
    Vouchers
    Wallets
    Enable local payment methods by country
    Custom payment methods
Manage payment methods
Faster checkout with Link
Payment interfaces
Payment Links
Checkout
Web Elements
In-app Elements
Payment scenarios
Custom payment flows
Flexible acquiring
Orchestration
In-person payments
Terminal
Other Stripe products
Financial Connections
Crypto
Climate
HomePaymentsAdd payment methodsBank transfersCustomer balanceMigrating from ACH Credit Transfer Sources

Migrate to USD bank transfers from a Direct Integration using the Sources or Charges API

Learn how to migrate your Sources API integration to USD Bank Transfers.

Copy page

Warning

We deprecated the Sources API and plan to remove support for local payment methods. If you currently integrate with ACH Credit Transfers, you must migrate to the Payment Methods API.

For information about migrating to USD Bank Transfer supported by the current APIs, refer to the documentation below.

See Migrating from Sources-based Credit Transfers if you want to learn about the reasons to migrate.

Before you begin

Confirm if you’re currently using the legacy ACH Credit Transfers product:

  • Navigate to the list of payment methods in your Payment Method settings, and click the Eligible tab. If you don’t see ACH Credit Transfers in this list, you’re not using the ACH Credit Transfer product.
  • If ACH Credit Transfers is displayed in the list of available payment methods, check to see if you pass the ach_credit_transfer payment method type when integrating with the Sources API. If you’re not passing this payment method type, you’re not using the ACH Credit Transfer product.

If you’re not using ACH Credit Transfers with the Sources or Charges API, you can skip this guide because it doesn’t apply to you.

Activate USD bank transfers

To turn on bank transfer payments, navigate to your Payment methods settings.

OptionalTest bank transfers with an individual customer

Before you migrate, you can test bank transfers:

  1. Create a test customer with a Credit Transfer source attached. Complete the steps in the integration guide of ACH Credit Transfer. Save the bank details of the Source from the ach_credit_transfer field of the object to refer to later.
  2. Build the new Bank Transfers integration on Payment Intents by following the Accept a Payment guide with the test customer you created above. Your integration now supports Bank Transfers on Payment Intents, while still supporting the existing implementation on Sources.
  3. After you test and confirm that the integration works, confirm if the bank details of the Credit Transfer Source have been migrated. Navigate to the customer details page in the Dashboard, and then expand Cash balance.
  4. Click View balance details to find the funding instructions of the customer and confirm that they match the bank details of the Credit Transfer Source. You can also use the Funding Instructions API to get the funding instructions.

Drop the legacy integration

After you verify that the migration works for individual customers in both the sandbox environment and in live mode, remove your Sources or Charges API integration. You can now rely entirely on the Bank Transfers integration on Payment Intents.

Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access program.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc