Stripe | Financial Infrastructure to Grow Your Revenue

Stripe | Financial Infrastructure to Grow Your Revenue

4466 articles

Connect and the Accounts v2 API


Connect and the Accounts v2 API

Create connected accounts with a unified identity across Stripe.

As a Connect platform, you represent your connected accounts with Account objects. There are two versions of Accounts:

  • v2 : Highly configurable and extendable support for payments to and by connected accounts, funds transfers, and other functionality
  • v1 : Limited support for connected accounts and payments

v2 Accounts use configurations to enable different sets of functionality. For example, adding the merchant configuration to a v2 Account enables it to receive payments. If you want to extend an existing connected account’s functionality, you can add more configurations to it.

v1 Accounts don’t have configurations. You can only use them to manage payments for connected accounts.

Certain features don’t yet directly support v2 Accounts. However, you can still pass the ID of a v2 Account to an Accounts v1 API endpoint. When you do so, the response is structured as a v1 Account, but any updates still apply to the corresponding properties of the v2 object.

Use the Accounts v2 API to represent connected accounts

The Accounts v2 API provides:

  • Flexible account configurations : Enable or change an Account ’s capabilities and compatibility with Stripe features by updating its configurations. Each capability belongs to a particular configuration.
  • Centralized identity data : When you add a configuration to an existing Account to enable additional functionality, you don’t have to re-collect requirements that they already provided.
  • A single API for connected accounts and customers : In most cases, you can represent any customer with an Account object. That lets you use the Accounts v2 API to manage both connected accounts and customers. You don’t have to use the Customers API at all.

The most common configurations include the following:

  • The merchant configuration allows an Account to accept payments from customers. It includes the card _ payments and stripe _ balance. payouts (replacing v1 payouts ) capabilities.
  • The customer configuration lets your platform charge an Account as a customer. You can use it instead of a Customer object when creating a subscription or invoice.
  • The recipient configuration allows an Account to receive funds transfers. It includes the stripe _ balance. stripe _ transfers (replacing v1 transfers ) capability, which is required to use indirect charges.

The following example creates an Account using API v2. Notice that its structure differs from the structure of an Account object in API v1.

API v2 response structure

By default, Accounts v2 API calls return values for certain properties and null for other properties, regardless of their actual values. To retrieve additional property values, request them using the include parameter.

Command Line

Select a language

cURL

Stripe CLI

Ruby

Python

PHP

Java

Node.js

Go

.NET

No results

Specifying requirements in the include array returns any default requirements that apply to the new Account.

Use Accounts as customers

Any API request with a customer parameter that accepts a Customer ID also has a customer_account parameter that accepts an Account ID. You can use it to provide the ID of a v2 Account that has the customer configuration instead of providing the ID of a Customer. For example:

Command Line

Select a language

cURL

Stripe CLI

Ruby

Python

PHP

Java

Node.js

Go

.NET

No results

If you use the Accounts v1 API, you can’t pass an Account ID to an endpoint that expects a Customer ID. If you want to charge your connected accounts using subscriptions, you have to create and manage separate Customer objects for them.

Learn more about using Accounts as customers.

Existing Connect platforms using Accounts v1 and Customers v1

You can use the Accounts v2 API to manage Accounts created using the Accounts v1 API, including assigning them the customer configuration.

Stripe discourages indefinitely maintaining both Accounts API versions simultaneously.

Accounts API v2 limitations

You must use Accounts v1 in the following cases:

Cross-border payouts

Use Global payouts to send cross-border payouts.

Last verified 2026-09-24

Is this helpful?