Skip to main content
Las excepciones son transacciones que Matcher no puede conciliar automáticamente. Esta guía muestra cómo revisar excepciones, priorizar el trabajo según severidad y resolver elementos con el nivel adecuado de documentación.

¿Qué es una excepción?


Una excepción se crea cuando una transacción de una fuente no tiene contraparte válida en otra fuente. Las causas comunes incluyen:
  • Sin candidato encontrado: ninguna transacción en la otra fuente cumple los criterios de la regla activa.
  • Por debajo del umbral de confianza: existen candidatos, pero puntúan por debajo de la confianza mínima (por defecto: 60).
  • Rechazo por duplicado: una coincidencia previa fue rechazada y no queda candidato alternativo.
  • Desbalance de fuente: una fuente contiene transacciones que faltan en la otra.

Ciclo de vida de una excepción


Las excepciones avanzan a través de un flujo de trabajo simple:
  • Cuando Matcher no puede conciliar una transacción, crea una excepción en estado OPEN.
  • Al asignar la excepción, pasa de OPEN a ASSIGNED. La API no expone una operación para quitar la asignación; assignee es obligatorio y no puede estar vacío.
  • Forzar coincidencia y ajustar asiento conservan PENDING_RESOLUTION solo mientras la operación está en curso. Si la operación tiene éxito, la excepción pasa a RESOLVED; si falla, vuelve a su estado anterior, OPEN o ASSIGNED.
  • La resolución directa mueve una excepción OPEN o ASSIGNED a RESOLVED.
  • El despacho envía la solicitud al conector, escribe un evento de auditoría DISPATCH y emite exception.dispatched. No cambia el estado de la excepción.
Ciclo de vida de la excepción del Matcher

El ciclo de vida de una excepción en Matcher

Definiciones de estado

Endpoints de la máquina de estados

Los siguientes endpoints de excepción individual cambian el ciclo de vida o registran acciones relacionadas. Cada uno se direcciona mediante el exceptionId de la excepción en la ruta.
Matcher conecta la ruta de webhook y el manejo de callbacks. El código del conector de JIRA existe, pero no está configurado por defecto. MANUAL confirma el despacho localmente sin llamar a un sistema externo. El despacho a ServiceNow no está implementado: SERVICENOW llega a la ruta genérica de falla por destino no soportado y devuelve HTTP 500. Consulta Enrutamiento de excepciones para conocer el contrato completo de despacho.

Ejemplo de asignación

cURL

Ejemplo de resolución

cURL

Ejemplo de ajuste de asiento

cURL

Selección en lote con selectExceptionIDs

cURL
Alimenta los IDs devueltos en las operaciones en lote más abajo.

Severidad de las excepciones


Matcher clasifica las excepciones por severidad para que puedas trabajar la cola en el orden correcto.

Escalamiento de severidad

La severidad se reevalúa a medida que una excepción envejece. La clasificación usa lógica OR: basta con el monto o con el umbral de antigüedad para activar una severidad mayor:
  • Una excepción con monto menor a 1,000 comienza como Baja, pero escala a Media después de 24 horas.
  • Una excepción con monto menor a 10,000 escala a Alta después de 72 horas.
  • Cualquier excepción no resuelta escala a Crítica después de 120 horas.

Métodos de resolución


Matcher expone tres acciones para resolver excepciones.

1. Resolver directamente

Cierra una excepción con un valor resolution requerido y un reason opcional cuando no necesitas forzar una coincidencia ni crear un ajuste.

2. Forzar coincidencia

Vincula manualmente transacciones cuando has confirmado que pertenecen juntas, pero el sistema no pudo conciliarlas. Usa Forzar coincidencia cuando:
  • La contraparte correcta existe, pero las variaciones bloquearon la coincidencia automática.
  • Puedes explicar y documentar claramente la justificación.
  • La variación es esperada (comisiones, tiempo, redondeo).

3. Crear ajuste

Crea un asiento de ajuste para contabilizar una variación o equilibrar un elemento no conciliado. Códigos de razón del ajuste: Reglas de validación:
  • Los montos de ajuste deben ser positivos. Una solicitud con monto cero o negativo devuelve un error 400 Bad Request.
  • Los códigos de moneda deben seguir el formato ISO 4217.
  • reasonCode debe usar AMOUNT_CORRECTION, CURRENCY_CORRECTION, DATE_CORRECTION u OTHER.

Registros de resolución


Matcher registra las acciones de resolución admitidas en el historial de la excepción y en el flujo de auditoría. Matcher no expone contratos de resolución para dividir excepciones ni para cancelarlas de forma independiente, y no aplica umbrales de aprobación basados en montos para estas acciones. Aplica cualquier requisito de aprobación adicional mediante los controles de tu organización.

Operaciones en lote


Cuando se manejan grandes volúmenes de excepciones, los endpoints en lote permiten procesar hasta 100 excepciones en una sola solicitud.

Asignación en lote

Asigna múltiples excepciones a un miembro del equipo de una sola vez:
cURL

Resolución en lote

Resuelve múltiples excepciones con una resolución compartida:
cURL
La respuesta incluye los arrays succeeded y failed, para que puedas manejar fallas parciales de forma elegante.

Despacho en lote

Despacha múltiples excepciones a un sistema externo:
cURL

Comentarios de excepciones


Los comentarios dan a cada excepción un registro de auditoría de notas de investigación y discusión del equipo, invaluable cuando alguien más debe retomar o revisar el caso más adelante. Agrega un comentario a medida que un analista trabaja un elemento:
cURL
El listado (GET) devuelve el hilo completo ordenado del más antiguo al más reciente. No puedes agregar comentarios después de que se resuelve una excepción. Solo quien escribió el comentario puede eliminarlo, y el comentario debe pertenecer a la excepción identificada en la URL.

Disputas


Cuando una excepción necesita una investigación formal o involucra a una parte externa —un contracargo, una consulta bancaria— escálala a una disputa. Las disputas rastrean evidencia, cambios de estado y el resultado final. Lista las disputas con GET /v1/disputes (filtra por state, por ejemplo OPEN) o recupera una por su disputeId.

Estados y transiciones de disputa

Una disputa tiene cinco estados: DRAFT, OPEN, PENDING_EVIDENCE, WON y LOST. El flujo no es estrictamente lineal:
  • PENDING_EVIDENCE es opcional: una disputa OPEN puede pasar directamente a WON o LOST sin recolectar evidencia.
  • Una disputa LOST puede reabrirse de vuelta a OPEN.
  • WON es terminal.
El conjunto completo de transiciones válidas:

Flujo de trabajo de resolución de excepciones


Usa este flujo para mantener revisiones consistentes y aptas para auditoría.
1

Triaje

Revisa la cola por severidad y SLA. Comienza con Crítica y Alta.
2

Investigar

Usa el payload de la excepción para entender qué falló y qué candidatos existen.
  • Lee reason_details para ver por qué falló la coincidencia.
  • Revisa candidates en busca de coincidencias cercanas por debajo del umbral.
  • Busca patrones (misma contraparte, formatos de referencia recurrentes).
3

Resolver

Elige la resolución que mejor refleje la realidad y la política.
  • Resolver directamente: puedes cerrar la excepción sin forzar una coincidencia ni crear un ajuste.
  • Forzar coincidencia: encontraste la contraparte correcta.
  • Ajustar: necesitas un asiento de ajuste para la variación.
4

Documentar

Captura suficiente detalle para que alguien más pueda reproducir tu decisión más adelante:
  • Qué verificaste
  • Qué concluiste
  • Enlaces o IDs de evidencia de soporte
5

Despachar si es necesario

Si la excepción requiere gestión externa, despáchala mediante el conector de webhook configurado. El despacho registra la acción, pero no cambia el estado de la excepción. JIRA requiere una configuración de conector que Matcher no proporciona por defecto; ServiceNow no está disponible.

Buenas prácticas


Comienza con los elementos Críticos y Altos. Conllevan el mayor riesgo y los plazos más ajustados.
Las notas no son opcionales. Trátalas como parte de la resolución:
  • Qué verificaste
  • Por qué esta resolución es correcta
  • Cualquier ID de ticket, extractos o confirmaciones
Las excepciones repetidas suelen apuntar a problemas de configuración:
  • Misma contraparte → normaliza nombres o mapeo
  • Misma ventana de fechas → valida la completitud de la ingesta
  • Misma fuente → revisa el mapeo de campos y las convenciones de signo
Si fuerzas coincidencias con regularidad, tus reglas o tolerancias necesitan atención.
Asigna las excepciones mediante los endpoints de asignación. Matcher no aplica reglas de asignación automáticamente.

Próximos pasos


Generando Reportes

Crea reportes de conciliación, exporta resultados y da soporte a auditorías.

Enrutamiento de Excepciones

Revisa los conceptos de severidad, SLA y enrutamiento de excepciones.