# Update merchant references

> `PATCH https://api.kustom.co/ordermanagement/v1/orders/{order_id}/merchant-references`

Update merchant references. Read more on [Updating merchant references](https://docs.kustom.co/contents/order-management/manage-orders-with-the-api/view-and-change-orders#update-merchant-references-1)

## Parameters

- `order_id` (string, path, required) — Order id
- `Klarna-Idempotency-Key` (string, header) — This header will guarantee the idempotency of the operation. The key should be unique and is recommended to be a UUID version 4. Retries of requests are safe to be applied in case of errors such as network errors, socket errors and timeouts. Input values of the operation are disregarded when evaluating the idempotency of the operation, only the key matters.

## Request body

`application/json`

- `merchant_reference1` (string) — New merchant reference 1. Old reference will be overwritten if this field is present.
- `merchant_reference2` (string) — New merchant reference 2. Old reference will be overwritten if this field is present.

### Example request

```json
{
  "merchant_reference1": "<string>",
  "merchant_reference2": "<string>"
}
```

## Responses

### 204

Order merchant references were updated.

### 403

Can not update a cancelled order.

`application/json`

- `correlation_id` (string) — Correlation id. For searching logs.
- `error_code` (string) — Error code
- `error_messages[]` (array<string>) — Error messages

```json
{
  "correlation_id": "66782175-ae05-44fc-9eb3-eeceadbad271",
  "error_code": "NOT_ALLOWED",
  "error_messages": [
    "<string>"
  ]
}
```

### 404

Not Found

`*/*`

- `correlation_id` (string)
- `error_code` (string) Enum: `INTERNAL_ERROR`, `NOT_FOUND`, `TOO_MANY_REQUESTS`, `REFUND_NOT_ALLOWED`, `CAPTURE_NOT_ALLOWED`, `CANCEL_NOT_ALLOWED`, `UPDATE_NOT_ALLOWED`, `NO_SUCH_ORDER`, `BAD_REQUEST`, `PAYLOAD_TOO_LARGE`, `NO_SUCH_CAPTURE`, `RESOURCE_NOT_FOUND`, `INVALID_REQUEST_PARAMETERS`, `NOT_ALLOWED`, `UNSUPPORTED_MEDIA_TYPE`, `FORBIDDEN`.
- `error_messages[]` (array<string>)

```json
{
  "correlation_id": "<string>",
  "error_code": "INTERNAL_ERROR",
  "error_messages": [
    "<string>"
  ]
}
```

### 409

Conflict

`*/*`

```json
"<string>"
```

### Errors

| Code | Status | What it means | Retry |
| --- | --- | --- | --- |
| `NOT_ALLOWED` | 403 | The order is not in a state that permits this change. Needs `AUTHORIZED`. | Never retry |
