Qué falta
Una plantilla en src/finance/extractors/bank_templates.py para Citibanamex (tarjeta de crédito).
Lo que sabemos del formato
PDF con texto nativo. Los cargos vienen con fecha de operación y fecha de cargo (dos fechas por línea: hay que decidir cuál es la contable, igual que se hizo con Nu). Meses sin intereses aparecen como cargos parciales con leyenda MSI.
Por qué importa
Una de las tarjetas más extendidas; el problema de las dos fechas ya se resolvió una vez y la solución es reutilizable.
Cómo ayudar (no hace falta saber Python)
- Si tienes un estado de este banco: pega aquí un fragmento ficticio de 5 a 10 líneas con el mismo formato (cambia nombre, cifras, referencias). Incluye las líneas de saldo inicial y saldo final si existen. Con eso ya se puede escribir la plantilla.
- Si sabes Python: añade la entrada en
BANKS, elige estrategia (signed, cargo_abono, saldo o función propia) y crea tests/test_rNN_<banco>.py con ese fragmento ficticio. CONTRIBUTING.md tiene el paso a paso.
Criterio de cierre
Nunca un estado real, ni recortado. Ver SECURITY.md.
Qué falta
Una plantilla en
src/finance/extractors/bank_templates.pypara Citibanamex (tarjeta de crédito).Lo que sabemos del formato
PDF con texto nativo. Los cargos vienen con fecha de operación y fecha de cargo (dos fechas por línea: hay que decidir cuál es la contable, igual que se hizo con Nu). Meses sin intereses aparecen como cargos parciales con leyenda
MSI.Por qué importa
Una de las tarjetas más extendidas; el problema de las dos fechas ya se resolvió una vez y la solución es reutilizable.
Cómo ayudar (no hace falta saber Python)
BANKS, elige estrategia (signed,cargo_abono,saldoo función propia) y creatests/test_rNN_<banco>.pycon ese fragmento ficticio. CONTRIBUTING.md tiene el paso a paso.Criterio de cierre
detect_bankidentifica el estado por su texto.OKsobre el fixture.