Skip to main content
Las reglas de coincidencia son donde defines tu política de conciliación: qué tan estricto o flexible debe ser Matcher al decidir que dos transacciones son la misma. Reglas ajustadas implican más revisión manual pero menos coincidencias falsas; reglas más flexibles automatizan más pero requieren una supervisión cuidadosa. Puedes exigir coincidencias exactas, permitir variaciones controladas, tolerar diferencias de tiempo o comparar referencias de texto libre por similitud.

Cómo funcionan las reglas


Cuando se inicia una ejecución de coincidencia, Matcher evalúa las reglas según su prioridad.
  • Las reglas se evalúan desde el número de prioridad más bajo hasta el más alto.
  • Cada regla crea todas las coincidencias posibles con transacciones que no hayan sido usadas por reglas de mayor prioridad.
  • Después de ejecutar todas las reglas, las transacciones que siguen sin coincidencia se convierten en excepciones.
Este enfoque evita que se reutilicen las coincidencias de mayor prioridad y permite que reglas progresivamente más flexibles procesen las transacciones restantes.

Tipos de reglas


Exact

Requiere una coincidencia estricta en los campos configurados.
  • Ideal para: coincidencias deterministas donde los valores deben alinearse 1:1.

Tolerance

Permite una variación controlada en la comparación de montos.
  • Ideal para: patrones de variación conocidos, como comisiones, redondeos o diferencias de tipo de cambio (FX).

Date lag

Permite diferencias de fecha entre transacciones.
  • Ideal para: retrasos de contabilización entre sistemas.

Fuzzy

Reemplaza la igualdad exacta de referencia por una puntuación de similitud de cadenas normalizada. Las comprobaciones de monto, moneda y fecha exigen igualdad exacta por defecto, pero matchAmount, matchCurrency y matchDate controlan de forma independiente si se aplica cada comprobación. FUZZY siempre propone una coincidencia para revisión y nunca la confirma automáticamente.
  • Ideal para: memos de texto libre o referencias truncadas donde la referencia varía pero las comprobaciones financieras habilitadas siguen alineadas.

Creación de reglas de coincidencia


Regla Exact

cURL

Referencia de configuración

Boolean
predeterminado:"true"
Requiere coincidencia exacta de monto
Boolean
predeterminado:"true"
Requiere coincidencia exacta de moneda
Boolean
predeterminado:"true"
Requiere coincidencia exacta de fecha
Boolean
predeterminado:"true"
Requiere coincidencia exacta de referencia
String
predeterminado:"DAY"
Precisión de comparación de fecha: DAY o TIMESTAMP
Boolean
predeterminado:"true"
Comparación de referencia sin distinción de mayúsculas/minúsculas
Boolean
predeterminado:"false"
Requiere que la referencia esté presente en ambos lados
Boolean
predeterminado:"false"
Comparar monto base (convertido) en lugar del original
Boolean
predeterminado:"false"
Comparar moneda base en lugar de la original
Integer
predeterminado:"100"
Aceptado y validado, pero reservado/inerte — no altera la puntuación de confianza calculada (consulta la nota más abajo)
Integer
predeterminado:"90"
Aceptado y validado, pero reservado/inerte — no altera la puntuación de confianza calculada (consulta la nota más abajo)
matchScore y matchBaseScore actualmente son inertes. Se aceptan y validan en la configuración de la regla, pero el motor de puntuación los ignora: la confianza siempre se calcula a partir de los pesos internos fijos de cada componente (monto 40, moneda 30, fecha 20, referencia 10). Estos campos están reservados para uso futuro y establecerlos no modifica la puntuación de confianza ni el comportamiento de confirmación automática. Consulta Puntuación de confianza.
La respuesta refleja la regla persistida con su id asignado y sus marcas de tiempo.
Referencia de la API: Crear regla de coincidencia

Regla Tolerance

cURL

Referencia de configuración

Decimal
Umbral porcentual aplicado a percentageBase (0.005 = 0.5%). Su valor predeterminado es 0; Matcher compara este umbral con absTolerance y usa el mayor
Decimal
Umbral absoluto de monto. Su valor predeterminado es 0; Matcher lo compara con el umbral porcentual y usa el mayor
Ambos umbrales tienen un valor predeterminado de cero, por lo que debes configurar explícitamente cualquier variación de monto permitida.
Integer
Número de días permitidos entre fechas de transacción
Integer
Decimales para redondeo
String
Estrategia de redondeo: HALF_UP, BANKERS, FLOOR, CEIL o TRUNCATE
String
predeterminado:"MAX"
Base para cálculo de porcentaje: MAX, MIN, AVERAGE, LEFT o RIGHT
Boolean
predeterminado:"true"
Requiere coincidencia de moneda
Boolean
predeterminado:"true"
Requiere coincidencia de referencia
Boolean
predeterminado:"true"
Comparación de referencia sin distinción de mayúsculas/minúsculas
Boolean
predeterminado:"false"
Requiere que la referencia esté presente en ambos lados
Boolean
predeterminado:"false"
Comparar monto base (convertido)
Boolean
predeterminado:"false"
Comparar moneda base
Integer
predeterminado:"85"
Aceptado y validado, pero reservado/inerte — no altera la puntuación de confianza calculada
Integer
predeterminado:"80"
Aceptado y validado, pero reservado/inerte — no altera la puntuación de confianza calculada
Ejemplo:
  • Transacción A: $1,000.00
  • Transacción B: $1,005.00
  • Diferencia de monto: $5.00
  • Umbral porcentual: 1,005.00×0.51,005.00 × 0.5% = 5.025 (percentageBase: MAX)
  • Umbral absoluto: $0.50
  • Umbral efectivo: MAX($5.025, $0.50) = $5.025 → Coinciden

Regla Fuzzy

cURL

Referencia de configuración

Decimal
predeterminado:"0.80"
Similitud de referencia normalizada mínima (0–1) requerida para validar como coincidencia
Boolean
predeterminado:"true"
Cuando es true, exige una coincidencia exacta de monto
Boolean
predeterminado:"true"
Cuando es true, exige una coincidencia exacta de moneda
Boolean
predeterminado:"true"
Cuando es true, exige una coincidencia exacta de fecha
String
predeterminado:"DAY"
Precisión de comparación de fecha: DAY o TIMESTAMP
Boolean
predeterminado:"true"
Requiere una referencia no vacía en ambos lados
Integer
predeterminado:"70"
Se acepta y su valor predeterminado es 70, pero está reservado/inerte: no limita ni cambia la confianza calculada ni el comportamiento de confirmación automática
FUZZY reemplaza la igualdad de referencia por similitud. Por defecto, también exige coincidencias exactas de monto, moneda y fecha; desactiva cada comprobación de forma independiente con matchAmount, matchCurrency o matchDate. FUZZY siempre propone coincidencias para revisión humana y nunca las confirma automáticamente.

Regla Date lag

cURL

Referencia de configuración

Integer
Número máximo de días de diferencia permitidos
Integer
predeterminado:"0"
Número mínimo de días de diferencia requeridos
Boolean
predeterminado:"true"
Si los días límite son inclusivos
String
predeterminado:"ABS"
Cómo medir el desfase: ABS (absoluto), LEFT_BEFORE_RIGHT o RIGHT_BEFORE_LEFT
Decimal
predeterminado:"0"
Diferencia de monto permitida para compensar comisiones
Integer
predeterminado:"80"
Aceptado y validado, pero reservado/inerte — no altera la puntuación de confianza calculada. Ten en cuenta que las reglas DATE_LAG siempre puntúan el componente de referencia como 0, limitando la puntuación máxima a 90
Boolean
predeterminado:"true"
Requiere coincidencia de moneda

Configuración de asignación (todos los tipos de regla)

Todos los tipos de regla aceptan configuraciones adicionales de asignación para coincidencia dividida y agregada:

Prioridad de las reglas


Las reglas se evalúan según su prioridad. Los números más bajos se ejecutan primero.

Estrategia de prioridad

Reordenar reglas

Puedes reordenar las reglas proporcionando los IDs de las reglas en el orden deseado:
cURL
Referencia de la API: Reordenar reglas de coincidencia

Pruebas de reglas


Prueba las reglas en modo dry-run antes de confirmar las coincidencias.
cURL
El modo dry-run evalúa todas las reglas y devuelve coincidencias potenciales. No crea excepciones, pero Matcher completa y persiste el MatchRun con estadísticas y emite su evento de finalización.

Gestión de reglas


Listar reglas

cURL

Respuesta

El endpoint de listado devuelve una vista resumida de las reglas. Para ver los detalles completos de configuración de una regla específica, utiliza el endpoint individual de la regla o la respuesta de creación, que incluye el objeto config completo.
Referencia de la API: Listar reglas de coincidencia

Actualizar una regla

cURL
Referencia de la API: Actualizar regla de coincidencia

Eliminar una regla

cURL
Referencia de la API: Eliminar regla de coincidencia

Buenas prácticas


Prioriza reglas exactas. Agrega reglas de tolerancia solo para las variaciones que puedas justificar y explicar.
Usa intervalos (1, 10, 20, 50) para poder insertar reglas sin renumerar todo el conjunto.
Trata las actualizaciones de reglas como cambios de producción. Valida las tasas de coincidencia y el volumen de excepciones antes de confirmar.
Una regla debe documentar la variación que cubre y el riesgo que introduce.
Si una regla nunca coincide, puede ser innecesaria. Si coincide con demasiada frecuencia, puede ser demasiado amplia.
Una alta tolerancia incrementa los falsos positivos. Úsala como respaldo y revisa los resultados cuidadosamente.

Próximos pasos


Enrutamiento de excepciones

Configura la clasificación, asignación y escalamiento de transacciones no conciliadas.

Puntuación de confianza

Entiende cómo se calculan los puntajes y cómo los umbrales afectan la automatización.