> ## Documentation Index
> Fetch the complete documentation index at: https://docs.centryos.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Create End User Account (Person)

> Create an end-user (customer) account to represent your user in CentryOS.

## When to use

Create an end-user account after you have a valid `accessToken`. The returned `account.id` (entityId) is used to create wallets and payment links for that user.

## Endpoint

* `POST {{ACCOUNT_URL}}/v1/ext/account/create-user`
* Auth: Bearer `{{accessToken}}`

## Request

```bash theme={null}
curl -X POST "{{ACCOUNT_URL}}/v1/ext/account/create-user" \
  -H "Authorization: Bearer {{accessToken}}" \
  -H "Content-Type: application/json" \
  -d '{
    "firstName": "Tim",
    "lastName": "Makinde",
    "email": "makindetimi@gmail.com",
    "identifier": "user-98314",
    "type": "USER"
  }'
```

### Fields

| Field        | Type   | Description                 | Required |
| ------------ | ------ | --------------------------- | -------- |
| `firstName`  | string | End user first name         | Yes      |
| `lastName`   | string | End user last name          | Yes      |
| `email`      | string | End user email              | Yes      |
| `identifier` | string | Your unique user identifier | Yes      |
| `type`       | string | Must be `USER`              | Yes      |

## Success Response (200)

```json theme={null}
{
  "message": "User account created",
  "account": {
    "id": "NmFkZWQyYTYtMGY5Yy00YTVkLWJhYWYtNTZiMTVkMzg0ZTQ1"
  }
}
```

## Error (400 - Account Exists)

```json theme={null}
{
  "message": "An account with the given email already exists.",
  "fatal": true
}
```

## Next steps

* Save `account.id` as `entityId`.
* Create wallets for this user.
* Link payments (`externalId`) to this user in downstream calls.
