Skip to main content
Matcher automatiza la conciliación financiera entre varias fuentes de datos, elimina el trabajo manual de coincidencia y ofrece un registro de auditoría completo para cada transacción. Esta guía te lleva por el despliegue de Matcher en entornos de desarrollo y producción.
Matcher está disponible para clientes con licencia. Lerian mantiene su repositorio de forma interna. Las instrucciones siguientes suponen que ya tienes acceso a los archivos del proyecto Matcher necesarios.

Docker compose (desarrollo)


Docker Compose es el enfoque recomendado para desarrollo y pruebas en local.

1. Accede al proyecto Matcher

Desde el directorio del proyecto Matcher:

2. Configura el entorno

El archivo docker-compose.yml incluye valores predeterminados razonables para el desarrollo local. Puedes sobrescribir cualquier valor definiendo variables de entorno en tu shell o creando un archivo .env en la raíz del proyecto. Consulta Variables de entorno para más detalles sobre los ajustes disponibles.

3. Inicia los servicios

Inicia los servicios de infraestructura necesarios:
Espera hasta que todos los servicios reporten un estado saludable:
Inicia la aplicación Matcher:
Para iniciar todos los servicios de una vez:

4. Verifica la instalación

Lista los contextos de configuración para confirmar que Matcher está activo. En una instalación nueva, la respuesta paginada por cursor tiene un arreglo items vacío:
Luego verifica las dependencias necesarias mediante el endpoint público de readiness:
El endpoint devuelve 200 cuando cada dependencia necesaria está lista. Devuelve 503 con detalles por verificación cuando una dependencia necesaria no está disponible.

Servicios de Docker compose

El docker-compose.yml predeterminado incluye:

Desarrollo con hot reload

Para desarrollo activo, usa:
Esto inicia Matcher con la recarga en vivo habilitada usando Air.

Kubernetes / helm (producción)


Se recomienda que los despliegues de producción usen el Helm chart oficial.

Requisitos previos

  • Kubernetes 1.28+
  • Helm 3.12+
  • kubectl configurado para el cluster destino

1. Crea un namespace

2. Configura los valores

Crea un archivo values.yaml con la configuración de tu despliegue:

3. Crea los secrets

Crea secrets de Kubernetes para las credenciales sensibles:

4. Instala el chart

5. Verifica el despliegue

Actualización

Para actualizar un despliegue existente:

Variables de entorno


Las variables de entorno proporcionan la configuración de bootstrap de Matcher. Systemplane puede sobrescribir los ajustes mutables en tiempo de ejecución después del arranque.

Aplicación

CORS

Base de datos (PostgreSQL)

Réplica de la base de datos (PostgreSQL)

Caché (Redis)

Mensajería (RabbitMQ)

Autenticación

Almacenamiento de objetos (compatible con S3)

Observabilidad

TLS

Rate limiting

Swagger

Idempotencia

Deduplicación

Outbox

Workers

Planificador

Archivado

Discovery

Estos ajustes controlan Discovery, que lee de bases de datos externas mediante un motor de extracción en proceso embebido en Matcher, no un servicio de red aparte. Consulta Discovery para ver cómo funciona.

Infraestructura

Para los ajustes de despliegue multi-tenant, consulta Modo multi-tenant. Para la gestión de la configuración en tiempo de ejecución, consulta Configuración en tiempo de ejecución (Systemplane).

Verifica la instalación


Valida que Matcher y sus dependencias necesarias estén listos:
El endpoint devuelve 200 cuando cada dependencia necesaria está lista. Devuelve 503 con detalles por verificación cuando una dependencia necesaria no está disponible. Configura las sondas de readiness de Kubernetes para que usen este endpoint.

Solución de problemas


Problemas comunes

  • Causa: PostgreSQL está caído o inalcanzable.
  • Resolución:
  1. Verifica que PostgreSQL esté activo: docker-compose ps postgres
  2. Revisa los valores de conexión en .env
  3. Prueba la conectividad: nc -zv localhost 5432
  4. Revisa los logs: docker-compose logs postgres
  • Causa: Redis está caído o las credenciales son incorrectas.
  • Resolución:
  1. Verifica que Redis esté activo: docker-compose ps redis
  2. Confirma REDIS_PASSWORD
  3. Prueba la conectividad: redis-cli -h localhost ping
  • Causa: RabbitMQ sigue arrancando, o el host virtual no existe.
  • Resolución:
  1. Espera hasta que RabbitMQ esté saludable
  2. Accede a la UI de administración en http://localhost:15672
  3. Verifica RABBITMQ_VHOST
  • Causa: el servicio de autenticación es inalcanzable o el token no es válido.
  • Resolución:
  1. Verifica PLUGIN_AUTH_ADDRESS
  2. Deshabilita la autenticación para desarrollo: PLUGIN_AUTH_ENABLED=false
  3. Revisa los logs del servicio de autenticación
  • Causa: no se pudieron aplicar las migraciones de la base de datos.
  • Resolución:
  1. Revisa el estado de la migración: make migrate-status
  2. Revisa los logs de la migración
  3. Aplica las migraciones manualmente: make migrate-up
  4. Inspecciona la tabla schema_migrations si hace falta

Ver los logs

Modo debug

Habilita el log de debug para más visibilidad:

Próximos pasos


Inicio rápido

Ejecuta tu primera conciliación.

Configuración

Configura contextos, fuentes y reglas de coincidencia.