# PATCH /customers/{customer_id}

**Update a customer**

Updates a customer using its ID.

If successful, your response includes a copy of the updated customer entity.

**Required permissions:** `customer.write`

## Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `customer_id` | string | required | Paddle ID of the customer entity to work with. (pattern: `^ctm_[a-z\d]{26}$`) |

## Request body

- `name` — Full name of this customer. Required when creating transactions where `collection_mode` is `manual` (invoices).
- `email`: string (email) — Email address for this customer. (Length: 1–320)
- `status`: string — Whether this entity can be used in Paddle.
- `custom_data` — Your own structured key-value data.
- `locale`: string — Valid IETF BCP 47 short form locale tag.

### Request example

```json
{
  "name": "Jo Brown-Anderson"
}
```

## Response (200)

- `data`: object (required) — Represents a customer entity.
  - `id`: string (required) — Unique Paddle ID for this customer entity, prefixed with `ctm_`. (pattern: `^ctm_[a-z\d]{26}$`)
  - `name` (required) — Full name of this customer. Required when creating transactions where `collection_mode` is `manual` (invoices).
  - `email`: string (email) (required) — Email address for this customer. (Length: 1–320)
  - `marketing_consent`: boolean (required) — Whether this customer opted into marketing from you. `false` unless customers check the marketing consent box
when using Paddle Checkout. Set automatically by Paddle.
  - `status`: string (required) — Whether this entity can be used in Paddle.
  - `custom_data` (required) — Your own structured key-value data.
  - `locale`: string (required) — Valid IETF BCP 47 short form locale tag. If omitted, defaults to `en`.
  - `created_at`: string (date-time) (required) — RFC 3339 datetime string of when this entity was created. Set automatically by Paddle.
  - `updated_at`: string (date-time) (required) — RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle.
  - `import_meta` (required) — Import information for this entity. `null` if this entity is not imported.
- `meta`: object (required) — Information about this response.
  - `request_id`: string (required) — Unique ID for the request relating to this response. Provide this when contacting Paddle support about a specific request.

### Response example

```json
{
  "data": {
    "id": "ctm_01hv6y1jedq4p1n0yqn5ba3ky4",
    "status": "active",
    "custom_data": null,
    "name": "Jo Brown-Anderson",
    "email": "jo@example.com",
    "marketing_consent": false,
    "locale": "en",
    "created_at": "2024-04-11T15:57:24.813Z",
    "updated_at": "2024-04-11T15:59:56.658719Z",
    "import_meta": null
  },
  "meta": {
    "request_id": "bfa19139-37cc-48ef-8e75-215587e71ab2"
  }
}
```
