Flujos de transacciones Pix
Comprender cómo fluyen las transacciones Pix a través del sistema es esencial para configurar la conciliación correctamente. Los dos flujos a continuación muestran lo que Matcher necesita conciliar en cada lado.
Pix enviado (cash-out)
Flujo de cash-out: desde la iniciación del cliente a través de la liquidación SPI hasta la conciliación en Matcher.
- El cliente inicia el Pix — El usuario final activa un pago Pix a través de la aplicación o API.
- El plugin crea la iniciación — El plugin de Pix crea un registro de iniciación y resuelve la cuenta de destino mediante consulta DICT.
- El plugin procesa el pago — El plugin debita la cuenta del cliente en Midaz (transacción en estado
pending) y envía la instrucción de pago a SPI. - Liquidación confirmada — SPI envía un webhook confirmando la liquidación. La transacción en Midaz se confirma.
- Matcher concilia — Matcher compara la transacción confirmada en Midaz contra la entrada correspondiente en el extracto de liquidación SPI del BACEN.
Pix recibido (cash-in)
Flujo de cash-in: desde la notificación entrante del SPI a través del crédito en Midaz hasta la conciliación en Matcher.
- Pix entrante llega — SPI envía un webhook sincrónico con los datos del Pix entrante.
- El plugin valida — El plugin de Pix valida el payload y aprueba la transacción.
- Se crea la transacción de crédito — El plugin crea una transacción CREDIT en Midaz para la cuenta del destinatario.
- Liquidación confirmada — El webhook de liquidación confirma que la transacción es definitiva.
- Matcher concilia — Matcher compara la transacción de crédito en Midaz contra la entrada correspondiente en el extracto de liquidación SPI del BACEN.
Configuración paso a paso
Crear el contexto
1:1 porque cada transacción Pix tiene exactamente una entrada de liquidación correspondiente en el BACEN."0".Establecer autoMatchOnUpload en false te da control sobre cuándo se ejecuta la conciliación, lo cual es importante cuando necesitas que ambas fuentes estén ingestadas antes de ejecutar.Crear las fuentes
LEDGER):LEDGER es la categoría de Matcher para datos de ledger interno — no es un conector directo con Midaz. Exportas las transacciones Pix del día desde Midaz (incluyendo el metadato endToEndId como columna plana) y subes la exportación a esta fuente, manualmente o mediante un pipeline automatizado. Consulta Matcher y Midaz para el flujo de exportación/importación.Fuente B — Extracto SPI del BACEN (tipo CUSTOM):CUSTOM porque el archivo de liquidación SPI se carga manualmente o mediante un pipeline automatizado cada día.Cada fuente debe declarar un side (LEFT o RIGHT). Un contexto concilia su fuente LEFT contra su fuente RIGHT, así que asigna un lado a Midaz y el otro al BACEN, y mantén la asignación consistente en ambas fuentes.Crear mapeos de campos
{ "<canonicalKey>": "<sourceColumn>" }. Las claves provienen del vocabulario canónico cerrado de Matcher (external_id, amount, currency, date y los opcionales description, fee_amount, fee_currency); los valores son los nombres de columna sin procesar en cada fuente. Las búsquedas son planas: el valor de un mapeo debe nombrar una columna de nivel superior de la fila, así que la exportación de Midaz debe traer el endToEndId como columna plana propia (consulta Matcher y Midaz — mapeo de campos personalizado).La siguiente tabla muestra cómo cada campo canónico se mapea a la columna en cada fuente:Crear reglas de conciliación
endToEndId es único por transacción Pix en todo el ecosistema. Cuando la referencia, el monto, la moneda y la fecha coinciden, es una conciliación confirmada con máxima confianza. Nota que caseInsensitive está en false porque los valores de endToEndId distinguen mayúsculas y minúsculas, y referenceMustSet está en true para asegurar que ambos lados contengan el endToEndId antes de comparar — esto previene falsos positivos basados solo en monto y fecha.Regla 2 — Tolerancia de fecha como respaldo (prioridad 51):endToEndId se maneja en la Regla 1.Activar y programar
Operación diaria
Una vez configurado, el flujo de conciliación diaria sigue cinco pasos.
Cargar extracto del BACEN
Subir la exportación de Midaz
endToEndId como columna plana — y sube la exportación a la fuente de Midaz de la misma forma. Este paso suele automatizarse con el mismo pipeline. Consulta Matcher y Midaz para el flujo de exportación/importación.Matcher se ejecuta a las 07:00 (o manualmente)
DRY_RUN primero para previsualizar resultados sin confirmarlos. Cuando estés satisfecho, ejecuta nuevamente con COMMIT:Revisar resultados
Resolver excepciones
Ejemplo práctico — un día de datos
El siguiente ejemplo ilustra una ejecución de conciliación completa para el 17 de marzo de 2026.
Transacciones de Midaz (Fuente A)
Extracto SPI del BACEN (Fuente B)
Resultados de la conciliación
Análisis
- txn-001 y txn-002: Coincidencia exacta en endToEndId, monto, moneda y fecha. La Regla 1 resolvió estos con puntaje de confianza 100.
- txn-003: Pix iniciado a las 23:58, liquidado en el BACEN el 2026-03-18. La Regla 2 (DATE_LAG con ventana de 1 día) emparejó este con puntaje de confianza 85. Los matches de date-lag nunca se confirman automáticamente: el par va a la cola de revisión para confirmación humana.
- txn-004: Presente en Midaz pero ausente en el BACEN. Posible fallo de liquidación o timeout del SPI. Investiga el estado de la transacción a través del plugin de Pix.
- liq-8804: Presente en el BACEN pero ausente en Midaz. Un Pix entrante que no fue procesado. Verifica la entrega del webhook o reprocesa el mensaje.
Manejo de excepciones Pix
La siguiente tabla cubre los escenarios de excepción Pix más comunes y las acciones recomendadas.
Forzar conciliación
Cuando hayas confirmado que dos registros representan la misma transacción Pix pero Matcher no pudo conciliarlos automáticamente, utiliza forzar conciliación.Ignorar transacción
Cuando una transacción debe excluirse de la conciliación (por ejemplo, una entrada duplicada o un Pix ya revertido), márcala como ignorada.Devoluciones Pix (devoluções)
Las devoluciones Pix generan transacciones inversas que también necesitan conciliación. Cuando se procesa una devolución, el plugin de Pix crea una nueva transacción en Midaz con:
- El
originalEndToEndIdque vincula de vuelta a la transacción Pix original - Un nuevo
returnIdentification(rtrId) que identifica de forma única la devolución en el SPI
POST /v1/transfers/{id}/refunds es un endpoint del plugin de Pix, no un endpoint de Matcher. Matcher no inicia transferencias ni devoluciones — solo concilia las transacciones resultantes. Cada devolución lleva el originalEndToEndId y un nuevo returnIdentification para el seguimiento de extremo a extremo, que Matcher luego usa para conciliar la devolución contra el extracto de liquidación del BACEN. Para la iniciación de devoluciones, consulte la documentación del plugin de Pix.Mejores prácticas
Usa endToEndId como referencia primaria
Usa endToEndId como referencia primaria
endToEndId es el identificador único de Pix en todo el ecosistema — desde la institución iniciadora a través del SPI hasta la institución receptora. Asegúrate de que esté almacenado en los metadatos de la transacción de Midaz y presente en el extracto del BACEN. Sin él, la conciliación recurre a la coincidencia por monto y fecha, lo cual es mucho menos confiable.Ejecuta la conciliación al día siguiente
Ejecuta la conciliación al día siguiente
Separa Pix IN y Pix OUT para alto volumen
Separa Pix IN y Pix OUT para alto volumen
Monitorea la tasa de conciliación
Monitorea la tasa de conciliación
Tolerancia cero es el valor por defecto
Tolerancia cero es el valor por defecto
feeToleranceAbs como feeTolerancePct en cero.Previsualiza antes de confirmar
Previsualiza antes de confirmar
DRY_RUN antes de COMMIT, especialmente después de cambios en reglas o mapeos de campos. Esto te permite revisar los resultados de la conciliación y detectar errores de configuración antes de que afecten los datos de producción.Métricas clave
Monitorea estas métricas para supervisar la salud de tu proceso de conciliación Pix.

