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

# Cobranzas

> Crea cobranzas Pix (cobranças) con el Plugin Pix Indirecto vía BTG: COB inmediata, COBV con vencimiento, estados del ciclo de vida, vinculación de pagos y webhooks.

Una **cobranza** (cobrança) es un cobro Pix dinámico y de un solo uso que solicita un pago específico. El Plugin Pix Indirecto (BTG) admite dos tipos. Ambos tipos usan un QR Code dinámico:

* **Inmediata (COB)** (`cobrança imediata`): un cobro de corta duración por un monto fijo. Úsala para checkout y pagos únicos.
* **Con vencimiento (COBV)** (`cobrança com vencimento`): un cobro parecido a un boleto, con fecha de vencimiento y multa, intereses, descuento y bonificación opcionales. Úsala para facturas, cuotas y facturación B2B.

Esta guía cubre el ciclo de vida de la cobranza y el flujo de pago. Para los detalles de generación de QR Code y la validación campo por campo, consulta la [guía de QR Codes](/es/interfaces/pix-btg/indirect-pix-qrcodes).

# Ciclo de vida

***

Ambos tipos de cobranza comparten el mismo modelo de estados:

| Estado                | Significado                                |
| --------------------- | ------------------------------------------ |
| `ACTIVE`              | Creada y disponible para pago              |
| `COMPLETED`           | Pago recibido — la cobranza está liquidada |
| `REMOVED_BY_RECEIVER` | Eliminada por el comercio (`DELETE`)       |
| `REMOVED_BY_PSP`      | Vencida después de su ventana de validez   |

Una cobranza pasa de **`ACTIVE`** a **`COMPLETED`** cuando el pagador la paga. Pasa a **`REMOVED_BY_PSP`** cuando vence, o a **`REMOVED_BY_RECEIVER`** cuando el comercio la elimina. Cada tipo tiene su propia ventana de validez:

* **Inmediata (COB):** el cobro vence después de `expirationSeconds`.
* **Con vencimiento (COBV):** el cobro vence en `dueDate` más los días de `validAfterDue`.

Después de que una cobranza vence o llega a `COMPLETED`, el pagador ya no puede pagarla. El plugin también rechaza cualquier intento de eliminar o actualizar una cobranza `COMPLETED` (`PIX-0704`).

# Campos clave

***

| Campo                                                 | Obligatorio en         | Notas                                                                             |
| ----------------------------------------------------- | ---------------------- | --------------------------------------------------------------------------------- |
| `txId`                                                | COB + COBV             | Identificador único en todas las cobranzas; se usa para vincular el pago entrante |
| `amount`                                              | COB + COBV             | Decimal con 2 decimales, mayor que 0                                              |
| `receiverKey`                                         | COB + COBV             | Clave Pix que recibe el pago; debe pertenecer a la cuenta                         |
| `expirationSeconds`                                   | Solo COB               | Ventana de validez de los cobros inmediatos                                       |
| `dueDate` / `validAfterDue`                           | Solo COBV              | Fecha de vencimiento y periodo de gracia posterior al vencimiento                 |
| `debtor`                                              | COBV (opcional en COB) | Nombre + CPF/CNPJ del pagador esperado                                            |
| `amount.fine` / `interest` / `discount` / `abatement` | Solo COBV (opcional)   | Reglas de cobro exclusivas de COBV                                                |

Para COBV, el valor final depende del **momento del pago**. El pago anticipado aplica descuentos. El pago a tiempo usa el monto original. El pago atrasado suma multa e intereses, menos cualquier bonificación.

# Creación, consulta, actualización y eliminación

***

| Acción     | Inmediata (COB)                         | Con vencimiento (COBV)               |
| ---------- | --------------------------------------- | ------------------------------------ |
| Crear      | `POST /v1/collections/immediate`        | `POST /v1/collections/duedate`       |
| Listar     | `GET /v1/collections/immediate`         | `GET /v1/collections/duedate`        |
| Consultar  | `GET /v1/collections/immediate/{id}`    | `GET /v1/collections/duedate/{id}`   |
| Actualizar | `PATCH /v1/collections/immediate/{id}`  | `PATCH /v1/collections/duedate/{id}` |
| Eliminar   | `DELETE /v1/collections/immediate/{id}` | —                                    |

Todas las solicitudes requieren el header `X-Account-Id`. Puedes actualizar o eliminar una cobranza solo mientras está `ACTIVE`.

# Flujo de pago

***

El pagador liquida una cobranza con un **Pix entrante (cash-in)** que lleva el `txId` de la cobranza:

1. El comercio crea una cobranza y le presenta su QR Code (o `txId`) al pagador.
2. El pagador liquida el cobro. BTG notifica al plugin del cash-in entrante.
3. El plugin **vincula el cash-in con la cobranza** al comparar el `txId` del pago con el `txId` de la cobranza **y** el documento del receptor. (`FindByTxID(txID, receiverDocument)`.)
4. Si coinciden, la cobranza pasa a `COMPLETED` y el plugin registra el cash-in en Midaz como una transacción del ledger.
5. El plugin emite un **webhook de cobranza pagada** para notificar a tu sistema en tiempo real.

<Note>
  Cuando defines un `debtor` en la cobranza, el cobro registra el CPF/CNPJ del pagador esperado. El plugin no bloquea a un pagador distinto en la liquidación.
</Note>

# Evento de webhook al pagarse

***

Después de que un pago liquida una cobranza, el plugin encola un **webhook saliente**. El webhook describe el pago y el nuevo estado `COMPLETED`. El worker de webhooks salientes lo entrega de forma asíncrona. Configura el destino con las URL de webhook de cash-in (`WEBHOOK_TRANSFER_CASHIN_URL`, con `WEBHOOK_DEFAULT_URL` como alternativa). Para tipos de evento, payloads, reintentos y resolución de URL, consulta la [guía de Webhooks](/es/interfaces/pix-btg/indirect-pix-webhooks).

# Casos de error

***

| Caso                                                   | Comportamiento                                                                                                                          |   |                      |                                                                                  |
| ------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------- | - | -------------------- | -------------------------------------------------------------------------------- |
| **Vencida**                                            | El pagador ya no puede pagar la cobranza. Un pago entrante tardío queda sin vincular y sigue el flujo estándar de cash-in no conciliado |   |                      |                                                                                  |
| **Monto que no coincide**                              | Para un cobro inmediato, un pago cuyo monto difiere del cobro no completa la cobranza (`PIX-0729`)                                      |   | **`txId` duplicado** | La creación falla — un `txId` debe ser único en todas las cobranzas (`PIX-0701`) |
| **Actualización o eliminación después de completarse** | El plugin rechaza la solicitud (`PIX-0704`) — una cobranza `COMPLETED` es inmutable                                                     |   |                      |                                                                                  |

# Referencia

***

**Inmediata (COB):** [Crear](/es/reference/interfaces/pix-btg/create-an-immediate-charge) · [Listar](/es/reference/interfaces/pix-btg/list-immediate-charges) · [Consultar](/es/reference/interfaces/pix-btg/retrieve-immediate-charge-details) · [Actualizar](/es/reference/interfaces/pix-btg/update-an-immediate-charge) · [Eliminar](/es/reference/interfaces/pix-btg/delete-an-immediate-charge)

**Con vencimiento (COBV):** [Crear](/es/reference/interfaces/pix-btg/create-a-dynamic-charge-with-due-date) · [Listar](/es/reference/interfaces/pix-btg/list-dynamic-charges-with-due-date) · [Consultar](/es/reference/interfaces/pix-btg/retrieve-dynamic-charge-with-due-date-details) · [Actualizar](/es/reference/interfaces/pix-btg/update-a-dynamic-charge-with-due-date)

# Próximos pasos

***

* [QR Codes](/es/interfaces/pix-btg/indirect-pix-qrcodes): tipos de QR Code y el decodificador
* [Transferencias intra-PSP](/es/interfaces/pix-btg/indirect-pix-intra-psp): liquidación interna cuando el pagador y el receptor comparten tu ISPB
* [Webhooks](/es/interfaces/pix-btg/indirect-pix-webhooks): notificaciones de pago y de estado
