Esta integración es opcional. Matcher es un producto independiente que funciona de forma autónoma. Use esta guía solo si desea integrar Matcher con Midaz Ledger.
Descripción general
La integración con Midaz proporciona:
- Acceso directo al libro mayor: Consulta transacciones directamente desde Midaz sin exportaciones de archivos
- Sincronización en tiempo real: Sincronización automática de transacciones a medida que se registran los asientos
- Autenticación unificada: Sistema de autenticación único a través de lib-auth
- Aislamiento de inquilinos: Arquitectura de esquema por inquilino que garantiza la separación de datos
Prerrequisitos
Antes de configurar la integración con Midaz:
- Instancia de Midaz Ledger en ejecución y accesible
- Credenciales de API con permisos de lectura de transacciones
- Conectividad de red entre Matcher y Midaz
- Configuración de inquilino coincidente en ambos sistemas
Configuración
Variables de entorno
Configure Matcher para conectarse a su instancia de Midaz:Crear fuente Midaz
Cree una fuente de tipo MIDAZ a través de la API de configuración de fuentes.Configuración de fuente
| Configuración | Tipo | Descripción |
|---|---|---|
ledger_id | String | ID del libro mayor de destino en Midaz |
account_filter.type | String | Filtro por tipo de cuenta (ASSET, LIABILITY, etc.) |
account_filter.path_prefix | String | Prefijo de ruta de cuenta a incluir |
account_filter.accounts | Array | IDs de cuentas específicas a incluir |
sync_mode | String | realtime o batch |
lookback_days | Integer | Días de datos históricos a incluir |
exclude_pending | Boolean | Excluir asientos pendientes |
Autenticación
Matcher utiliza el mismo sistema de autenticación que Midaz a través de la biblioteca compartida
lib-auth.
Autenticación servicio a servicio
Matcher se autentica con Midaz usando credenciales de cliente OAuth 2.0:Alcances requeridos
| Alcance | Permiso |
|---|---|
ledger:read | Leer metadatos del libro mayor |
transactions:read | Leer asientos de transacciones |
accounts:read | Leer información de cuentas |
Contexto del inquilino
Todas las solicitudes incluyen el encabezado de contexto del inquilino:Consulta de transacciones
Sincronización automática
Consync_mode: realtime, Matcher se suscribe a eventos de Midaz y recibe transacciones a medida que se registran. Cuando se crea una transacción en Midaz, publica un evento en la cola de mensajes. Matcher consume el evento, almacena la transacción localmente y la pone en cola para el emparejamiento—todo sin intervención manual.

Filtros de consulta
Filtre transacciones al sincronizar:Mapeo de transacciones
Las transacciones de Midaz se mapean automáticamente al esquema de Matcher:
| Campo Midaz | Campo Matcher | Notas |
|---|---|---|
id | transaction_id | ID único del asiento |
amount | amount | Monto decimal |
asset_code | currency | Código de moneda ISO |
created_at | date | Fecha del asiento |
description | reference | Descripción del asiento |
metadata.external_ref | external_id | Referencia externa si está presente |
operation | type | CREDIT o DEBIT |
Mapeo de campos personalizado
Sobrescriba el mapeo predeterminado para casos de uso específicos:Aislamiento de inquilinos
Matcher hereda el modelo de aislamiento de esquema por inquilino de Midaz.
Cómo funciona
- Cada inquilino tiene un esquema PostgreSQL dedicado
- Todas las consultas tienen alcance al esquema del inquilino
- El pool de conexiones mantiene el contexto del esquema
- No es posible el acceso a datos entre inquilinos
Resolución del inquilino
El inquilino se determina desde el token de autenticación:Manejo de errores
Errores de conexión
Errores de autenticación
Errores de sincronización
Mejores prácticas
Use sincronización en tiempo real para conciliación activa
Use sincronización en tiempo real para conciliación activa
Habilite
sync_mode: realtime para contextos con conciliación diaria. Esto asegura que las transacciones estén disponibles para emparejamiento inmediatamente después de registrarse.Filtre por ruta de cuenta
Filtre por ruta de cuenta
Use
account_filter.path_prefix para limitar las transacciones a cuentas relevantes. Esto reduce el volumen de datos y mejora el rendimiento del emparejamiento.Establezca un período de retrospectiva apropiado
Establezca un período de retrospectiva apropiado
Configure
lookback_days según su ciclo de conciliación. La conciliación diaria típicamente necesita 7-14 días; la mensual necesita 45-60 días.Monitoree el retraso de sincronización
Monitoree el retraso de sincronización
Rastree el retraso entre los registros de Midaz y la disponibilidad en Matcher. Un retraso alto puede indicar acumulación en la cola o problemas de procesamiento.
Use metadatos para emparejamiento
Use metadatos para emparejamiento
Almacene datos relevantes para el emparejamiento en campos de metadatos de Midaz (números de factura, referencias bancarias) y mapéelos a campos de Matcher para mejores tasas de coincidencia.

