Skip to content

Endpoints

Los endpoints de comprobantes requieren Authorization: Bearer <api-key> y X-Issuer-Id: <issuer-id>. La configuración del tenant, la gestión de emisores y la gestión de llaves solo requieren Authorization: Bearer <api-key>. El registro y la verificación de correo son públicos.

Run in Postman

Registro (público)

MétodoRutaDescripción
POST/v1/registerAutoservicio: crea tenant + emisor + API key de sandbox. Solo para cuentas nuevas — si el correo ya existe, rechaza con 409 CONFLICT (usa /v1/recover en su lugar).
POST/v1/recoverRecupera el acceso a una cuenta existente con el mismo certificado P12 — revoca y reemite la llave del entorno actual solo si el certificado coincide con el archivado
GET/v1/verify-email/checkComprueba si un token de verificación es válido, sin consumirlo — seguro para que lo precarguen escáneres de enlaces de correo
POST/v1/verify-emailConfirma la verificación con el token — activa el tenant; llamar solo ante una acción explícita del usuario
GET/v1/verify-emailEndpoint heredado que combina comprobación y consumo, mantenido por compatibilidad hacia atrás
POST/v1/resend-verificationReenvía el correo de verificación (regenera el token)

Acuerdos (público)

MétodoRutaDescripción
GET/v1/agreementsLista la versión publicada actual de cada tipo de documento (TERMS, PRIVACY, DPA) — lee version de aquí y pásalo como termsVersion al aceptar vía POST /v1/tenants/agreements
GET/v1/agreements/:typeObtiene el documento actual renderizado como HTML — insértalo en un modal o página de tu UI de registro

Planes (público)

MétodoRutaDescripción
GET/v1/tiersCatálogo completo de planes de suscripción — cuota, precio mensual/anual, tarifa de excedente, tipos de comprobante, límites

Pagos (autenticado)

MétodoRutaDescripción
PATCH/v1/payments/:id/proofSube el comprobante de una transferencia bancaria SPI para un pago de suscripción pendiente — hasta 5 archivos por solicitud, nunca se sobrescribe lo ya subido. Un pago REJECTED puede reenviarse; solo VERIFIED bloquea nuevas subidas.
GET/v1/payments/:id/proofsLista todos los archivos de comprobante activos subidos para un pago
GET/v1/payments/:id/proofs/:proofIdDescarga un archivo de comprobante específico
DELETE/v1/payments/:id/proofs/:proofIdElimina (soft-delete) un archivo de comprobante de tu propia vista (tu proveedor aún puede verlo)

Suscripciones (autenticado)

MétodoRutaDescripción
POST/v1/subscriptionsInicia una suscripción paga para el tenant autenticado — funciona en sandbox o después de la promoción, requiere correo verificado
GET/v1/subscriptions/meHistorial completo de suscripción/pagos, del más reciente al más antiguo, con rejection_reason_code cuando aplica — las revisiones de pago y las renovaciones también disparan notificaciones, pero la activación en sí no, así que esta sigue siendo la forma en que un tenant consulta su estado
POST/v1/subscriptions/change-tierSube de plan (inmediato, pago prorrateado) o baja de plan (programado, sin pago) una suscripción ACTIVE existente — usa DELETE abajo para cancelar por completo
DELETE/v1/subscriptionsPrograma una cancelación al final del período — baja el tenant a FREE sin reembolso cuando pasa current_period_end

Tenants (autenticado)

MétodoRutaDescripción
GET/v1/tenants/meResuelve el tenant (id, correo, plan, estado, cuota, entorno, aceptación de acuerdos) para la API key autenticada
PATCH/v1/tenants/languageActualiza el idioma preferido para los correos salientes
POST/v1/tenants/promotePromueve el tenant a producción — revoca todas las llaves de sandbox y crea llaves de producción equivalentes
GET/v1/tenants/agreementsVerifica si algún acuerdo necesita aceptación — devuelve qué tipos están desactualizados. Genera instancias PENDING de forma diferida para cualquier versión de plantilla nueva; los integradores externos deberían consultar esto periódicamente
POST/v1/tenants/agreementsAcepta todos los acuerdos PENDING — requerido antes de promover a producción
GET/v1/tenants/agreements/historyLista todas las instancias de acuerdo personalizadas del tenant, con estado y marcas de tiempo de aceptación
GET/v1/tenants/agreements/:typeRenderiza el documento personalizado del tenant como HTML — incluye su razón social/RUC y las fechas al momento en que se creó la cuenta
GET/v1/tenants/eventsBitácora de auditoría completa a nivel de tenant (verificación, suscripción, pagos, historial de cambios de plan/intervalo de facturación), en orden cronológico

Emisores (autenticado)

MétodoRutaDescripción
GET/v1/issuersLista todos los emisores activos (sucursales / puntos de emisión) del tenant
POST/v1/issuersCrea una nueva sucursal o punto de emisión — hereda el certificado de un emisor existente del tenant. NO genera una nueva API key.
GET/v1/issuers/:idObtiene el perfil de un emisor (nombre, RUC, vencimiento del certificado)
PATCH/v1/issuers/:idEdita tradeName y/o branchAddress
DELETE/v1/issuers/:idElimina (soft-delete) un emisor (bloqueado si es el último o si ya emitió comprobantes)
PATCH/v1/issuers/:id/activateReactiva un emisor eliminado (soft-delete) (vuelve a verificar los límites de sucursales/puntos de emisión del plan)
PATCH/v1/issuers/:id/logoSube o reemplaza el logo del emisor mostrado en los PDF RIDE (PNG/JPEG/GIF, máx. 500 KB)
PATCH/v1/issuers/:id/certificateRenueva el certificado P12 del emisor (llave privada + certificado) — por ejemplo, cuando ha vencido
GET/v1/issuers/:id/document-typesLista los tipos de comprobante activos para el emisor
POST/v1/issuers/:id/document-typesHabilita un tipo de comprobante para el emisor
DELETE/v1/issuers/:id/document-types/:codeDeshabilita un tipo de comprobante para el emisor
GET/v1/issuers/:id/sequentialsConsulta los números secuenciales actuales y siguientes por tipo de comprobante, por entorno
PATCH/v1/issuers/:id/sequentials/:documentTypeEstablece manualmente el siguiente número secuencial para un tipo de comprobante/entorno

API keys (autenticado)

MétodoRutaDescripción
GET/v1/keysLista todas las llaves activas del tenant (etiqueta, entorno, created_at)
POST/v1/keysGenera una nueva llave con nombre (label, environment opcional)
DELETE/v1/keys/:idRevoca una API key. No se puede revocar la llave usada en la solicitud actual.

Comprobantes

Cada endpoint de comprobantes requiere tanto Authorization: Bearer <key> como X-Issuer-Id: <issuer-id>.

MétodoRutaDescripción
GET/v1/documentsLista comprobantes con filtros y paginación
GET/v1/documents/statsEstadísticas de comprobantes por tipo del mes actual + cantidad que requiere atención
POST/v1/documentsCrea y firma un comprobante — factura (Create Invoice) o nota de crédito (Create Credit Note), seleccionado mediante documentType
GET/v1/documents/:accessKeyObtiene un comprobante por clave de acceso
POST/v1/documents/:accessKey/sendEncola el envío al SRI (Send to SRI — devuelve 202, asíncrono)
GET/v1/documents/:accessKey/authorizeEncola una verificación de autorización ante el SRI (Check Authorization — devuelve 202, asíncrono)
POST/v1/documents/:accessKey/rebuildReconstruye y vuelve a firmar un comprobante rechazado
GET/v1/documents/:accessKey/rideDescarga el PDF RIDE
GET/v1/documents/:accessKey/xmlDescarga el XML firmado
GET/v1/documents/:accessKey/eventsObtiene el historial de eventos de auditoría
GET/v1/documents/:accessKey/sri-responsesResultados sin procesar de las llamadas de recepción/autorización al SRI (estado + mensajes) para este comprobante
GET/v1/documents/:accessKey/credit-notesSuma de notas de crédito AUTHORIZED emitidas contra este comprobante + saldo restante
POST/v1/documents/email-retryReintenta todos los correos fallidos/pendientes (por lote)
POST/v1/documents/:accessKey/email-retryReintenta el correo de un solo comprobante

Notificaciones (autenticado)

Alertas a nivel de tenant para eventos de comprobantes y estado de certificados. Proporciona X-Issuer-Id para filtrar por un emisor específico; omítelo para recibir notificaciones de todos tus emisores. Usa ?sinceId=<id> para consultar de forma eficiente solo las notificaciones nuevas desde tu última solicitud.

MétodoRutaDescripción
GET/v1/notificationsLista notificaciones activas (leídas y no leídas). ?sinceId=<id> opcional para consultas de actualización incremental.
POST/v1/notifications/:id/readMarca una notificación como leída
GET/v1/notifications/preferencesObtiene las preferencias de tipo de notificación del tenant
PATCH/v1/notifications/preferencesHabilita o deshabilita tipos de notificación

Webhooks (autenticado)

Registra URLs de callback HTTPS para recibir notificaciones de eventos casi en tiempo real.

MétodoRutaDescripción
POST/v1/webhooksRegistra un nuevo endpoint de webhook (el secreto se muestra una sola vez)
GET/v1/webhooksLista los endpoints de webhook activos (sin incluir los secretos)
PATCH/v1/webhooks/:idActualiza la URL, las suscripciones a eventos o el indicador de activo
DELETE/v1/webhooks/:idDa de baja un endpoint (soft-delete)

Monitoreo

MétodoRutaAutenticaciónDescripción
GET/healthNingunaVerificación de conectividad a la base de datos para sondas de liveness

Documentación de la API de Comprobify