Conciliación bancaria con IA entre el ERP, el banco y la pasarela
Cuando vendes por varios canales, el dinero pasa por tres sistemas que no se hablan. Esta guía explica cómo cruzar ERP, banco y pasarela con reglas primero y con IA solo donde las reglas no alcanzan.

El problema de las tres fuentes
Cada sistema cuenta una parte de la historia:
- ERP: facturas y recibos con valor bruto.
- Pasarela: transacciones individuales, comisiones, retenciones y devoluciones.
- Banco: abonos agrupados, muchas veces un solo depósito por varios días de ventas.
Un abono de la pasarela en el banco puede corresponder a 200 transacciones, menos comisiones, menos contracargos. Por eso el cruce directo ERP contra banco falla.
Arquitectura en dos saltos
La clave es conciliar en dos pasos. Primero ERP contra pasarela. Luego pasarela contra banco.
Cada salto tiene su propio identificador común. En el primero suele ser el id de orden o la referencia de pago. En el segundo, el id de liquidación o la fecha y el valor neto.
Paso 1: normaliza antes de cruzar
La mitad del trabajo es dejar los datos en un formato común. Define un esquema único:
| Campo | Descripción |
|---|---|
| fuente | erp, pasarela, banco |
| id_externo | identificador en la fuente |
| referencia | orden, factura o código de pago |
| fecha_valor | fecha en que el dinero cuenta |
| valor_bruto | antes de comisiones |
| comision | cobrada por la pasarela |
| retenciones | si aplican |
| valor_neto | lo que llega al banco |
| tercero | NIT o documento |
| descripcion_cruda | texto original |
Normaliza fechas a una zona horaria. Normaliza valores a pesos con dos decimales. Limpia las referencias: mayúsculas, sin espacios, sin prefijos del banco.
Paso 2: reglas deterministas primero
Las reglas resuelven la mayoría de los casos con costo cercano a cero. El orden de aplicación importa:
- Referencia exacta y valor exacto.
- Referencia exacta y diferencia igual a la comisión esperada.
- Id de liquidación de la pasarela igual a la descripción del abono bancario.
- Valor neto exacto y fecha dentro de una ventana, por ejemplo de 1 a 3 días hábiles (supuesto, revisa los plazos de tu pasarela).
Cada regla deja registrado qué regla hizo el cruce. Así auditas después.
Paso 3: IA para lo que queda
La IA entra en tres casos donde las reglas fallan:
- Descripciones bancarias sucias. Textos como "TRANSF ABC SAS PAGO FAC 1234 5678". Un modelo extrae el tercero y los números de factura con más tolerancia que una expresión regular.
- Pagos agrupados o parciales. El modelo propone combinaciones de facturas que suman el valor. El cálculo de la suma lo hace el código; el modelo solo prioriza candidatas por contexto.
- Clasificación de excepciones. Devolución, contracargo, pago duplicado, pago de otro cliente.
Regla de oro: el modelo propone y el código verifica. Ninguna conciliación se cierra porque el modelo "cree" que cuadra. Se cierra cuando la aritmética cuadra.
propuesta = modelo.proponer(movimiento, candidatas)
if sum(f.saldo for f in propuesta.facturas) == movimiento.valor:
marcar_para_aprobacion(propuesta) # o cerrar si la regla lo permite
else:
enviar_a_excepciones(movimiento, motivo="suma no cuadra")Paso 4: comisiones y diferencias
Las diferencias pequeñas son la fuente más frecuente de excepciones. Trátalas así:
- Carga la tabla de comisiones de cada pasarela y calcula la esperada.
- Define una tolerancia explícita. Ejemplo de supuesto: diferencias de hasta $ 100 por redondeo se aceptan y se registran en una cuenta de ajuste.
- Las diferencias mayores siempre van a una persona.
Con un contador define a qué cuentas van comisiones, retenciones y ajustes. Esa parte es contable y tributaria, y conviene que la valide tu revisor o contador.
Paso 5: la bandeja de excepciones
La bandeja define si el sistema se usa o se abandona. Cada excepción muestra:
- El movimiento y sus candidatas.
- La regla o el motivo por el que no cruzó.
- La propuesta del modelo, si hay.
- Un botón para aprobar, corregir o descartar.
Cada corrección humana se guarda. Con el tiempo, esas correcciones se vuelven nuevas reglas deterministas.
Cómo medir
Usa las métricas de la guía de métricas de agentes, adaptadas:
| Métrica | Fórmula |
|---|---|
| Tasa de conciliación automática | movimientos cerrados sin humano / movimientos totales |
| Tasa de error | cruces revertidos / cruces totales |
| Antigüedad de excepciones | días promedio en la bandeja |
| Tiempo de cierre mensual | días entre fin de mes y conciliación completa |
| Costo por movimiento | costo total / movimientos |
Errores comunes
- Cruzar ERP contra banco directamente cuando hay pasarela en medio.
- Dejar que el modelo haga sumas. Las sumas las hace el código.
- Tolerancias implícitas. Si no están escritas, cada persona aplica la suya.
- No guardar la descripción cruda. Sin ella no puedes reprocesar cuando mejoras las reglas.
- Conciliar una vez al mes. Diario reduce las excepciones acumuladas y facilita el cierre.
Checklist
Preguntas frecuentes
¿Necesito acceso por API al banco?
Ayuda, pero no es requisito. Muchos procesos arrancan con la descarga diaria del extracto en un formato estándar y una carga automática. Lo importante es que la carga sea diaria y sin edición manual.
¿La IA reemplaza al contador?
No. La IA reduce el trabajo de cruce. Las decisiones contables, como cuentas de ajuste y tratamiento de retenciones, siguen siendo del contador.
¿Qué hago con pagos de clientes sin referencia?
Busca por tercero y valor. Si hay varias candidatas, el sistema propone y una persona decide. Luego pide al cliente usar la referencia en sus próximos pagos.