> ## 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.

# Roteamento de exceções

> Entenda a classificação automática de severidade e use atribuição explícita, ações em lote, despacho dirigido pelo chamador e callbacks.

O Matcher classifica automaticamente as transações não conciliadas por severidade. Atribuição, operações em lote e despacho são ações explícitas da API. O Matcher não roteia nem escalona exceções automaticamente.

## Classificação de severidade

***

O Matcher classifica exceções automaticamente a partir do valor base, da idade e de sinais da fonte para apoiar a priorização da revisão.

### Regras de severidade padrão

| Severidade  | Critério padrão de valor ou idade         |
| ----------- | ----------------------------------------- |
| **Crítica** | Valor base ≥ 100.000 OU idade ≥ 120 horas |
| **Alta**    | Valor base ≥ 10.000 OU idade ≥ 72 horas   |
| **Média**   | Valor base ≥ 1.000 OU idade ≥ 24 horas    |
| **Baixa**   | Todos os outros casos                     |

Sinais da fonte também podem influenciar a classificação. O Matcher limita as exceções com motivo `FEE_DATA_MISSING` a `MEDIUM`, mesmo quando os limiares de valor ou idade as classificariam como `HIGH` ou `CRITICAL`.

## Atribuição

***

A atribuição é explícita. Para uma exceção `OPEN`, a API de atribuição aceita uma string `assignee` opaca e muda a exceção para `ASSIGNED`.

<Note>
  O Matcher não tem modelo de grupo de usuários e não implementa atribuição automática, roteamento round-robin nem roteamento por menor carga. Se você usar um identificador de usuário ou de grupo, codifique-o na string `assignee` e resolva o significado dele no seu próprio sistema de identidade.
</Note>

## Comportamento de SLA

***

O Matcher guarda uma data de vencimento de SLA apenas quando um callback de entrada fornece `dueAt`. Ele não deriva um prazo da severidade, não emite avisos automáticos de SLA, não escalona exceções por um workflow de SLA nem as roteia automaticamente. Os agregados do dashboard podem informar a conformidade dessas datas de vencimento fornecidas externamente. Defina e faça valer a política de SLA no sistema externo que envia o callback.

## Endpoints adicionais de exceção

***

Além do CRUD básico de exceções, o Matcher oferece endpoints para workflows avançados de exceção:

| Endpoint                                                                        | Método   | Descrição                                                              |
| ------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------------- |
| [Despachar exceção](/pt/reference/products/matcher/dispatch-exception)          | `POST`   | Tenta o despacho escolhido pelo chamador sem mudar o status da exceção |
| [Processar callback](/pt/reference/products/matcher/process-exception-callback) | `POST`   | Aplica uma atualização externa idempotente autenticada por token       |
| [Atribuir em lote](/pt/reference/products/matcher/bulk-assign-exceptions)       | `POST`   | Atribui exceções a uma string `assignee`                               |
| [Resolver em lote](/pt/reference/products/matcher/bulk-resolve-exceptions)      | `POST`   | Resolve várias exceções de forma independente                          |
| [Despachar em lote](/pt/reference/products/matcher/bulk-dispatch-exceptions)    | `POST`   | Despacha várias exceções de forma independente                         |
| [Listar comentários](/pt/reference/products/matcher/list-exception-comments)    | `GET`    | Recupera todos os comentários de uma exceção                           |
| [Adicionar comentário](/pt/reference/products/matcher/add-exception-comment)    | `POST`   | Adiciona um comentário a uma exceção para auditoria e colaboração      |
| [Excluir comentário](/pt/reference/products/matcher/delete-exception-comment)   | `DELETE` | Remove um comentário de uma exceção                                    |
| [Listar disputas](/pt/reference/products/matcher/list-disputes)                 | `GET`    | Recupera todas as disputas com filtragem                               |
| [Obter disputa](/pt/reference/products/matcher/retrieve-dispute)                | `GET`    | Recupera os detalhes de uma disputa específica                         |
| [Abrir disputa](/pt/reference/products/matcher/open-dispute)                    | `POST`   | Marca uma exceção como disputada para revisão escalonada               |
| [Fechar disputa](/pt/reference/products/matcher/close-dispute)                  | `POST`   | Fecha uma disputa com uma resolução                                    |
| [Enviar evidência ](/pt/reference/products/matcher/submit-evidence)             | `POST`   | Adiciona evidência para sustentar um caso de disputa                   |

Atribuição, resolução e despacho em lote aceitam de 1 a 100 IDs de exceção. O Matcher processa cada ID de forma independente, então espere sucesso parcial. A atribuição em lote aceita uma única string `assignee`, não um objeto de usuário ou de grupo.

## Despacho e callbacks

***

O despacho é dirigido pelo chamador: cada requisição nomeia o destino. O despacho registra um evento de auditoria, mas não muda o status da exceção. Não trate os nomes de destino aceitos como integrações pré-configuradas.

### Destinos de despacho

Ao despachar uma exceção, o campo `targetSystem` deve ter um dos seguintes valores:

| Destino      | Descrição                                                                                                                            |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| `JIRA`       | Tenta o despacho para o JIRA dirigido pelo chamador; a configuração do conector em runtime é obrigatória.                            |
| `SERVICENOW` | Tenta a criação de incidente na Table API do ServiceNow dirigida pelo chamador; a configuração do conector em runtime é obrigatória. |
| `WEBHOOK`    | Tenta o despacho por webhook dirigido pelo chamador; a configuração do conector em runtime é obrigatória.                            |
| `MANUAL`     | Confirma o despacho localmente sem enviar para um sistema externo.                                                                   |

Os callbacks de entrada são um fluxo separado, idempotente e autenticado por token. Um callback pode definir uma exceção como `ASSIGNED` quando inclui um responsável, ou como `RESOLVED`. O despacho não faz sincronização bidirecional.

### Filtragem por sistema externo

Ao listar exceções, o parâmetro de consulta `external_system` aceita qualquer valor string para filtragem. Isso permite filtrar exceções despachadas para qualquer sistema, incluindo identificadores personalizados que os callbacks podem definir.

### Tratamento de erros de despacho

A validação da requisição e as falhas de conector usam respostas de problema da API. Um conector do ServiceNow não configurado retorna `MTCH-0509`. Se o Matcher não conseguir confirmar um despacho para o ServiceNow, ele retorna `MTCH-0514`. Confira o ServiceNow antes de despachar de novo, porque o incidente pode já existir. Um despacho bem-sucedido confirma a operação no destino, mas ainda deixa o status da exceção inalterado.

## Resumos de fila e observabilidade

***

A lista de exceções expõe contagens de resumo por fila. Os agregados do dashboard expõem contagens de conformidade de SLA para datas de vencimento fornecidas externamente. O Matcher não expõe a distribuição de regras de roteamento nem análises de sucesso e falha de integração. Use a sua stack externa de observabilidade para esses sinais operacionais.

## Boas práticas

***

<AccordionGroup>
  <Accordion title="Revise a severidade automática">
    Use a severidade classificada para priorizar a revisão e considere o limite de `FEE_DATA_MISSING` em `MEDIUM`.
  </Accordion>

  <Accordion title="Use valores de assignee estáveis">
    Passe um identificador estável na string `assignee` opaca e resolva a titularidade no seu sistema de identidade.
  </Accordion>

  <Accordion title="Acompanhe os SLAs por fora">
    Defina prazos, avisos e escalonamento no seu sistema de workflow, porque o Matcher não os aplica.
  </Accordion>

  <Accordion title="Valide a disponibilidade do despacho">
    Confirme a configuração do conector escolhido antes de depender do despacho dirigido pelo chamador para JIRA, ServiceNow ou webhook.
  </Accordion>

  <Accordion title="Inspecione cada resultado em lote">
    Trate as operações em lote como independentes por ID e lide com o sucesso parcial explicitamente.
  </Accordion>

  <Accordion title="Proteja os callbacks">
    Proteja os tokens de callback e use chaves de idempotência estáveis quando sistemas externos atualizarem o status da exceção.
  </Accordion>
</AccordionGroup>

## Próximos passos

***

<Card title="Como resolver exceções" icon="triangle-exclamation" href="/pt/products/matcher/daily-reconciliation/matcher-resolving-exceptions" horizontal>
  Resolva exceções pela API ou por sistemas externos.
</Card>

<Card title="Webhooks e callbacks" icon="webhook" href="/pt/products/matcher/integrations/matcher-webhooks-callbacks" horizontal>
  Entrega avançada de eventos e tratamento de callbacks.
</Card>
