> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Enrutamiento de excepciones

> Comprende la clasificación automática de severidad y usa asignación explícita, acciones masivas, despacho dirigido y callbacks.

Matcher clasifica automáticamente las transacciones no conciliadas por severidad. La asignación, las operaciones masivas y el despacho son acciones explícitas de la API; Matcher no enruta ni escala excepciones automáticamente.

## Clasificación de severidad

***

Matcher clasifica las excepciones automáticamente a partir del monto base, la antigüedad y las señales de la fuente para facilitar la priorización de la revisión.

### Reglas de severidad por defecto

| Severidad   | Criterio predeterminado de monto o antigüedad |
| ----------- | --------------------------------------------- |
| **Crítica** | Monto base ≥ 100,000 O antigüedad ≥ 120 horas |
| **Alta**    | Monto base ≥ 10,000 O antigüedad ≥ 72 horas   |
| **Media**   | Monto base ≥ 1,000 O antigüedad ≥ 24 horas    |
| **Baja**    | Todos los demás casos                         |

Las señales de la fuente también pueden influir en la clasificación. Las excepciones con motivo `FEE_DATA_MISSING` están limitadas a `MEDIUM`, incluso cuando los umbrales de monto o antigüedad las clasificarían como `HIGH` o `CRITICAL`.

## Asignación

***

La asignación es explícita. Para una excepción `OPEN`, la API de asignación acepta una única cadena opaca `assignee` y cambia la excepción a `ASSIGNED`.

<Note>
  Matcher no tiene un modelo de grupos de usuarios ni implementa asignación automática, enrutamiento round-robin o enrutamiento por menor carga. Si usas un identificador de usuario o grupo, codifícalo en la cadena `assignee` y resuelve su significado en tu propio sistema de identidad.
</Note>

## Comportamiento de SLA

***

Matcher contiene helpers de dominio que pueden calcular vencimientos de SLA, pero el flujo productivo de excepciones no los invoca. Matcher no establece actualmente plazos de SLA, emite advertencias, escala excepciones ni las enruta automáticamente. Controla y aplica los SLA operativos fuera de Matcher.

## Endpoints adicionales de excepciones

***

Además del CRUD básico de excepciones, Matcher proporciona endpoints para flujos de trabajo avanzados de excepciones:

| Endpoint                                                              | Método   | Descripción                                                           |
| --------------------------------------------------------------------- | -------- | --------------------------------------------------------------------- |
| [Despachar excepción](/es/reference/matcher/dispatch-exception)       | `POST`   | Intentar el despacho elegido por quien llama sin cambiar el estado    |
| [Procesar callback](/es/reference/matcher/process-exception-callback) | `POST`   | Aplicar una actualización externa autenticada por token e idempotente |
| [Asignación masiva](/es/reference/matcher/bulk-assign-exceptions)     | `POST`   | Asignar excepciones a una única cadena `assignee`                     |
| [Resolución masiva](/es/reference/matcher/bulk-resolve-exceptions)    | `POST`   | Resolver varias excepciones de forma independiente                    |
| [Despacho masivo](/es/reference/matcher/bulk-dispatch-exceptions)     | `POST`   | Despachar varias excepciones de forma independiente                   |
| [Listar comentarios](/es/reference/matcher/list-exception-comments)   | `GET`    | Recuperar todos los comentarios de una excepción                      |
| [Agregar comentario](/es/reference/matcher/add-exception-comment)     | `POST`   | Agregar un comentario a una excepción para auditoría y colaboración   |
| [Eliminar comentario](/es/reference/matcher/delete-exception-comment) | `DELETE` | Eliminar un comentario de una excepción                               |
| [Listar disputas](/es/reference/matcher/list-disputes)                | `GET`    | Recuperar todas las disputas con filtros                              |
| [Obtener disputa](/es/reference/matcher/retrieve-dispute)             | `GET`    | Recuperar detalles de una disputa específica                          |
| [Abrir disputa](/es/reference/matcher/open-dispute)                   | `POST`   | Marcar una excepción como disputada para revisión escalada            |
| [Cerrar disputa](/es/reference/matcher/close-dispute)                 | `POST`   | Cerrar una disputa con una resolución                                 |
| [Enviar evidencia ](/es/reference/matcher/submit-evidence)            | `POST`   | Agregar evidencia para respaldar un caso de disputa                   |

La asignación, resolución y el despacho masivos aceptan entre 1 y 100 IDs de excepciones. Matcher procesa cada ID de forma independiente, por lo que el éxito parcial es esperado. La asignación masiva acepta una única cadena `assignee`, no un objeto de usuario o grupo.

## Despacho y callbacks

***

El despacho lo dirige quien llama: cada solicitud indica el destino. El despacho registra un evento de auditoría, pero no cambia el estado de la excepción. No trates los nombres de destino aceptados como integraciones preconfiguradas.

### Objetivos de despacho

Al despachar una excepción, el campo `targetSystem` debe ser uno de los siguientes valores:

| Objetivo     | Descripción                                                                                                         |
| ------------ | ------------------------------------------------------------------------------------------------------------------- |
| `JIRA`       | Intenta un despacho a JIRA dirigido por quien llama; requiere configuración del conector en tiempo de ejecución.    |
| `SERVICENOW` | No soportado; alcanza la ruta genérica de fallo por destino no soportado y devuelve HTTP 500.                       |
| `WEBHOOK`    | Intenta un despacho a webhook dirigido por quien llama; requiere configuración del conector en tiempo de ejecución. |
| `MANUAL`     | Confirma el despacho localmente sin enviarlo a un sistema externo.                                                  |

Los callbacks entrantes son un flujo separado, autenticado por token e idempotente. Un callback puede establecer una excepción en `ASSIGNED` cuando incluye un assignee, o en `RESOLVED`; no es una sincronización bidireccional realizada por el despacho.

### Filtrado por sistema externo

Al listar excepciones, el parámetro de consulta `external_system` acepta cualquier valor de cadena para filtrar. Esto te permite filtrar excepciones despachadas a cualquier sistema, incluyendo identificadores personalizados que pueden haberse establecido a través de callbacks.

### Manejo de errores de despacho

Los errores de validación y de conectores usan respuestas de problema de la API. En particular, `SERVICENOW` no devuelve `MTCH-0508`; actualmente devuelve el fallo genérico HTTP 500 por destino no soportado. Un despacho exitoso confirma la operación del destino, pero mantiene sin cambios el estado de la excepción.

## Resúmenes de cola y observabilidad

***

La lista de excepciones expone recuentos resumidos con alcance de cola. Matcher no expone tasas de incumplimiento de SLA, distribución de reglas de enrutamiento ni analíticas de éxito y fallo de integraciones. Usa tu plataforma externa de observabilidad para esas señales operativas.

## Mejores prácticas

***

<AccordionGroup>
  <Accordion title="Revisa la severidad automática">
    Usa la severidad clasificada para priorizar la revisión y ten en cuenta el límite de `FEE_DATA_MISSING` en `MEDIUM`.
  </Accordion>

  <Accordion title="Usa valores de assignee estables">
    Pasa un identificador estable en la cadena opaca `assignee` y resuelve la propiedad en tu sistema de identidad.
  </Accordion>

  <Accordion title="Controla los SLA externamente">
    Define plazos, advertencias y escalamiento en tu sistema de flujo de trabajo porque Matcher no los aplica.
  </Accordion>

  <Accordion title="Valida la disponibilidad del despacho">
    Confirma que el conector elegido está configurado antes de depender del despacho dirigido a JIRA o webhooks.
  </Accordion>

  <Accordion title="Inspecciona cada resultado masivo">
    Trata las operaciones masivas de forma independiente por ID y maneja explícitamente el éxito parcial.
  </Accordion>

  <Accordion title="Protege los callbacks">
    Protege los tokens de callback y usa claves de idempotencia estables cuando sistemas externos actualicen el estado de una excepción.
  </Accordion>
</AccordionGroup>

## Próximos pasos

***

<Card title="Resolver excepciones" icon="triangle-exclamation" href="/es/matcher/daily-reconciliation/matcher-resolving-exceptions" horizontal>
  Resuelve excepciones a través de la API o de sistemas externos.
</Card>

<Card title="Webhooks y callbacks" icon="webhook" href="/es/matcher/integrations/matcher-webhooks-callbacks" horizontal>
  Entrega avanzada de eventos y manejo de callbacks.
</Card>
