> ## 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.

# Cobranças

> Crie cobranças Pix pelo Plugin Pix Indireto (BTG): COB imediata, COBV com vencimento, estados do ciclo de vida, vínculo com o pagamento e webhooks.

Uma **cobrança** (collection) é uma cobrança Pix dinâmica e de uso único que pede um pagamento específico. O Plugin Pix Indireto (BTG) aceita dois tipos. Os dois tipos usam um QR Code dinâmico:

* **Imediata (COB)** (`cobrança imediata`): uma cobrança de curta duração com valor fixo. Use para checkout e pagamentos únicos.
* **Com vencimento (COBV)** (`cobrança com vencimento`): uma cobrança parecida com um boleto, com vencimento e, opcionalmente, multa, juros, desconto e abatimento. Use para contas, parcelas e faturamento B2B.

Este guia cobre o ciclo de vida da cobrança e o fluxo de pagamento. Para detalhes de geração de QR Code e a validação campo a campo, veja o [guia de QR Codes](/pt/interfaces/pix-btg/indirect-pix-qrcodes).

# Ciclo de vida

***

Os dois tipos de cobrança compartilham o mesmo modelo de status:

| Status                | Significado                                    |
| --------------------- | ---------------------------------------------- |
| `ACTIVE`              | Criada e disponível para pagamento             |
| `COMPLETED`           | Pagamento recebido — a cobrança está liquidada |
| `REMOVED_BY_RECEIVER` | Excluída pelo lojista (`DELETE`)               |
| `REMOVED_BY_PSP`      | Expirada depois da janela de validade          |

Uma cobrança passa de **`ACTIVE`** para **`COMPLETED`** quando o pagador a paga. Ela passa para **`REMOVED_BY_PSP`** quando expira, ou para **`REMOVED_BY_RECEIVER`** quando o lojista a exclui. Cada tipo tem a própria janela de validade:

* **Imediata (COB):** a cobrança expira depois de `expirationSeconds`.
* **Com vencimento (COBV):** a cobrança expira em `dueDate` mais `validAfterDue` dias.

Depois que uma cobrança expira ou chega a `COMPLETED`, o pagador não pode mais pagá-la. O plugin também rejeita qualquer tentativa de excluir ou atualizar uma cobrança `COMPLETED` (`PIX-0704`).

# Campos principais

***

| Campo                                                 | Obrigatório em         | Observações                                                                            |
| ----------------------------------------------------- | ---------------------- | -------------------------------------------------------------------------------------- |
| `txId`                                                | COB + COBV             | Identificador único entre todas as cobranças; usado para vincular o pagamento recebido |
| `amount`                                              | COB + COBV             | Decimal com 2 casas, maior que 0                                                       |
| `receiverKey`                                         | COB + COBV             | Chave Pix que recebe o pagamento; deve pertencer à conta                               |
| `expirationSeconds`                                   | Apenas COB             | Janela de validade das cobranças imediatas                                             |
| `dueDate` / `validAfterDue`                           | Apenas COBV            | Vencimento e carência após o vencimento                                                |
| `debtor`                                              | COBV (opcional em COB) | Nome + CPF/CNPJ do pagador esperado                                                    |
| `amount.fine` / `interest` / `discount` / `abatement` | Apenas COBV (opcional) | Regras de cobrança exclusivas do COBV                                                  |

No COBV, o valor final depende do **momento do pagamento**. O pagamento antecipado aplica descontos. O pagamento em dia usa o valor original. O pagamento em atraso soma multa e juros, menos qualquer abatimento.

# Criar, consultar, atualizar, excluir

***

| Ação      | Imediata (COB)                          | Com vencimento (COBV)                |
| --------- | --------------------------------------- | ------------------------------------ |
| Criar     | `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}`   |
| Atualizar | `PATCH /v1/collections/immediate/{id}`  | `PATCH /v1/collections/duedate/{id}` |
| Excluir   | `DELETE /v1/collections/immediate/{id}` | —                                    |

Todas as requisições exigem o header `X-Account-Id`. Você pode atualizar ou excluir uma cobrança apenas enquanto ela está `ACTIVE`.

# Fluxo de pagamento

***

O pagador liquida uma cobrança com um **Pix recebido (cash-in)** que carrega o `txId` da cobrança:

1. O lojista cria uma cobrança e apresenta o QR Code dela (ou o `txId`) ao pagador.
2. O pagador liquida a cobrança. O BTG notifica o plugin sobre o cash-in recebido.
3. O plugin **vincula o cash-in à cobrança** comparando o `txId` do pagamento com o `txId` da cobrança **e** com o documento do recebedor. (`FindByTxID(txID, receiverDocument)`.)
4. Quando há correspondência, a cobrança passa para `COMPLETED` e o plugin lança o cash-in no Midaz como uma transação no ledger.
5. O plugin emite um **webhook de cobrança paga** para notificar seu sistema em tempo real.

<Note>
  Quando você define um `debtor` na cobrança, ela registra o CPF/CNPJ do pagador esperado. O plugin não bloqueia um pagador diferente na liquidação.
</Note>

# Evento de webhook no pagamento

***

Depois que um pagamento liquida uma cobrança, o plugin enfileira um **webhook de saída**. O webhook descreve o pagamento e o novo status `COMPLETED`. O worker de webhooks de saída o entrega de forma assíncrona. Configure o destino pelas URLs de webhook de cash-in (`WEBHOOK_TRANSFER_CASHIN_URL`, com `WEBHOOK_DEFAULT_URL` como fallback). Para tipos de evento, payloads, novas tentativas e resolução de URL, veja o [guia de Webhooks](/pt/interfaces/pix-btg/indirect-pix-webhooks).

# Casos de erro

***

| Caso                                      | Comportamento                                                                                                                               |   |                      |                                                                                  |
| ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | - | -------------------- | -------------------------------------------------------------------------------- |
| **Expirada**                              | O pagador não pode mais pagar a cobrança. Um pagamento recebido em atraso fica sem vínculo e segue o fluxo padrão de cash-in não conciliado |   |                      |                                                                                  |
| **Valor divergente**                      | Em uma cobrança imediata, um pagamento cujo valor difere do da cobrança não conclui a cobrança (`PIX-0729`)                                 |   | **`txId` duplicado** | A criação falha — um `txId` deve ser único entre todas as cobranças (`PIX-0701`) |
| **Atualização/exclusão após a conclusão** | O plugin rejeita a requisição (`PIX-0704`) — uma cobrança `COMPLETED` é imutável                                                            |   |                      |                                                                                  |

# Referência

***

**Imediata (COB):** [Criar](/pt/reference/interfaces/pix-btg/create-an-immediate-charge) · [Listar](/pt/reference/interfaces/pix-btg/list-immediate-charges) · [Consultar](/pt/reference/interfaces/pix-btg/retrieve-immediate-charge-details) · [Atualizar](/pt/reference/interfaces/pix-btg/update-an-immediate-charge) · [Excluir](/pt/reference/interfaces/pix-btg/delete-an-immediate-charge)

**Com vencimento (COBV):** [Criar](/pt/reference/interfaces/pix-btg/create-a-dynamic-charge-with-due-date) · [Listar](/pt/reference/interfaces/pix-btg/list-dynamic-charges-with-due-date) · [Consultar](/pt/reference/interfaces/pix-btg/retrieve-dynamic-charge-with-due-date-details) · [Atualizar](/pt/reference/interfaces/pix-btg/update-a-dynamic-charge-with-due-date)

# Próximos passos

***

* [QR Codes](/pt/interfaces/pix-btg/indirect-pix-qrcodes): tipos de QR Code e o decodificador
* [Transferências intra-PSP](/pt/interfaces/pix-btg/indirect-pix-intra-psp): liquidação interna quando pagador e recebedor compartilham o seu ISPB
* [Webhooks](/pt/interfaces/pix-btg/indirect-pix-webhooks): notificações de pagamento e de status
