# Conflict

The request conflicts with the current state of a resource. The action cannot be completed because a related resource already exists or is in an incompatible state.

**HTTP Status:** `409 Conflict`

## Error Codes

| Code | Description |
|  --- | --- |
| `customer_already_exists` | A customer with this CPF exists but with a different `external_id` |
| `offer_already_accepted` | This credit offer already has a loan associated with it |
| `last_active_credential` | Cannot revoke the last active API credential |
| `session_already_active` | A biometrics session is already in progress for this customer |
| `withdrawal_locked` | A withdrawal operation is already in progress for this loan |


## Example Response


```json
{
  "type": "https://docs.dinie.com/errors/conflict",
  "title": "Conflict",
  "status": 409,
  "detail": "A customer with CPF 12345678901 already exists with a different external_id.",
  "code": "customer_already_exists"
}
```

## How to Resolve

- **`customer_already_exists`** -- Look up the existing customer by CPF and use their ID instead of creating a new record.
- **`offer_already_accepted`** -- Each credit offer can only be accepted once. Request a new offer if the customer needs another loan.
- **`last_active_credential`** -- Create a new credential before revoking the current one. At least one active credential must exist.
- **`session_already_active`** -- Wait for the current biometrics session to complete or expire before starting a new one.
- **`withdrawal_locked`** -- Wait for the current withdrawal to complete before initiating another.


## See Also

- [Error Handling guide](/en-us/apis/concepts/errors) -- Full error handling patterns and code examples