Saltar al contenido principal
Las excepciones son transacciones que Matcher no puede conciliar automáticamente. Esta guía muestra cómo revisar excepciones, priorizar 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 regla activa.
  • Por debajo del umbral de confianza: Existen candidatos, pero puntúan por debajo de la confianza mínima (por defecto: 60).
  • Rechazo duplicado: Una conciliación previa fue rechazada y no queda candidato alternativo.
  • Desbalance de fuente: Una fuente contiene transacciones que faltan en la otra.

Ciclo de vida de excepción


Las excepciones se mueven a través de un flujo de trabajo simple:
  • Cuando Matcher no puede conciliar una transacción, crea una excepción en estado OPEN.
  • Desde ahí, la excepción se asigna a un analista para investigación (ASSIGNED).
  • Si la resolución depende de un sistema externo—como un issue despachado a JIRA o un callback de webhook—la excepción pasa a PENDING_RESOLUTION hasta que llegue la respuesta externa.
  • Una vez que el analista resuelve la excepción (forzar conciliación, ajuste o callback externo), transiciona a RESOLVED.
Ciclo de vida de la excepción del Matcher

Definiciones de estado

EstadoDescripciónQuién puede transicionar
OPENNueva excepción esperando asignaciónSistema
ASSIGNEDAsignada a un analista para investigaciónSistema, Analista
PENDING_RESOLUTIONEsperando respuesta externa (JIRA, callback de webhook)Sistema
RESOLVEDCerrada con una resolución auditableAnalista, Sistema

Severidad de excepción


Matcher clasifica las excepciones por severidad para que puedas trabajar la cola en el orden correcto.
SeveridadCriterioSLA
CríticaMonto >= 100,000 O Antigüedad >= 120 horas24 horas
AltaMonto >= 10,000 O Antigüedad >= 72 horas72 horas
MediaMonto >= 1,000 O Antigüedad >= 24 horas120 horas (5 días)
BajaTodas las demás168 horas (7 días)

Escalamiento de severidad

La severidad se reevalúa a medida que una excepción envejece. La clasificación usa lógica OR—ya sea el monto o el umbral de antigüedad es suficiente 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


Puedes resolver una excepción de cuatro maneras.

1. Forzar conciliación

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

2. Crear ajuste

Crea un asiento de ajuste para contabilizar una varianza o equilibrar un elemento no conciliado. Tipos comunes de ajuste:
TipoCaso de Uso
BANK_FEECargos bancarios no registrados en el libro
FX_VARIANCEDiferencias de conversión de moneda
TIMING_DIFFERENCEAjustes de tiempo de liquidación
ROUNDINGPequeñas diferencias de redondeo
CORRECTIONCorrecciones de errores
OTHEROtras varianzas documentadas

3. Cancelación (Write-off)

Cancela una transacción que no tiene contraparte válida. Esto debe ser raro y típicamente requiere aprobación. Razones de cancelación:
RazónDescripción
DUPLICATE_ENTRYLa transacción fue ingresada dos veces
CANCELLEDLa transacción fue revertida o cancelada
NOT_APPLICABLENo pertenece al alcance de esta conciliación
BELOW_THRESHOLDEl monto está por debajo del umbral de investigación
APPROVED_VARIANCEVarianza aprobada por la gerencia

4. Dividir transacción

Usa división cuando una transacción debe conciliar con múltiples contrapartes.

Requisitos de auditoría


Cada resolución crea un registro de auditoría. Algunos tipos de resolución requieren evidencia y aprobaciones más fuertes.

Documentación requerida por tipo de resolución

ResoluciónCampos RequeridosAprobación Necesaria
Forzar Conciliaciónreason, notesNo (a menos que monto > umbral)
Ajusteadjustment_type, amount, descriptionSi monto > $1,000
Cancelaciónreason, notes, reference_documentSiempre
Divisiónsplits[] con montos y objetivosNo

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 vez:
cURL
curl -X POST "https://api.matcher.example.com/v1/exceptions/bulk/assign" \
 -H "Authorization: Bearer $TOKEN" \
 -H "Content-Type: application/json" \
 -d '{
   "exception_ids": ["019c96a0-2a10-7dfe-b5c1-8a1b2c3d4e5f", "019c96a0-2b20-7123-9a1b-2c3d4e5f6a7b"],
   "assignee": "john.doe@company.com"
 }'

Resolución en lote

Resuelve múltiples excepciones con una resolución compartida:
cURL
curl -X POST "https://api.matcher.example.com/v1/exceptions/bulk/resolve" \
 -H "Authorization: Bearer $TOKEN" \
 -H "Content-Type: application/json" \
 -d '{
   "exception_ids": ["019c96a0-2a10-7dfe-b5c1-8a1b2c3d4e5f", "019c96a0-2b20-7123-9a1b-2c3d4e5f6a7b"],
   "resolution": "ACCEPTED",
   "reason": "Verified as valid bank fees"
 }'
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
curl -X POST "https://api.matcher.example.com/v1/exceptions/bulk/dispatch" \
 -H "Authorization: Bearer $TOKEN" \
 -H "Content-Type: application/json" \
 -d '{
   "exception_ids": ["019c96a0-2a10-7dfe-b5c1-8a1b2c3d4e5f"],
   "target_system": "JIRA",
   "queue": "RECON-TEAM"
 }'

Comentarios de excepciones


Los comentarios proporcionan un registro de auditoría de las discusiones del equipo y notas de investigación sobre excepciones.

Agregar un comentario

cURL
curl -X POST "https://api.matcher.example.com/v1/exceptions/{exceptionId}/comments" \
 -H "Authorization: Bearer $TOKEN" \
 -H "Content-Type: application/json" \
 -d '{
   "content": "Contacted bank to verify wire transfer fee. Awaiting confirmation."
 }'

Listar comentarios

cURL
curl -X GET "https://api.matcher.example.com/v1/exceptions/{exceptionId}/comments" \
 -H "Authorization: Bearer $TOKEN"

Disputas


Cuando una excepción requiere investigación formal o involucra a una parte externa, escálala a una disputa. Las disputas rastrean evidencia, cambios de estado y resultados de resolución.

Listar disputas

cURL
curl -X GET "https://api.matcher.example.com/v1/disputes?state=OPEN" \
 -H "Authorization: Bearer $TOKEN"

Consultar una disputa

cURL
curl -X GET "https://api.matcher.example.com/v1/disputes/{disputeId}" \
 -H "Authorization: Bearer $TOKEN"
Estados de disputa: DRAFTOPENPENDING_EVIDENCEWON o LOST.

Flujo de trabajo de resolución de excepciones


Usa este flujo para mantener revisiones consistentes y amigables 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é la conciliación falló.
  • Revisa candidates para conciliaciones cercanas por debajo del umbral.
  • Busca patrones (misma contraparte, formatos de referencia recurrentes).
3

Resolver

Elige la resolución que mejor refleja la realidad y la política.
  • Forzar Conciliación: Encontraste la contraparte correcta.
  • Ajustar: Necesitas un asiento de ajuste para la varianza.
  • Dividir: Una transacción mapea a múltiples contrapartes.
  • Cancelar: No existe contraparte y la política lo permite (aprobación requerida).
4

Documentar

Captura suficiente detalle para que alguien más pueda reproducir tu decisión después:
  • 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 a JIRA o a un endpoint de webhook. La excepción pasa a PENDING_RESOLUTION hasta que un callback confirme el resultado.

Mejores prácticas


Comienza con elementos Críticos y Altos. Llevan 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
Excepciones repetidas usualmente apuntan a problemas de configuración:
  • Misma contraparte → Normaliza nombres o mapeo
  • Misma ventana de fechas → Valida completitud de ingestión
  • Misma fuente → Revisa mapeo de campos y convenciones de signo
Si fuerzas conciliaciones regularmente, tus reglas o tolerancias necesitan atención.
Usa reglas de asignación para reducir el tiempo de triaje y mantener clara la propiedad.
Si cancelas frecuentemente, revisa umbrales, alcance del contexto o calidad de datos upstream.

Próximos pasos