Nuevo · API REST para developers

Timbra CFDI 4.0 desde tu código

La infraestructura de facturación detrás de CFDI Express, ahora como API. Facturas PUE, PPD y globales, complementos de pago, cancelaciones y PDF del SAT — con convenciones estilo Stripe y sandbox gratis.

tu-primer-timbre.sh
# Timbra una factura PUE
$ curl https://api.cfdi.express/v1/invoices \
  -H "Authorization: Bearer sk_test_…" \
  -H "Idempotency-Key: orden-1042" \
  -d '{ "merchantId": "mer_…",
       "receptor": { "rfc": "XAXX010101000", … },
       "conceptos": [ … ] }'

# ← 201 Created
{ "id": "inv_9f2…", "status": "stamped",
  "uuid": "A1B2C3…", "pdfUrl": "https://…",
  "xmlUrl": "https://…" }
1.57sp95 de timbrado verificado bajo ráfaga
52k+claves de producto SAT en catálogo local
$0.70MXN por timbre. Sin mensualidad
0dobles timbres en 35 stamps concurrentes

Todo el ciclo de vida del CFDI, en una API

De la emisión a la cancelación. Sin portales, sin Excel, sin calcular impuestos a mano.

🧾Core

Facturas PUE, PPD y Globales

Timbrado CFDI 4.0 nominativo y global (público en general) con las reglas del SAT validadas del lado del servidor. Motor de impuestos incluido: tú no calculas nada.

💳Core

Complementos de Pago REP

Pagos 2.0 con numParcialidad y saldos calculados en servidor. Sobrepagos, pagos fuera de secuencia y facturas liquidadas se rechazan solos.

Core

Cancelaciones con Acuse

Motivos 01–04, folioSustitucion cuando aplica y el acuse XML del SAT guardado con URL firmada. Cancelar un REP restaura el saldo de la factura.

📄Core

PDF y XML Propios

PDF Anexo 20 con QR, sellos y cadena original, generado por nosotros. XML, PDF y ZIP servidos como URLs firmadas de 15 minutos.

📚Core

Catálogos SAT Locales

52,513 claves de producto (con sinónimos), 2,418 unidades, usos CFDI, regímenes fiscales y formas de pago. Sin lookups externos.

🏢Pro

Multi-CSD y Multi-RFC

Varios emisores por cuenta, cada uno con su CSD validado (vigencia, llave↔cert, RFC) y encriptado con AES-256-GCM. Todos activos a la vez.

🔁Pro

Idempotencia Real

Idempotency-Key persistente por cuenta y modo: un replay devuelve la respuesta original, duplicados concurrentes reciben 409 y misma llave con otro body, 422.

🔐DX

Convenciones Estilo Stripe

Llaves sk_test_/sk_live_, livemode en cada recurso, errores problem+json, IDs opacos y paginación por cursor. Si usaste Stripe, ya sabes usar esto.

DX

OpenAPI + Docs Interactivas

Spec OpenAPI generada del código con docs interactivas para probar cada endpoint desde el navegador. Errores con subcódigos específicos.

De registro a timbre, en minutos

01

Crea tu cuenta

Regístrate y obtén tu llave sk_test_ al instante, con saldo de prueba para el sandbox.

02

Sube tu CSD

POST /v1/merchants con tus archivos .cer y .key. Validamos vigencia, llave↔cert y RFC antes de guardarlos encriptados.

03

Timbra tu primer CFDI

POST /v1/invoices con emisor, receptor y conceptos. El motor de impuestos calcula todo por ti.

04

Entrega XML y PDF

Recibe URLs firmadas del XML, PDF y ZIP listas para enviar a tu cliente o guardar en tu sistema.

Requests predecibles, respuestas claras

JSON en, JSON out. Errores problem+json con subcódigos específicos para que tu código sepa exactamente qué pasó.

POST /v1/invoicesRequest
{
  "merchantId": "mer_8xk2…",
  "tipoDeComprobante": "I",
  "metodoPago": "PUE",
  "formaPago": "03",
  "receptor": {
    "rfc": "EKU9003173C9",
    "nombre": "ESCUELA KEMPER URGATE",
    "regimenFiscal": "601",
    "domicilioFiscal": "76000",
    "usoCfdi": "G03"
  },
  "conceptos": [{
    "claveProdServ": "01010101",
    "claveUnidad": "E48",
    "descripcion": "Desarrollo de software",
    "cantidad": 1,
    "valorUnitario": 1500.00,
    "objetoImp": "02"
  }]
}
201 CreatedResponse
{
  "id": "inv_9f2c41…",
  "livemode": false,
  "status": "stamped",
  "uuid": "A1B2C3D4-…-000000000042",
  "serie": "FA",
  "folio": "1042",
  "total": "1740.00",
  "chargedCentavos": 70,
  "pdfUrl": "https://files.cfdi.express/…?sig=…",
  "xmlUrl": "https://files.cfdi.express/…?sig=…",
  "zipUrl": "https://files.cfdi.express/…?sig=…",
  "created": "2026-08-01T18:22:10.512Z"
}

Endpoints que resuelven el ciclo completo

Estos son los más usados. La referencia completa vive en la documentación interactiva.

POST/v1/invoicesTimbra facturas PUE, PPD o globales
GET/v1/invoicesLista con filtros y paginación por cursor
POST/v1/invoices/{id}/paymentsComplemento de pago REP (Pagos 2.0)
POST/v1/invoices/{id}/cancelCancela con motivo y acuse del SAT
POST/v1/merchantsRegistra un emisor y sube su CSD
GET/v1/catalogs/products52k+ claves de producto del SAT
GET/v1/balanceSaldo, precio por timbre y timbres restantes
POST/v1/billing/checkout_sessionsRecarga saldo con tarjeta vía Stripe

Hecha para producción, no para demos

La misma infraestructura que timbra para las tiendas Shopify de CFDI Express, endurecida bajo pruebas de ráfaga.

🛡️

Cero dobles timbres

Los timbres nunca se reintentan a ciegas: una falla ambigua con el PAC marca el documento para reconciliación manual y mantiene tu saldo reservado. Verificado con 35 timbres concurrentes: contabilidad exacta.

💰

Saldo con reembolso automático

Cada timbre reserva saldo y lo confirma al timbrar. Si el SAT rechaza o el PAC falla, el reembolso es automático — con ledger completo para auditar cada centavo.

🚦

Rate limit y guardrails

300 requests por minuto por llave con 429 + Retry-After, límite de body de 1 MB y un registro de auditoría en cada mutación. Predecible bajo carga.

🔒

CSDs encriptados

Tus certificados se guardan con encriptación de sobre AES-256-GCM. La validación es local: vigencia, match llave↔certificado, RFC y rechazo de FIEL con subcódigos claros.

Paga solo por lo que timbras

Sin mensualidad, sin mínimos, sin contratos. Saldo prepagado que recargas cuando lo necesitas.

Sandbox gratis

Pay as you go

Para cualquier volumen

$0.70MXN / timbre
Recargas de $100 a $50,000 MXN con tarjeta, vía Stripe
  • Sandbox gratis e ilimitado con sk_test_
  • Facturas PUE, PPD y globales
  • Complementos de pago y cancelaciones incluidos
  • PDF + XML + ZIP con URLs firmadas
  • Reembolso automático si el SAT rechaza
  • Multi-CSD y multi-RFC sin costo extra
  • Catálogos SAT sin límite de consultas
Empezar con el sandbox

¿Vendes en Shopify? La app tiene planes desde $15 USD/mes — ver planes de la app

Todo lo que necesitas saber

No. La API de CFDI Express es independiente de Shopify: cualquier sistema que pueda hacer HTTPS puede timbrar — ERPs, tiendas propias, apps móviles o backends internos. Si vendes en Shopify, la app ya incluye todo integrado.

Tu primer timbre, en minutos.

Sandbox gratis. Sin tarjeta. Llaves sk_test_ al instante.