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

# Reglas del contexto

> Crea y gestiona reglas de matching EXACT, TOLERANCE, DATE_LAG y FUZZY desde la pestaña Rules de la página de configuración de un contexto en la Matcher UI.

Usa la pestaña **Rules** en la página de configuración de un contexto para definir y gestionar las reglas de matching que controlan cómo se emparejan las transacciones durante la reconciliación. Las reglas especifican los criterios que utiliza el motor de matching para identificar transacciones correspondientes entre fuentes de datos.

## Acceder a la pestaña Rules

***

<Steps>
  <Step>
    Navega a **Configurar → Contextos** en la barra lateral izquierda.
  </Step>

  <Step>
    Selecciona un contexto de la lista para abrir su página de configuración.
  </Step>

  <Step>
    Selecciona la pestaña **Rules**.
  </Step>
</Steps>

<Note>
  El **Selector de contexto** global en la barra lateral te permite cambiar el contexto de reconciliación activo en cualquier momento.
</Note>

## Lista de reglas

***

La pestaña Rules muestra las reglas de matching por orden de prioridad. Las reglas se evalúan de arriba abajo; la primera coincidencia gana. Cada fila visible muestra la estrategia y un resumen breve de la configuración de la regla, con flechas **Move rule up** / **Move rule down**, un botón **Edit rule** y un botón **Delete rule**.

Con 100 reglas o menos, la prioridad se asigna automáticamente al crear una regla: la regla nueva se añade al final de la cadena. Para cambiar la precedencia, reordena la lista con las flechas arriba/abajo. El formulario no tiene un campo de prioridad.

<Warning>
  La pestaña Rules carga solo las primeras 100 reglas por prioridad y no ofrece paginación. No puedes ver ni gestionar aquí las reglas posteriores. **Add rule** calcula la prioridad nueva a partir de esas 100 reglas; cuando una regla con prioridad 101 queda oculta, el siguiente intento de creación entra en conflicto con ella y falla.
</Warning>

## Crear una regla

***

<Steps>
  <Step>
    En la pestaña **Rules**, haz clic en el botón **Add rule**.
  </Step>

  <Step>
    Se abre un diálogo. Selecciona una **Strategy**:

    | Estrategia    | Descripción                         |
    | ------------- | ----------------------------------- |
    | **Exact**     | Igualdad campo a campo              |
    | **Tolerance** | Monto/fecha dentro de una banda     |
    | **Date lag**  | Ventana de retraso de liquidación   |
    | **Fuzzy**     | Similitud aproximada de referencias |

    Según la estrategia, aparecen campos distintos (mira abajo).
  </Step>

  <Step>
    Haz clic en **Create rule**.
  </Step>
</Steps>

<Warning>
  La estrategia queda fija después de la creación. Para cambiar la estrategia de una regla, elimina la regla y créala de nuevo.
</Warning>

## Tipos de regla

***

### EXACT

Empareja transacciones comparando campos por igualdad exacta.

Opciones de nivel superior:

| Campo               | Descripción                             |
| ------------------- | --------------------------------------- |
| **Match amount**    | Compara los montos de las transacciones |
| **Match currency**  | Exige igualdad de moneda                |
| **Match date**      | Compara las fechas de las transacciones |
| **Match reference** | Compara los campos de referencia        |

La sección **Advanced** añade:

| Campo                                  | Descripción                                                                                                                                                      |
| -------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Date precision**                     | Precisión de la comparación de fechas: `DAY` o `TIMESTAMP`                                                                                                       |
| **Case-insensitive reference compare** | Ignora mayúsculas/minúsculas al comparar referencias                                                                                                             |
| **Reference must be present**          | Cuando **Match reference** está activado, exige un valor de referencia no vacío                                                                                  |
| **Match base amount**                  | Empareja también el monto base (previo a la conversión)                                                                                                          |
| **Match base currency**                | Empareja también la moneda base                                                                                                                                  |
| **Sign mode**                          | Cómo se comparan los signos de los montos: `same` empareja signos iguales, `opposite` empareja un reembolso contra su cargo, `ignore` compara solo magnitudes    |
| **Match score**                        | Valor de configuración aceptado (0–100). Se guarda, pero no determina la confianza otorgada, que usa los componentes de comparación ponderados y fijos del motor |
| **Base-match score**                   | Valor de configuración aceptado (0–100). Se guarda, pero no determina la confianza otorgada                                                                      |
| **Allocation (1:N / N:1)**             | Ajustes de asignación parcial (mira abajo)                                                                                                                       |
| **Match fields**                       | Editor de clave compuesta para emparejar campos adicionales con nombre, combinado con las opciones anteriores                                                    |

### TOLERANCE

Empareja transacciones dentro de una banda de tolerancia numérica o de fecha.

Campos de nivel superior:

| Campo                  | Descripción                                                                                                                                       |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Absolute tolerance** | Tolerancia de monto fija. La banda de monto efectiva usa la mayor entre esta y la tolerancia de monto derivada del porcentaje                     |
| **Percent tolerance**  | Tolerancia de monto derivada del porcentaje (p. ej., `0.005` = 0.5%). La banda de monto efectiva usa la mayor entre esta y la tolerancia absoluta |
| **Date window (days)** | Desfase de fecha permitido entre lados (0–3650)                                                                                                   |
| **Match currency**     | Exige igualdad de moneda                                                                                                                          |

<Note>
  Las tolerancias en cero son válidas: ambos valores tienen `0` por defecto, lo que hace que la banda de monto exija igualdad después del redondeo predeterminado `HALF_UP` con escala `2`.
</Note>

La sección **Advanced** añade:

| Campo                                           | Descripción                                                                                                                                                                                                                                      |
| ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Rounding mode**                               | Cómo se redondean los valores antes de comparar: `HALF_UP`, `BANKERS`, `FLOOR`, `CEIL` o `TRUNCATE`                                                                                                                                              |
| **Rounding scale**                              | Decimales para el redondeo (0–10)                                                                                                                                                                                                                |
| **Percentage base**                             | Contra qué lado se mide la tolerancia porcentual: `MAX`, `MIN`, `AVERAGE`, `LEFT` o `RIGHT`                                                                                                                                                      |
| **Match reference**                             | Compara los campos de referencia                                                                                                                                                                                                                 |
| **Case-insensitive reference compare**          | Ignora mayúsculas/minúsculas al comparar referencias                                                                                                                                                                                             |
| **Reference must be present**                   | Cuando **Match reference** está activado, exige un valor de referencia no vacío                                                                                                                                                                  |
| **Match base amount** / **Match base currency** | Empareja también el monto/la moneda base                                                                                                                                                                                                         |
| **Sign mode**                                   | `same`, `opposite` o `ignore` (igual que en EXACT)                                                                                                                                                                                               |
| **Match score** / **Base-match score**          | Valores de configuración aceptados (0–100). Se guardan, pero no determinan la confianza otorgada, que usa los componentes de comparación ponderados y fijos del motor                                                                            |
| **FX variance band**                            | Tolerancia extra entre monedas por encima de la banda de matching, como fracción decimal (`0.0001` = 1 punto básico). Un residual dentro de ella se empareja igualmente y registra una excepción de varianza de tipo de cambio; `0` la desactiva |
| **Lockbox deduction band**                      | Tolerancia de pago corto para matching N:M de lockbox, como fracción decimal del valor de la factura (`0.05` = 5%); `0` la desactiva                                                                                                             |
| **Business-day & timezone**                     | Calendario de festivos y zona horaria para la comparación de fechas                                                                                                                                                                              |
| **Allocation (1:N / N:1)**                      | Ajustes de asignación parcial (mira abajo)                                                                                                                                                                                                       |
| **Match fields**                                | Editor de clave compuesta, igual que en EXACT                                                                                                                                                                                                    |

### DATE\_LAG

Empareja transacciones que ocurren dentro de un número configurable de días entre sí.

Campos de nivel superior:

| Campo                | Descripción                                                                                      |
| -------------------- | ------------------------------------------------------------------------------------------------ |
| **Min days**         | Desfase mínimo de días permitido (0–3650; por defecto `0`)                                       |
| **Max days**         | Desfase máximo de días permitido (0–3650; por defecto `0`)                                       |
| **Direction**        | Qué lado se espera que sea anterior: `ABS` (absoluto), `LEFT_BEFORE_RIGHT` o `RIGHT_BEFORE_LEFT` |
| **Inclusive bounds** | Incluye los límites de días mín./máx.                                                            |

<Note>
  **Max days** debe ser mayor o igual que **Min days**. Los límites exclusivos (**Inclusive bounds** desactivado) con **Min days** en `0` se rechazan, porque excluirían las transacciones del mismo día.
</Note>

La sección **Advanced** añade:

| Campo                                  | Descripción                                                                                                                                                                                                                                  |
| -------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Fee tolerance**                      | Diferencia absoluta máxima entre los montos de las transacciones (por defecto `0`)                                                                                                                                                           |
| **Match currency**                     | Exige igualdad de moneda                                                                                                                                                                                                                     |
| **Match reference**                    | Desactivado por defecto; actívalo para exigir igualdad de referencia                                                                                                                                                                         |
| **Case-insensitive reference compare** | Ignora mayúsculas/minúsculas al comparar referencias                                                                                                                                                                                         |
| **Reference must be present**          | Cuando **Match reference** está activado, exige un valor de referencia no vacío                                                                                                                                                              |
| **Match score**                        | Valor de configuración aceptado (0–100). Se guarda, pero no determina la confianza otorgada, que usa los componentes de comparación ponderados y fijos del motor                                                                             |
| **Business-day & timezone**            | **Holiday calendar** (`US Federal` o `Brazil ANBIMA`), **Timezone** (zona IANA, UTC por defecto) y **Count business days only**: mide el desfase en días hábiles, saltando fines de semana y festivos del calendario. Requiere un calendario |
| **Allocation (1:N / N:1)**             | Ajustes de asignación parcial (mira abajo)                                                                                                                                                                                                   |

Las reglas DATE\_LAG no tienen opciones de monto base (**Match base amount** / **Match base currency** solo están disponibles en EXACT y TOLERANCE).

### FUZZY

Empareja transacciones por similitud aproximada de referencias, con comprobaciones financieras configurables de monto, moneda y fecha. Los emparejamientos fuzzy siempre se proponen para revisión; nunca se confirman automáticamente.

Campos de nivel superior:

| Campo                  | Descripción                                                                                                                                                                                                                                                        |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Minimum similarity** | Umbral de similitud de referencias como razón de 0 a 1 (`0.80` = 80% de similitud). Las referencias por debajo se rechazan; si lo superan y pasan las comprobaciones financieras activadas, el par recibe una puntuación de confianza graduada. Por defecto `0.80` |
| **Match amount**       | Compara los montos de las transacciones                                                                                                                                                                                                                            |
| **Match currency**     | Exige igualdad de moneda                                                                                                                                                                                                                                           |
| **Match date**         | Compara las fechas de las transacciones                                                                                                                                                                                                                            |

La sección **Advanced** añade:

| Campo                         | Descripción                                                                                                                                                                                                              |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Date precision**            | `DAY` o `TIMESTAMP`                                                                                                                                                                                                      |
| **Reference must be present** | Activado por defecto: dos referencias vacías se compararían como totalmente similares                                                                                                                                    |
| **Sign mode**                 | `same`, `opposite` o `ignore`                                                                                                                                                                                            |
| **Match score**               | Valor de configuración aceptado (0–100; por defecto `70`). Se guarda, pero no determina la confianza otorgada; la confianza fuzzy usa los componentes ponderados y fijos del motor y la similitud de referencia graduada |
| **Allocation (1:N / N:1)**    | Ajustes de asignación parcial (mira abajo)                                                                                                                                                                               |

Las reglas FUZZY no tienen opción de igualdad de referencia ni opciones de monto base.

## Ajustes de asignación

***

Las reglas EXACT, TOLERANCE, DATE\_LAG y FUZZY incluyen un bloque **Allocation (1:N / N:1)** dentro de la sección **Advanced**:

| Campo                          | Descripción                                                                                                                                     |
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **Allow partial allocation**   | Empareja un conjunto de partidas contra una contraparte, repartiendo el monto entre ellas; el remanente sin asignar avanza como partida abierta |
| **Fee-aware split**            | Consume la parte bruta de cada pata (neto + comisión) de la contraparte en lugar de solo su monto neto. Desactivado usa solo el neto            |
| **Allocation direction**       | Orden en que se consumen las patas; por defecto de izquierda a derecha                                                                          |
| **Allocation tolerance mode**  | Cómo se acota el residual: `ABS` (monto absoluto) o `PERCENT` (fracción, `0.01` = 1%). Por defecto `ABS`                                        |
| **Allocation tolerance value** | Residual que la división puede dejar; por defecto `0`                                                                                           |
| **Allocate on base amount**    | Usa el monto base en lugar del convertido para la asignación                                                                                    |

## Previsualizar una regla

***

El diálogo de la regla incluye un panel **Preview matches**. Haz clic en **Run preview** para probar la regla antes de guardar. La vista previa es de solo lectura: usa hasta 5.000 transacciones sin emparejar con la extracción completada, forma solo pares 1:1 y no aplica normalización de comisiones, bandas de varianza de FX ni asignación. El panel muestra cuántos pares harían match (**Would match**), los conteos sin emparejar de cada lado y hasta 25 pares candidatos con mayor puntuación. No se guarda nada.

## Editar una regla

***

Haz clic en el botón **Edit rule** de una regla para abrir el diálogo. El selector **Strategy** está deshabilitado: la estrategia queda fija después de la creación. Actualiza los demás campos y haz clic en **Save changes**.

## Reordenar reglas

***

Usa las flechas **Move rule up** / **Move rule down** en la lista para cambiar la precedencia de las reglas. Las reglas se evalúan de arriba abajo; la primera coincidencia gana.

## Eliminar una regla

***

Haz clic en el botón **Delete rule** de una regla y confirma en el diálogo **Delete rule?**. La regla se elimina de la cadena; las demás reglas conservan su orden.
