# Use Accounts as customers Accept payments from Accounts configured as customers. With Accounts v2, you can use an Account object similarly to a Customer object by assigning it the [customer configuration](https://docs.stripe.com/api/v2/core/accounts/create.md#v2_create_accounts-configuration-customer). ```curl curl -X POST https://api.stripe.com/v2/core/accounts \ -H "Authorization: Bearer <>" \ -H "Stripe-Version: 2025-11-17.preview" \ --json '{ "contact_email": "jenny.rosen@example.com", "display_name": "Jenny Rosen", "identity": { "country": "us", "individual": { "given_name": "Jenny Rosen" } }, "configuration": { "customer": { "capabilities": { "automatic_indirect_tax": { "requested": true } } } }, "include": [ "configuration.customer", "identity" ] }' ``` When you use Accounts v2, your Stripe-hosted integrations, such as Checkout, create Accounts with the `customer` configuration. If your code references Customers, we recommend that you update it to reference customer-configured Accounts instead. | Purpose | v1 reference | v2 reference | | ----------------------- | ------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Customer reference | `customer` | `customer_account` | | Customer identification | `cus_xxxxx` | `acct_xxxxx` | | Set billing address | [address](https://docs.stripe.com/api/customers/create.md#create_customer-address) | - [identity.individual.address](https://docs.stripe.com/api/v2/core/accounts/create.md#v2_create_accounts-identity-individual-address) if the entity type is `individual`. - [identity.business_details.address](https://docs.stripe.com/api/v2/core/accounts/create.md#v2_create_accounts-identity-business_details-address) if the entity type is any type other than `individual`. | | Set shipping address | [shipping](https://docs.stripe.com/api/customers/create.md#create_customer-shipping) | [configuration.customer.shipping](https://docs.stripe.com/api/v2/core/accounts/create.md#v2_create_accounts-configuration-customer-shipping) | ## Provide an Account as the customer API requests such as `Subscriptions` and `SetupIntents` require you to specify a customer. These requests accept either the `customer` or `customer_account` parameter. The following sample shows a subscription that specifies the customer by passing an Accounts v2 object as the `customer_account`. ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -H "Stripe-Version: 2025-04-30.preview" \ -d customer_account=acct_xxxxx \ -d "items[0][price]=price_CBb6IXqvTLXp3f" \ -d "items[0][quantity]=5" ``` ## Reference Accounts in Customers v1 integrations A request that specifies `customer_account` returns both `customer` and `customer_account` properties, with correspondingly formatted values. This maintains compatibility with existing Billing and Payments integrations. ```javascript { "id": "sub_1Mow234", . . . "customer": "cus_xxxxx", "customer_account": "acct_xxxxx" } ``` You can also retrieve or update customer-configured Accounts using the `/v1/customers` endpoint. ```curl curl -X POST https://api.stripe.com/v1/customers/acct_1234 \ -u "<>:" ``` ## Accounts v2 webhooks Webhooks for Accounts v2 send [thin events](https://docs.stripe.com/event-destinations.md#thin-events). | Action | v1 event | v2 event | | ----------------------- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Customer created | `customer.created` | Accounts v2 sends separate events indicating the account creation and the customer configuration: - `v2.core.account.created` - `v2.core.account[configuration.customer].updated` | | Billing address updated | `customer.updated` | `v2.core.account[identity].updated` | | Subscription actions | `customer.subscription.[action]` | None; use the v1 event | | Customer deleted | `customer.deleted` | `v2.core.account.closed` | ## Customer invoice properties | Data value | Customers v1 property | Accounts v2 property | | ------------------------- | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Customer stored credit | `invoice_credit_balance` | None; see [Reference an Accounts v2 ID in a /v1/customers path](https://docs.stripe.com/connect/use-accounts-as-customers.md#reference-accounts-v2-in-v1-customers-path) | | Customer invoice prefix | `invoice_prefix` | [configuration.customer.billing.invoice.prefix](https://docs.stripe.com/api/v2/core/accounts/create.md#v2_create_accounts-configuration-customer-billing-invoice-prefix) | | Custom settings | `invoice_settings.custom_fields` | [configuration.customer.billing.invoice.custom_fields](https://docs.stripe.com/api/v2/core/accounts/create.md#v2_create_accounts-configuration-customer-billing-invoice-custom_fields) | | Default payment method | `invoice_settings.default_payment_method` | [configuration.customer.billing.default_payment_method](https://docs.stripe.com/api/v2/core/accounts/update.md#v2_update_accounts-response-configuration-customer-billing-default_payment_method) | | Invoice footer | `invoice_settings.footer` | [configuration.customer.billing.invoice.footer](https://docs.stripe.com/api/v2/core/accounts/create.md#v2_create_accounts-configuration-customer-billing-invoice-footer) | | Invoice rendering options | `invoice_settings.rendering_options` | [configuration.customer.billing.invoice.rendering.template](https://docs.stripe.com/api/v2/core/accounts/object.md#v2_account_object-configuration-customer-billing-invoice-rendering-template) | ## Reference an Accounts v2 ID using the v1 Customers endpoint Accounts v2 doesn’t have endpoints for every customer function. To perform the following actions for an Accounts v2 object, use the `v1/customers` endpoint and pass the `Account` ID (`acct_xxxxx`) as the path parameter. | Use case | v1 endpoint with account ID | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Manage cash balances | - `v1/customers/acct_xxxxx/cash_balances` - `v1/customers/acct_xxxxx/cash_balances/:id` | | Manage cash balance transactions | - `GET v1/customers/acct_xxxxx/cash_balance_transactions` - `GET v1/customers/acct_xxxxx/cash_balance_transactions/:id` - `POST v1/test_helpers/customers/acct_xxxxx/fund_cash_balance` - `POST v1/customers/acct_xxxxx/funding_instructions` - `GET v1/customers/acct_xxxxx/funding_instructions` | | Manage invoice credit balance For Accounts v2, the [ending_balance](https://docs.stripe.com/api/invoices/object.md?api-version=preview#invoice_object-ending_balance) of the account’s most recently finalized invoice is the equivalent of the `invoice_credit_balance` for v1 customers. | - `POST v1/customers/acct_xxxxx/balance_transactions` - `POST v1/customers/acct_xxxxx/balance_transactions/:id` - `GET v1/customers/acct_xxxxx/balance_transactions/:id` - `GET v1/customers/acct_xxxxx/balance_transactions` |