FISCALISTO / API
Contabilidad
Las pólizas, la balanza de comprobación, los estados financieros, el catálogo de cuentas, la contabilidad electrónica para el SAT y la DIOT de cada emisor, armadas de sus CFDI.
Con las facturas que el emisor timbró y las que recibió (de las descargas del SAT), Fiscalisto arma su contabilidad de cada mes: las pólizas de sus CFDI, sus pagos, su nómina y la depreciación de sus activos; la balanza; el estado de resultados y el balance general; el catálogo de cuentas con el código agrupador del SAT; los XML de la contabilidad electrónica y la DIOT. No incluye movimientos de banco sin CFDI ni provisiones.
Pólizas
curl "https://api.fiscalisto.com/v1/accounting/journal_entries?month=2026-10" \
-H "Authorization: Bearer $FISCALISTO_API_KEY"Las pólizas de diario del mes (D-202610-00001…), en orden de fecha, con sus cargos y abonos en pesos, que siempre cuadran. type dice de qué es cada una:
type | De qué | Cargo | Abono |
|---|---|---|---|
invoice | Factura emitida | Clientes (o Caja o Bancos si es PUE), retenciones que le hicieron | Ventas, IVA trasladado (cobrado si es PUE, no cobrado si es PPD) |
invoice | Factura recibida | El gasto de su categoría (o el activo fijo, usos I01 a I08), IVA acreditable | Proveedores (o Caja o Bancos si es PUE), retenciones por pagar |
invoice | Nota de crédito | Al revés que la factura | |
payment_received | Pago de un complemento que emitió | Bancos, pérdida cambiaria | Clientes, utilidad cambiaria; el IVA pasa de no cobrado a cobrado |
payment_made | Pago de un complemento que recibió | Proveedores | Bancos; el IVA pasa de pendiente a pagado |
payroll | Recibo de nómina | Sueldos y otros pagos | ISR retenido, otras retenciones, Bancos por el neto |
depreciation | La depreciación del mes | Depreciación de cada tipo de activo | Su depreciación acumulada |
Un PUE se registra cobrado o pagado según su forma de pago: efectivo en Caja, transferencia, cheque o tarjeta en Bancos, y una recibida pagada con tarjeta de crédito en Tarjetas de crédito por pagar. La depreciación es en línea recta con las tasas del artículo 34 de la LISR, desde el mes siguiente al inicio de uso, sin INPC.
Cada póliza dice de qué documento sale (uuid, e invoice si es un CFDI que timbró este emisor); la de depreciación no tiene uuid ni tax_id. Un CFDI en otra moneda se registra con su tipo de cambio; sin él, no se registra. Hasta 1,000 pólizas por página con limit, y la siguiente con starting_after. El número de una póliza es su lugar en el mes: un CFDI de ese mes que llega después (por ejemplo, en una descarga del SAT) recorre los que siguen, así que para relacionar una póliza con su documento use uuid, no id.
Balanza y catálogo
GET /v1/accounting/trial_balance?month=2026-10 da el saldo inicial, los cargos, los abonos y el saldo final de cada cuenta. Los saldos iniciales se acumulan desde el primer CFDI, o desde los saldos iniciales que capture en Estados financieros de la app (las cuentas de resultados, desde enero), y los resultados de cada año anterior se cierran a capital, así que cargos y abonos siempre suman lo mismo.
Estados financieros
curl "https://api.fiscalisto.com/v1/accounting/financial_statements?month=2026-10" \
-H "Authorization: Bearer $FISCALISTO_API_KEY"El estado de resultados del mes y del año hasta ese mes (income_statement), y el balance general al cierre del mes (balance_sheet), leídos de la misma balanza. Cada sección del estado de resultados (ingresos, costos, gastos, financiamiento, otros) suma en positivo lo que aumenta la utilidad y en negativo lo que la reduce, y se agrupa por el primer nivel del código agrupador con sus cuentas. En el balance, difference es activo menos pasivo y capital: 0 cuando los libros cuadran. missing_invoices cuenta los pagos de facturas que no están en Fiscalisto y no se registraron.
Cruce con lo declarado
curl "https://api.fiscalisto.com/v1/accounting/cross_checks?year=2026" \
-H "Authorization: Bearer $FISCALISTO_API_KEY"Cada mes del año cuya declaración mensual ya venció (el día 17 del mes siguiente) compara lo que el emisor declaró con lo que dicen sus CFDI: vat_charged (IVA trasladado), vat_creditable (IVA acreditable), vat_withheld (IVA que le retuvieron, de sus facturas emitidas y de las constancias de retenciones que recibió) e isr_income (ingresos para ISR). En los meses en que el emisor retuvo, también sus retenciones: isr_withheld_salaries (ISR por salarios y asimilados contra sus recibos de nómina, por fecha de pago), isr_withheld_suppliers (ISR por honorarios y arrendamiento contra las facturas recibidas que pagó) y vat_withheld_suppliers (IVA retenido a proveedores). Si la declaración del mes no trae una retención que sus CFDI sí tienen, declared es 0 y el cruce differs. Lo declarado sale de sus declaraciones del SAT, así que pida antes POST /v1/sat_declarations/refresh; este cruce no consulta al SAT y no cuesta timbres.
Cada cruce dice matches (hasta $2 de diferencia, el redondeo de las declaraciones en pesos enteros), differs, not_filed (no hay declaración de ese mes) o unreadable (la declaración no trae la cifra en un renglón reconocible: declared es null, nunca 0). Un mes con complementaria toma, por impuesto, la más reciente que lo trae. Cuando la declaración dice aparte lo que llegó sin CFDI (en isr_income, los ingresos nominales adicionales; en vat_charged, el IVA al 16% por encima del que el SAT precargó de sus facturas), eso viene en declared_without_cfdi y solo el resto se compara: difference es declared menos declared_without_cfdi menos invoiced. vat_balance_in_favor suma el IVA a favor del año y lo que se acreditó después, y tax_regimes dice con qué régimen facturó y si está en su constancia.
Los CFDI de una cifra
curl "https://api.fiscalisto.com/v1/accounting/cross_checks/cfdi?month=2026-09&key=vat_creditable" \
-H "Authorization: Bearer $FISCALISTO_API_KEY"Para ver por qué una cifra differs, GET /v1/accounting/cross_checks/cfdi con el mes (month, cuya declaración ya venció) y la cifra (key: vat_charged, vat_creditable, vat_withheld, isr_income, isr_withheld_salaries, isr_withheld_suppliers o vat_withheld_suppliers) da los CFDI que forman lo facturado (invoiced), con los mismos cálculos de Impuestos y de mayor a menor. Cada uno trae su uuid, la contraparte (tax_id, name), la fecha y lo que aporta (amount). En isr_withheld_salaries son los recibos de nómina del mes (por fecha de pago) con el ISR retenido a cada empleado, y en las retenciones a proveedores las facturas recibidas que pagó en el mes. type es invoice (factura PUE, en su mes), credit_note (nota de crédito: resta), payment (lo que se pagó en el mes de una factura PPD; uuid es el de la factura) o withholding_certificate (en vat_withheld, una constancia de retenciones que recibió, como las de plataformas de hospedaje, en el mes en que se emitió; uuid es el de la constancia). La suma de cfdi más adjustment es invoiced. adjustment es lo que Impuestos agrega sobre los CFDI: en vat_creditable, la proporción de gastos comunes, el IVA retenido enterado del mes anterior y las importaciones. Trae también status, declared y difference de esa cifra, como el cruce del año. Tampoco consulta al SAT ni cuesta timbres.
Catálogo
GET /v1/accounting/accounts es el catálogo de cuentas, cada una con su código agrupador del Anexo 24.
Contabilidad electrónica
curl "https://api.fiscalisto.com/v1/accounting/electronic_accounting?month=2026-10" \
-H "Authorization: Bearer $FISCALISTO_API_KEY" -o contabilidad.zipUn ZIP con el catálogo (CT) y la balanza (BN) en el formato 1.3 del Anexo 24, cada uno en su ZIP con el nombre que espera el Buzón Tributario (RFC + año + mes + tipo).
- Una balanza que corrige otra ya enviada:
type=complementaryy el día en que se modificó enmodified_on(saleBC). - Las pólizas (
PL) se entregan cuando el SAT las pide: agreguejournal_requestcon el motivo (AFacto de fiscalización oFCfiscalización compulsa, conorder_number;DEdevolución oCOcompensación, conprocedure_number).
DIOT
GET /v1/accounting/diot?month=2026-09 dice lo efectivamente pagado a cada proveedor en el mes (facturas PUE y complementos de pago que recibió), con sus notas de crédito como devoluciones, una línea por proveedor y tipo de operación. blacklisted marca a los proveedores en la lista 69-B definitiva, y warnings lo que conviene revisar.
GET /v1/accounting/diot/file?month=2026-09 es el archivo TXT de carga masiva de la DIOT 2025, listo para la plataforma del SAT. Con group_small_suppliers=true junta en una línea global a los proveedores de hasta $50,000 en el mes, mientras no pasen del 10 % de lo pagado (regla 4.5.2 de la RMF). Un mes sin pagos a proveedores responde diot_empty: esa DIOT se presenta sin operaciones desde el portal del SAT.
La DIOT sale de las facturas recibidas: pida antes las del mes con POST /v1/sat_downloads. Se arma desde enero de 2025, con el formato de ese año.
Conciliación bancaria
Mande los depósitos de la cuenta del emisor y Fiscalisto le dice qué factura pagó cada uno; al conciliarlos, sus facturas quedan pagadas.
Cancelar y sustituir
Cómo se cancela un CFDI ante el SAT, cuándo debe aceptarlo el cliente y cómo corregir una factura con otra que la sustituye.