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

# Cobrar con un código QR dinámico

> Crea un cobro Pix con un código QR dinámico y recibe el pago en una cuenta de Midaz, con Pix Lerian y Lerian SPI.

Crea un cobro Pix con un código QR dinámico y sabe cuándo el pagador lo paga.

> [!NOTE]
>
> Este flujo es una lectura sugerida de los manuales del BACEN para Pix. Los manuales prevalecen sobre esta página. Tu institución, como participante, valida el flujo y lo implementa sobre las API de Lerian. Consulta [cómo leer los diagramas](https://docs.lerian.studio/es/diagrams/introduction.md).

## Participantes

***

* **Tu institución.** El participante de Pix del receptor. Llama a la API de Pix Lerian, muestra el código QR y recibe los eventos.
* **Pix Lerian.** Crea el cobro y sigue su estado. Acredita el pago en Midaz.
* **Midaz.** El ledger que guarda la cuenta que recibe el pago.
* **Lerian SPI.** Registra el cobro, lo entrega a la institución del pagador e intercambia los mensajes de Pix con el SPI.
* **SPI.** El sistema de pagos instantáneos del BACEN. Liquida el pago.
* **Institución del pagador.** El participante de Pix del pagador. Lee el cobro y envía el pago.

## Antes de empezar

***

* La cuenta que recibe el pago tiene una clave Pix activa que tu institución registró en Pix Lerian.
* Tus sistemas reciben los eventos de Pix Lerian. Consulta [Eventos de Pix Lerian](https://docs.lerian.studio/es/interfaces/pix-lerian/pix-lerian-events.md).

## Diagrama

***

![Cobrar con un código QR dinámico](https://mintcdn.com/lerian-49cb71fc/l2YPqqB1Osw1XPuf/images/es/d2/id-charge-with-a-dynamic-qr-code.svg?fit=max\&auto=format\&n=l2YPqqB1Osw1XPuf\&q=85\&s=cac19b6cdd1b65135b9261f63a700597)

## Pasos

***

| # | Origen | Destino | Mensaje | API de Lerian | Qué ocurre |
| - | - | - | - | - | - |
| 1 | Tu institución | Pix Lerian | API de Lerian | [`POST /collections/immediate`](https://docs.lerian.studio/es/reference/interfaces/pix-lerian/cob/create-immediate-collection) | Crea el cobro con tu `txId`, la clave Pix, el monto y la expiración. Envía el encabezado `X-Idempotency`. |
| 2 | Pix Lerian | Pix Lerian | Paso interno | | Pix Lerian verifica que la clave Pix está activa. |
| 3 | Pix Lerian | Lerian SPI | Llamada interna | | Pix Lerian registra el cobro en Lerian SPI. |
| 4 | Pix Lerian | Tu institución | API de Lerian | Respuesta al paso 1 | Pix Lerian responde `201` con el cobro en `ACTIVE`, el contenido del código QR en `emvPayload` y su ubicación. |
| 5 | Tu institución | Tu institución | Paso interno | | Muestra el código QR al pagador. |
| 6 | Institución del pagador | Lerian SPI | HTTPS | | La institución del pagador lee el cobro en su ubicación. Lerian SPI responde con el cobro firmado. |
| 7 | Institución del pagador | SPI | `pacs.008` | | La institución del pagador envía el pago. |
| 8 | SPI | Lerian SPI | `pacs.008` | | El pago llega a tu institución. |
| 9 | Lerian SPI | Pix Lerian | Llamada interna | | Lerian SPI pasa el Pix que llegó a Pix Lerian. Pix Lerian acepta el Pix, y el SPI lo liquida, como en [Recibir un Pix](https://docs.lerian.studio/es/diagrams/native-rails/send-and-receive-pix.md). |
| 10 | Pix Lerian | Midaz | Llamada interna | | Después de la liquidación, Pix Lerian acredita la cuenta. |
| 11 | Lerian SPI | Lerian SPI | Paso interno | | Después de la liquidación, Lerian SPI marca el cobro como pagado. |
| 12 | Lerian SPI | Pix Lerian | Llamada interna | | Lerian SPI pasa el cobro pagado a Pix Lerian. |
| 13 | Pix Lerian | Tu institución | API de Lerian | Evento `collection.paid` | El cobro queda en `COMPLETED`. |

## Reglas

***

* Un cobro no crea ninguna transacción en Midaz. El dinero llega como un Pix recibido, con su propio evento `inbound_transfer.completed`.
* Un nuevo cobro necesita una nueva clave `X-Idempotency` y un nuevo `txId`.
* Un cobro con vencimiento sigue los mismos pasos. Créalo con [`POST /collections/duedate`](https://docs.lerian.studio/es/reference/interfaces/pix-lerian/cob/create-due-date-collection). Su evento `collection.paid` tiene `type` `DUE_DATE`.
* Para terminar un cobro inmediato no pagado, cancélalo con [`DELETE /collections/immediate/{id}`](https://docs.lerian.studio/es/reference/interfaces/pix-lerian/cob/cancel-immediate-collection). El cobro queda en `CANCELLED`.

## Cómo saber que terminó

***

Pix Lerian publica `collection.paid`, y [`GET /collections/immediate/{id}`](https://docs.lerian.studio/es/reference/interfaces/pix-lerian/cob/get-immediate-collection) muestra el cobro en `COMPLETED`.

## Qué puede salir mal

***

| Situación | Qué ves | Qué hacer |
| - | - | - |
| La clave Pix es desconocida o no está activa. | Pix Lerian rechaza el cobro. | Usa una clave Pix activa de la cuenta que recibe. |
| La respuesta a la solicitud no llega. | Ninguna respuesta, o un timeout. | Envía la misma solicitud otra vez con la misma clave `X-Idempotency`. |

La [lista de errores de Pix Lerian](https://docs.lerian.studio/es/reference/interfaces/pix-lerian/pix-lerian-error-list.md) describe cada código.

## Relacionados

***

* [Enviar y recibir Pix](https://docs.lerian.studio/es/diagrams/native-rails/send-and-receive-pix.md)
* [Usa COB con Pix Lerian](https://docs.lerian.studio/es/interfaces/pix-lerian/pix-lerian-cob.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.