# Cómo cobrar (/docs/collect)

Para cobrar creas una **cuenta de cobro** (`funding account`). Caibo la abre con el banco del país y te devuelve las instrucciones que le muestras a tu cliente: un código PIX, una cuenta para transferir. Cuando el banco confirma el pago, lo acreditamos a tu saldo y te avisamos.

<Mermaid chart={`sequenceDiagram
  participant T as Tu sistema
  participant C as Caibo Pay
  participant P as Tu cliente
  T->>C: POST /v1/funding-accounts
  C-->>T: 201 pending
  C-->>T: webhook funding_account.active con instrucciones
  T->>P: Muestra las instrucciones
  P->>C: Paga
  C-->>T: webhook payin.completed
  T->>C: GET /v1/balances`} />

## Dos formas de cobrar [#dos-formas-de-cobrar]

[Capabilities](/docs/capabilities) dice, para cada método y moneda, cuál se usa (`collection`):

| `collection` | Cómo se pide | Para qué |
| --- | --- | --- |
| `payment` | **Con** `amount` | Un pago único por un monto exacto: una orden, una factura. Se cierra cuando se paga. |
| `account` | **Sin** `amount` | Una cuenta que recibe cualquier depósito, de cualquier monto, mientras esté abierta. |

Si pides la forma equivocada, la API te lo dice: `422 amount_required` (ese cobro necesita un monto) o `422 one_payment_unavailable` (ese cobro no admite monto).

<Callout title="El pagador paga la orden, y nada más">
En un pago único, lo que ve tu cliente es **exactamente el monto de tu orden**: una orden de 1,000.00 PEN se paga con 1,000.00 PEN. Si el banco cobra una comisión por recibir, la cubre Caibo; tu cliente no la ve ni la paga.
</Callout>

## Estados de una cuenta de cobro [#estados-de-una-cuenta-de-cobro]

| `status` | Qué significa |
| --- | --- |
| `pending` | La estamos abriendo con el banco. |
| `active` | Lista: `instructions` trae lo que el pagador necesita. |
| `failed` | No se pudo abrir; `failure_code` dice por qué. No se muestran instrucciones. |
| `closed` | Ya no recibe depósitos. Un pago único se cierra cuando su cobro termina. |

| Evento | Cuándo |
| --- | --- |
| `funding_account.active` | La cuenta está lista, con sus instrucciones. |
| `funding_account.failed` | No se pudo abrir. |
| `payin.completed` | Un pago entró y se acreditó a tu saldo. |
| `payin.failed` | Un pago no se concretó (por ejemplo, venció sin pagarse). |

## Dónde termina el dinero [#dónde-termina-el-dinero]

Cada cobro se acredita en tu saldo en su `settlement_currency`: la moneda de liquidación que indica capabilities (`settlement_asset`) o la que elijas entre `settlement_currencies`. No hay etapa intermedia: el dinero se registra recién cuando el banco confirma, y entonces ya está **disponible**.

<Cards>
  <Card title="Cobrar un monto exacto" href="/docs/collect-one-payment">PIX en Brasil, transferencia en Perú.</Card>
  <Card title="Cobros acreditados" href="/docs/payins">El recurso payin y sus estados.</Card>
</Cards>
