Ir al contenido

Introducción

facto es una API HTTP de facturación electrónica para el esquema offline del SRI de Ecuador. Tu sistema manda un JSON; facto genera el XML, lo firma con el certificado del contribuyente, lo envía al SRI, consigue la autorización y entrega el comprobante al comprador.

En el esquema offline el emisor genera y firma el comprobante por su cuenta, y el SRI lo autoriza después. La clave de acceso —49 dígitos que incluyen la fecha, el RUC y un código numérico— se calcula al emitir y es, una vez autorizado, el propio número de autorización.

El flujo completo por dentro:

tu JSON → XML según el XSD del SRI → firma XAdES-BES → recepción SRI
→ autorización SRI → XML autorizado + RIDE (PDF) → correo al comprador

Tú solo ves dos pasos: un POST que responde 202 al instante y un estado que unos segundos después dice AUTORIZADO.

  • La numeración. Declaras una vez desde qué número continúa cada punto de emisión y facto lleva el secuencial, incluso con emisiones concurrentes.
  • Los totales. Mandas cantidades y precios unitarios; los subtotales, el IVA por tarifa y el total salen cuadrados como los exige el SRI.
  • La tarifa histórica de IVA. Una nota de crédito sobre una factura de 2023 lleva la tarifa de entonces, no la de hoy. Se resuelve por la fecha del documento original.
  • Los reintentos. Si el SRI está caído, la cola reintenta con backoff. Tu petición ya respondió; nada se pierde.
  • La entrega. XML y RIDE por correo al comprador, con la marca del emisor.
Ambiente URL base Llaves
Pruebas https://api-test.facto.lat/v1 fk_test_...
Producción https://api.facto.lat/v1 fk_live_...

Una llave solo funciona contra su ambiente. En pruebas el SRI autoriza de verdad (contra su ambiente de certificación), así que la integración se prueba completa antes de emitir un solo comprobante real.

  1. Una llave de API (te la entrega el operador del servicio, empieza por fk_test_).
  2. El RUC del emisor asignado a tu cuenta.
  3. El certificado de firma .p12 del contribuyente y su contraseña — se sube una vez por la API y queda cifrado.

Con eso, el inicio rápido te lleva de cero a una factura autorizada en unos minutos.

Además de esta guía, la API publica su contrato en Swagger: https://api-test.facto.lat/docs. Cada operación trae ejemplos que autorizan de verdad y la lista completa de errores posibles. Lo que leas aquí y lo que diga Swagger nunca divergen: salen del mismo código.