La API

REST sobre /api/v1, JSON en snake_case, autenticación con Bearer. Envelope uniforme en todas las respuestas: { success, message, data, errors }.

Autenticación

Crea un token desde el portal (Configuración → Tokens de API) y mándalo en cada petición. El emisor sale del token, nunca del cuerpo: no hay forma de emitir en nombre de otro contribuyente.

curl https://tu-dominio/api/v1/facturas \
  -H "Authorization: Bearer flt_xxxxxxxxxxxx"

Emitir una factura

Describe el hecho —qué vendiste, cuánto, con qué código de IVA— y el sistema calcula, firma y transmite. No envías totales ni tarifas: los calcula el servidor desde el catálogo vigente a la fecha de emisión.

curl -X POST https://tu-dominio/api/v1/facturas \
  -H "Authorization: Bearer flt_xxxxxxxxxxxx" \
  -H "Idempotency-Key: 4f0c1c2e-..." \
  -H "Content-Type: application/json" \
  -d '{
    "establecimiento": "001",
    "punto_emision": "010",
    "receptor": {
      "tipo_identificacion": "05",
      "identificacion": "0912345675",
      "razon_social": "JUAN PEREZ",
      "email": "juan@ejemplo.ec"
    },
    "detalles": [{
      "codigo_principal": "SRV-1",
      "descripcion": "Servicio",
      "cantidad": "1.000000",
      "precio_unitario": "100.000000",
      "impuestos": [{ "codigo": "2", "codigo_porcentaje": "4" }]
    }],
    "pagos": [{ "forma_pago": "20", "total": "115.00" }]
  }'

La Idempotency-Key es obligatoria. Reintentar la misma petición no emite dos facturas — y en facturación electrónica un duplicado es un secuencial quemado y un comprobante que hay que anular.

Sandbox

Tu cuenta arranca en el ambiente de Pruebas del SRI. Lo que emitas ahí no tiene valor fiscal: sirve para comprobar tu integración antes de pasar a producción.

Referencia

Estos endpoints se listan desde las rutas reales del servidor: si aparece aquí, existe.

MétodoRutaQué hace
GET/api/v1/anulaciones/{solicitud}Anulación
POST/api/v1/ats/generarATS — obligación mensual
GET/api/v1/ats/{id}ATS — obligación mensual
GET/api/v1/ats/{id}/xmlATS — obligación mensual
GET/api/v1/cargas-familiaresCargas familiares
POST/api/v1/cargas-familiaresCargas familiares
DELETE/api/v1/cargas-familiares/{id}Cargas familiares
GET/api/v1/certificadosCertificado de firma
POST/api/v1/certificados/subidaCertificado de firma
GET/api/v1/certificados/{id}/firmasCertificado de firma
POST/api/v1/certificados/{id}/revocarCertificado de firma
GET/api/v1/clientesClientes
POST/api/v1/clientesClientes
DELETE/api/v1/clientes/{id}Clientes
GET/api/v1/clientes/{id}Clientes
PUT/api/v1/clientes/{id}Clientes
GET/api/v1/compras
POST/api/v1/compras
GET/api/v1/compras/{id}
GET/api/v1/comprobantes-recibidosComprobantes de tus proveedores
GET/api/v1/comprobantes-recibidos/cargas/{id}Comprobantes de tus proveedores
POST/api/v1/comprobantes-recibidos/importar-txtComprobantes de tus proveedores
PATCH/api/v1/comprobantes-recibidos/{id}Comprobantes de tus proveedores
GET/api/v1/facturasFacturas (01)
POST/api/v1/facturasFacturas (01)
GET/api/v1/facturas/{ulid}Facturas (01)
POST/api/v1/facturas/{ulid}/anularFacturas (01)
POST/api/v1/facturas/{ulid}/reanudarFacturas (01)
POST/api/v1/facturas/{ulid}/reenviar-emailFacturas (01)
POST/api/v1/facturas/{ulid}/retransmitirFacturas (01)
GET/api/v1/facturas/{ulid}/rideFacturas (01)
GET/api/v1/facturas/{ulid}/xmlFacturas (01)
GET/api/v1/gastosGastos personales
POST/api/v1/gastosGastos personales
GET/api/v1/gastos/proyeccionGastos personales
DELETE/api/v1/gastos/{id}Gastos personales
PUT/api/v1/gastos/{id}Gastos personales
GET/api/v1/guias-remisionGuías de remisión (06)
POST/api/v1/guias-remisionGuías de remisión (06)
GET/api/v1/guias-remision/{ulid}Guías de remisión (06)
POST/api/v1/guias-remision/{ulid}/anularGuías de remisión (06)
POST/api/v1/guias-remision/{ulid}/reanudarGuías de remisión (06)
POST/api/v1/guias-remision/{ulid}/reenviar-emailGuías de remisión (06)
POST/api/v1/guias-remision/{ulid}/retransmitirGuías de remisión (06)
GET/api/v1/guias-remision/{ulid}/rideGuías de remisión (06)
GET/api/v1/guias-remision/{ulid}/xmlGuías de remisión (06)
GET/api/v1/inventario
POST/api/v1/inventario/ajustes
GET/api/v1/inventario/{producto}
GET/api/v1/liquidaciones-compraLiquidaciones de compra (03)
POST/api/v1/liquidaciones-compraLiquidaciones de compra (03)
GET/api/v1/liquidaciones-compra/{ulid}Liquidaciones de compra (03)
POST/api/v1/liquidaciones-compra/{ulid}/anularLiquidaciones de compra (03)
POST/api/v1/liquidaciones-compra/{ulid}/reanudarLiquidaciones de compra (03)
POST/api/v1/liquidaciones-compra/{ulid}/reenviar-emailLiquidaciones de compra (03)
POST/api/v1/liquidaciones-compra/{ulid}/retransmitirLiquidaciones de compra (03)
GET/api/v1/liquidaciones-compra/{ulid}/rideLiquidaciones de compra (03)
GET/api/v1/liquidaciones-compra/{ulid}/xmlLiquidaciones de compra (03)
POST/api/v1/movil/auth/login
POST/api/v1/movil/auth/logout
GET/api/v1/movil/auth/me
POST/api/v1/movil/auth/refresh
GET/api/v1/movil/catalogos
GET/api/v1/movil/contexto
GET/api/v1/movil/dispositivos
DELETE/api/v1/movil/dispositivos/{id}
POST/api/v1/movil/empresa-activa
GET/api/v1/movil/empresas
POST/api/v1/movil/error
PUT/api/v1/movil/password
PUT/api/v1/movil/perfil
GET/api/v1/notas-creditoNotas de crédito (04)
POST/api/v1/notas-creditoNotas de crédito (04)
GET/api/v1/notas-credito/{ulid}Notas de crédito (04)
POST/api/v1/notas-credito/{ulid}/anularNotas de crédito (04)
POST/api/v1/notas-credito/{ulid}/reanudarNotas de crédito (04)
POST/api/v1/notas-credito/{ulid}/reenviar-emailNotas de crédito (04)
POST/api/v1/notas-credito/{ulid}/retransmitirNotas de crédito (04)
GET/api/v1/notas-credito/{ulid}/rideNotas de crédito (04)
GET/api/v1/notas-credito/{ulid}/xmlNotas de crédito (04)
GET/api/v1/notas-debitoNotas de débito (05)
POST/api/v1/notas-debitoNotas de débito (05)
GET/api/v1/notas-debito/{ulid}Notas de débito (05)
POST/api/v1/notas-debito/{ulid}/anularNotas de débito (05)
POST/api/v1/notas-debito/{ulid}/reanudarNotas de débito (05)
POST/api/v1/notas-debito/{ulid}/reenviar-emailNotas de débito (05)
POST/api/v1/notas-debito/{ulid}/retransmitirNotas de débito (05)
GET/api/v1/notas-debito/{ulid}/rideNotas de débito (05)
GET/api/v1/notas-debito/{ulid}/xmlNotas de débito (05)
GET/api/v1/pagos
POST/api/v1/pagos/{id}/pagar
GET/api/v1/ping
GET/api/v1/planes
GET/api/v1/productosProductos
POST/api/v1/productosProductos
DELETE/api/v1/productos/{id}Productos
GET/api/v1/productos/{id}Productos
PUT/api/v1/productos/{id}Productos
GET/api/v1/proformas
POST/api/v1/proformas
DELETE/api/v1/proformas/{id}
GET/api/v1/proformas/{id}
PUT/api/v1/proformas/{id}
POST/api/v1/proformas/{id}/convertir
GET/api/v1/proveedores
POST/api/v1/proveedores
DELETE/api/v1/proveedores/{id}
GET/api/v1/proveedores/{id}
PUT/api/v1/proveedores/{id}
GET/api/v1/reportes/compras
GET/api/v1/reportes/iva
GET/api/v1/reportes/ventas
GET/api/v1/retencionesComprobantes de retención (07)
POST/api/v1/retencionesComprobantes de retención (07)
GET/api/v1/retenciones/{ulid}Comprobantes de retención (07)
POST/api/v1/retenciones/{ulid}/anularComprobantes de retención (07)
POST/api/v1/retenciones/{ulid}/reanudarComprobantes de retención (07)
POST/api/v1/retenciones/{ulid}/reenviar-emailComprobantes de retención (07)
POST/api/v1/retenciones/{ulid}/retransmitirComprobantes de retención (07)
GET/api/v1/retenciones/{ulid}/rideComprobantes de retención (07)
GET/api/v1/retenciones/{ulid}/xmlComprobantes de retención (07)
GET/api/v1/suscripcion

¿Listo?

Crear cuenta y sacar un token