> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://ayuda.clay.cl/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Generación automática de asientos con Cassius

# Generación automática de asientos con Cassius
## 1. Al crear un match se genera el asiento de match
Cada vez que se crea un match, Cassius intentará generar automáticamente el asiento contable asociado.
Este flujo aplica a:
* Automatch masivo.
* Match manual.
* Importaciones de F29.
* Importaciones de Previred.
* Match desde una obligación.
* Organizaciones especiales y Chipax.
### ¿Qué condiciones deben cumplirse?
Para que Cassius pueda generar el asiento, se deben cumplir las siguientes condiciones:

* ✅ Cassius debe estar activo y tener una fecha de inicio definida.
* ✅ Los abonos o cargos deben estar habilitados.
* ✅ El plan de cuentas debe estar configurado.
* ✅ El mes contable debe estar abierto.
* ✅ La fecha del movimiento debe estar entre la fecha de inicio de Cassius y la fecha actual.
* ✅ Debe existir una regla contable de abono o cargo que determine la cuenta contable correspondiente.
* ✅ El movimiento no debe tener un asiento generado previamente.

## 2. Al crear una obligación se genera el asiento de emisión
Cuando se crea una obligación, Cassius intentará generar automáticamente el **asiento de emisión** correspondiente.

### ⚠️ Importante: Oficina de Partes
En **Oficina de Partes**, el comportamiento es diferente.
Al seleccionar **Crear obligación**, el documento queda en una bandeja temporal y **todavía no se genera el asiento**.
El asiento se genera cuando el documento se **envía a Obligaciones** mediante la acción **Enviar a Obligaciones**.

### ¿Qué condiciones deben cumplirse?
Para que Cassius pueda generar el asiento de emisión:

* ✅ Cassius debe estar activo y tener una fecha de inicio definida.
* ✅ El tipo de emisión debe estar habilitado para el documento: DTE emitidos, DTE recibidos, honorarios, devoluciones, sueldos, F29 o internacional.
* ✅ El plan de cuentas debe estar configurado.
* ✅ El mes contable debe estar abierto.
* ✅ La obligación debe ser nueva.
* ✅ El documento debe ser contabilizable. Las guías de despacho no generan asiento.
* ✅ La fecha de emisión debe estar entre la fecha de inicio de Cassius y la fecha actual.
* ✅ El documento no debe tener marcas de rechazado, pendiente, con problema o fuera del RCV.
* ✅ Los montos deben cuadrar: **Total = Neto + Exento + IVA**.
* ✅ La contraparte debe estar habilitada y contar con una regla contable. También es posible asignar manualmente la cuenta en la obligación.

## ⚙️ ¿Qué ocurre si no se puede generar el asiento?
La generación de asientos en ambos flujos funciona bajo un modelo **best-effort**.
Esto significa que Cassius intenta generar el asiento en el momento en que ocurre el evento, pero si alguna de las condiciones necesarias no se cumple:
* El match o la obligación **se crean igualmente**.
* El usuario **no verá un error que impida completar la operación**.
* El proceso **Scheduled** podrá generar posteriormente el asiento que haya quedado pendiente.
De esta forma, la creación del match u obligación no se bloquea por un problema en la generación del asiento.

## ⚠️ Reglas contables que debes considerar
Hay dos aspectos importantes que pueden explicar por qué un asiento no se genera inmediatamente.

### 1. La contraparte debe tener una regla contable
Para construir un asiento, Cassius necesita determinar las cuentas que lo componen:
* **Cuenta de la contraparte.**
* **Cuenta de gasto o ingreso (neto).**
* **Cuenta de IVA**, cuando corresponda.

Las cuentas de **contraparte e IVA** se obtienen automáticamente desde el plan de cuentas.
En cambio, la **cuenta de gasto o ingreso** se obtiene a partir de la regla contable configurada para la contraparte.
Por lo tanto, si la contraparte no tiene una regla contable que permita determinar esta cuenta, **Cassius no podrá construir el asiento en ese momento**. El match o la obligación sí se crearán y el proceso Scheduled podrá intentar generarlo posteriormente.

```
💡 Tip: Las boletas de honorarios normalmente cuentan con una regla general, por lo que suelen generar el asiento correctamente. En el caso de los DTE, generalmente es necesario configurar una regla contable específica.
```

### 2. Las reglas contables son específicas según la dirección
Las reglas contables distinguen entre **compras y ventas**.
Por esto:
* Una regla configurada para **ventas** no permite contabilizar una **compra**.
* Una regla configurada para **compras** no permite contabilizar una **venta**.

Si un asiento no se genera y la contraparte tiene una regla configurada, revisa que la regla corresponda a la **dirección del documento o movimiento** que estás intentando contabilizar.