# Create an Account Token

Creates an Account Token.

## Request

```curl
curl -X POST https://api.stripe.com/v2/core/account_tokens \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-01-28.clover" \
  --json '{
    "contact_email": "furever@example.com",
    "display_name": "Furever",
    "identity": {
        "attestations": {
            "terms_of_service": {
                "account": {
                    "shown_and_accepted": true
                }
            }
        },
        "entity_type": "company",
        "business_details": {
            "registered_name": "Furever"
        }
    }
  }'
```

### Response

```json
{
  "id": "accttok_61RS0CgWt1xBt8M1Q16RS0Cg0WSQO5ZXUVpZxZ9tAIbY",
  "object": "v2.core.account_token",
  "created": "2025-11-17T14:00:00.000Z",
  "expires_at": "2025-11-17T14:10:00.000Z",
  "livemode": true,
  "used": false
}
```

## Parameters

- `contact_email` (string, optional)
  The default contact email address for the Account. Required when configuring the account as a merchant or recipient.

- `contact_phone` (string, optional)
  The default contact phone for the Account.

- `display_name` (string, optional)
  A descriptive name for the Account. This name will be surfaced in the Stripe Dashboard and on any invoices sent to the Account.

- [`identity`](https://docs.stripe.com/api/v2/core/account-tokens/create.md?query=identity) (object, optional)
  Information about the company, individual, and business represented by the Account.

## Returns

## Response attributes

- `id` (string)
  Unique identifier for the token.

- `object` (string, value is "v2.core.account_token")
  String representing the object’s type. Objects of the same type share the same value of the object field.

- `created` (timestamp)
  Time at which the token was created. Represented as a RFC 3339 date & time UTC value in millisecond precision, for example: 2022-09-18T13:22:18.123Z.

- `expires_at` (timestamp)
  Time at which the token will expire.

- `livemode` (boolean)
  Has the value `true` if the token exists in live mode or the value `false` if the object exists in test mode.

- `used` (boolean)
  Determines if the token has already been used (tokens can only be used once).

## Error Codes

| HTTP status code | Code | Description |
| --- | --- | --- |
| 400 | token_must_be_created_with_publishable_key | Token must be created with publishable key. |
| 429 | account_rate_limit_exceeded | Account cannot exceed a configured concurrency rate limit on updates. |
