Skip to main content
Matcher puede extraer candidatos de transacciones desde documentos y proponer mapeos de campos usando IA — pero la salida de la IA nunca es autoritativa. Nada se concilia hasta que un humano lo aprueba. Esta guía cubre la cola de revisión de extracción con supervisión humana (HITL), las propuestas de mapeo de IA y las acciones de trabajo relacionadas.
El carril de extracción de documentos está protegido por un kill-switch global y una activación explícita por tenant. Un tenant que no se ha activado recibe 403 antes de que se almacene o se transmita cualquier byte del documento.

Encolar un documento para extracción


Sube un documento de origen (PDF) para ejecutar la extracción determinista + IA. Los candidatos de transacciones resultantes se encolan en una revisión — todavía no se concilia nada.
La respuesta (202 Accepted) devuelve el id de la revisión encolada, el número de candidatos y un estado que siempre es PENDING_REVIEW al encolar:

La cola de revisión


Listar revisiones

Lista paginada por cursor de las revisiones de extracción de un contexto, opcionalmente filtrada por estado del ciclo de vida.
Parámetros de consulta: status (PENDING_REVIEW, APPROVED, REJECTED), limit (1–200) y cursor.

Obtener una revisión

Una revisión lleva su ciclo de vida, los candidatos propuestos, la procedencia y el estado de vinculación:
Cada candidato declara el carril que lo produjo: text_layer (texto del PDF, mayor confianza) o vision (modelo de OCR/visión, menor confianza). Los valores de los campos son tokens textuales — el dinero se mantiene como cadena, nunca como un monto parseado.

Aprobar o rechazar


Aprobar

Aprobar una revisión en estado PENDING_REVIEW ejecuta el único traspaso determinista hacia el pipeline normal de ingesta (deduplicación + outbox + disparador de matching) y vincula el trabajo resultante con la revisión. Este es el único camino desde un candidato de IA hasta una transacción conciliada, y solo se ejecuta con la aprobación explícita de un humano.

Rechazar

Rechazar descarta los candidatos — no se ingesta nada. El cuerpo es opcional; un cuerpo vacío es un “rechazo sin motivo” válido.
El principal que aprueba o rechaza se registra para auditoría.

Propuestas de mapeo


Antes de declarar un mapa de campos a mano, pide al asesor que inspeccione una muestra representativa y proponga un mapeo solo de configuración. Es consultivo y sin efectos secundarios: generar una propuesta no persiste nada. Confirmas el resultado mediante el camino existente de declaración del mapa de campos.
La respuesta lleva el mapa de campos propuesto, el dialecto de origen y un desglose por campo con confianza y justificación:
La respuesta nunca lleva valores parseados, montos ni transacciones.

Obtener desde un transporte externo


Dispara un fetch-and-ingest manual que lista todos los objetos que coinciden con las coordenadas de transporte suministradas (hoy SFTP) y transmite cada uno al pipeline de ingesta de contenido confiable. El cuerpo lleva las coordenadas de conexión más una referencia de credencial opaca — nunca un secreto.
La respuesta (202 Accepted) devuelve un resultado por archivo en el orden de obtención. Los fallos de ingesta por archivo se reportan sin hacer fallar el lote:
Un fallo a nivel de transporte (endpoint inalcanzable o credencial rechazada) devuelve 503.

Inspeccionar errores de un trabajo


Después de una importación, lista los errores de parseo/normalización por fila almacenados para un trabajo (limitados a 100 por trabajo) para explicar importaciones fallidas o parcialmente fallidas.
totalErrors es el total de fallos sin límite; truncated es true cuando supera el conjunto almacenado (limitado).

Códigos de respuesta