Sign in
An image of the Stripe logo
Create account
Sign in
Home
Payments
Business operations
Financial services
Developer tools
Security
All products
Home
Payments
Business operations
Home
Payments
Business operations
Financial services
Developer tools
Support
Overview
Overview
Get started
Collect payments then pay out
Enable other businesses to accept payments directly
Pay out money
Explore Connect
Onboard your accounts
Choose your account type
Standard
Express
Custom
Service agreement types
Account capabilities
Additional verifications
Update verified info
Accept payments
Create a charge
Create a payments page
Create payment links with Connect
Connect integration guide
Automatic payment methods
Set statement descriptors
Connect platforms using the Payment Methods API
Create subscriptions
Create invoices
Debit connected accounts
Pay out
Set bank and debit card payouts
Bank accounts
Manage payout schedule
Manual payouts
Payout reversals
Instant Payouts
Cross-border payouts
Crypto payouts
Manage funds
Add money to your platform balance
Account balance
Handle other currencies
Manage accounts
Best practices
Listen for updates
Dashboard account management
Platform controls for Standard accounts
Make API calls for connected accounts
Set MCCs
Testing
Manage tax forms
Overview
Get started with tax reporting
Tax form settings
Calculation methods
File tax forms
File tax forms with states
Update tax forms
Deliver tax forms
Correct tax forms
Split tax forms
Tax year changeover
Testing
No-code options
connect
·
HomePaymentsMultiparty payments

Connect platforms using the Payment Methods API

Considerations for Stripe Connect platforms adding support for new payment methods using the Payment Methods API.

Connect platform owners can make use of additional payment methods supported with the Payment Methods API. To learn more about creating payments for connected users, and which approach is best for you, refer to our Connect payments and fees documentation.

You can use the Payment Methods API with Connect in a number of ways if you opt for direct charges.

Using the Payment Method API with direct charges

Direct charges require creating PaymentMethods on connected accounts. With any of these methods, you must first enable the payment method you intend to use on the connected account.

Create and attach a PaymentMethod when confirming a PaymentIntent

The recommended way to use the Payment Method API with Connect is to save the payment method details during Payment Intent confirmation. For more information about this process, see Save a card during payment.

With Stripe.js, initialize the Stripe object and set stripeAccount to the connected account’s ID and use the setup_future_usage option when confirming the PaymentIntent. This automatically saves the payment information to the customer for reuse with future charges with that connected account.

See PaymentIntents with Stripe.js for more details about confirming each type of payment method.

var stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
, { stripeAccount:
'{{CONNECTED_ACCOUNT_ID}}'
, }); stripe.confirmCardPayment('{{PAYMENT_INTENT_CLIENT_SECRET}}', { payment_method: { card: card, billing_details: { name: 'Jenny Rosen' } }, setup_future_usage: 'off_session' }).then(function(result) { // Handle result.error or result.paymentMethod }

If you’re confirming PaymentIntents from the server, you can make use of authentication using the Stripe-Account header with any of our supported libraries. See Confirm a PaymentIntent for additional details.

Creating PaymentMethods directly on the connected account

You may also create a PaymentMethod directly on a connected account with createPaymentMethod. With Stripe.js, initialize the Stripe object and set stripeAccount to the connected account’s ID.

// Set the connected Stripe Account on which the PaymentMethod should be created var stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
, { stripeAccount:
'{{CONNECTED_ACCOUNT_ID}}'
, }); stripe.createPaymentMethod({ type: 'card', card: cardElement, billing_details: { name: 'Jenny Rosen', }, }).then(function(result) { // Handle result.error or result.paymentMethod });

If you’re creating PaymentMethods from the server, you can make use of authentication using the Stripe-Account header with any of our supported libraries.

Cloning PaymentMethods

You can also create PaymentMethods on your platform and clone them to a connected account to create direct charges there. Cloning supports PaymentMethods of card type only.

After you create a PaymentMethod and attach it to a Customer, you can clone that PaymentMethod on a connected account using the connected account’s ID as the Stripe-Account header. Read more about the Payment Methods API.

Terminal
curl https://api.stripe.com/v1/payment_methods \ -u
sk_test_4eC39HqLyjWDarjtT1zdp7dc
: \ -d customer=
"{{CUSTOMER_ID}}"
\ -d payment_method=
"{{PAYMENT_METHOD_ID}}"
\ -H "Stripe-Account:
"{{CONNECTED_ACCOUNT_ID}}"
"

If you want to reuse PaymentMethods on a connected account, attach them to Customers before using them with PaymentIntents to create charges. You must provide the Customer ID in the request when cloning PaymentMethods that are attached to Customers for security purposes.

It is possible to clone PaymentMethods to connected accounts without previously attaching them to Customers. However, note that the original PaymentMethod will be consumed, since PaymentMethods that aren’t attached to Customers can only be used once.

See also

  • Payment Methods API overview
  • Stripe.js Payment Intents
Was this page helpful?
Questions? Contact us.
View developer tutorials on YouTube.
Check out our product changelog.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
Stripe Shell
Test mode
▗▄ ▄▟█ █▀▀ ▗▟████▙▖ ██████ ███▗▟█ ███ ███▗▟██▙▖ ▗▟█████▙▖ ███▖ ▀▀ ███ ███▀▀▀ ███ ███▀ ███ ███ ███ ▝▜████▙▖ ███ ███ ███ ███ ███ █████████ ▄▄ ▝███ ███ ▄ ███ ███ ███▄ ███ ███ ▄▄ ▝▜████▛▘ ▝▜███▛ ███ ███ ███▝▜██▛▘ ▝▜█████▛▘ ███ ▀▘
Welcome to the Stripe Shell! This is a graphical user interface of the Stripe CLI. You can use it to discover webhook events and manage your Stripe resources. By pressing ctrl + ` you can toggle it open from any page within the Stripe documentation. - View supported commands: - Listen for webhook events: - Trigger webhook events: - Call Stripe APIs: stripe [api resource] [api operation] (e.g. )
The Stripe Shell is best experienced on desktop.
$