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

# Idempotencia

> Reintentar sin crear clasificaciones duplicadas ni pagar dos veces.

Las operaciones que pueden facturar exigen el header **`Idempotency-Key`**:

* `POST /classifications`
* `POST /classifications/{id}/answers`

La clave la elegís vos: de **16 a 128 caracteres**, solo letras sin acentos, números, `-` y `_`. Usá algo que identifique la operación en tu sistema, como el id del pedido más un sufijo.

```http theme={null}
Idempotency-Key: erp-pedido-000123-a
```

## Cómo funciona

* **Misma clave y mismo cuerpo**: devolvemos la misma clasificación, sin crear otra ni facturar de nuevo. La respuesta trae `Idempotent-Replayed: true`.
* **Misma clave con otro cuerpo**: `422 idempotency-key-reused`. Si querés otra clasificación, usá otra clave.
* **Misma clave mientras el primer pedido sigue en curso**: `409 idempotency-key-in-flight`. Esperá y reintentá.
* **Sin clave o con formato inválido**: `422 idempotency-key-invalid`.

Una clave vale **24 horas**.

## Cuándo reintentar

Si un pedido se cortó por la red o recibiste un `5xx`, reintentá **con la misma clave**. Es la forma segura: si el primero llegó, recibís su resultado; si no, se crea.

<Warning>
  No generes una clave nueva en cada reintento. Con una clave nueva, un pedido que sí había llegado crea una segunda clasificación, que también se factura.
</Warning>
