QENTI
🔌 API REST · v1

Facturación electrónica en tu propio sistema

Conecta QENTI con tu ERP, e-commerce, POS o app móvil. Una sola integración para emitir facturas, boletas, notas de crédito y guías de remisión directamente ante SUNAT.

✓ Sandbox gratis ✓ Docs Swagger ✓ SDK en 3 lenguajes ✓ Sin setup fees
POST /v1/comprobantes/factura
{
  "serie": "F001",
  "moneda": "PEN",
  "fecha_emision": "2025-06-01",
  "receptor": {
    "tipo_documento": "6",
    "numero_documento": "20123456789",
    "razon_social": "EMPRESA SAC"
  },
  "items": [{
    "descripcion": "Servicio de seguridad",
    "cantidad": 1,
    "precio_unitario": 5000.00,
    "igv_porcentaje": 18
  }]
}
✓ 200 OK — estado: "aceptado" · CDR recibido

Una API diseñada para producción

No un wrapper básico — infraestructura robusta para negocios reales

🔐

JWT seguro

Tokens con expiración configurable. Refresh automático incluido en todos los SDKs.

Respuesta < 2 s

Emisión completa — firma, envío a SUNAT y CDR — en menos de 2 segundos en condiciones normales.

🏖️

Sandbox ilimitado

Entorno de pruebas sin límites. Emite comprobantes de prueba sin afectar tu cuota ni SUNAT real.

📡

Webhooks

Recibe notificaciones en tu endpoint cuando un comprobante cambia de estado.

📖

Docs interactiva

Documentación Swagger donde puedes probar cada endpoint directamente desde el navegador.

🔄

Versionado estable

API versionada. Los cambios de SUNAT no rompen tu integración: nosotros los absorbemos.

Autenticación con JWT

Todas las peticiones se autentican con un Bearer token JWT obtenido desde el endpoint /v1/auth/token. El token tiene vigencia de 1 hora. Los SDKs gestionan el refresh automáticamente.

  • Credenciales: api_key + api_secret desde tu panel
  • Token JWT con expiración configurable
  • HTTPS obligatorio en todos los entornos
  • IPs de producción registrables para mayor seguridad
POST /v1/auth/token
// Request
{
  "api_key":    "pk_live_xxxxx",
  "api_secret": "sk_live_xxxxx"
}

// Response
{
  "access_token": "eyJhbGci...",
  "expires_in":   3600,
  "token_type":   "Bearer"
}

// Uso en headers
Authorization: Bearer eyJhbGci...

Endpoints disponibles

URL base: https://api.qenti.pe

Método Endpoint Descripción
POST /v1/comprobantes/factura Emite una factura electrónica (tipo 01)
POST /v1/comprobantes/boleta Emite una boleta de venta (tipo 03)
POST /v1/comprobantes/nota-credito Emite una nota de crédito (tipo 07)
POST /v1/comprobantes/nota-debito Emite una nota de débito (tipo 08)
POST /v1/comprobantes/guia-remision Emite una guía de remisión electrónica (tipo 09)
GET /v1/comprobantes/{id} Consulta el estado y datos de un comprobante
GET /v1/comprobantes/{id}/pdf Descarga el PDF del comprobante
GET /v1/comprobantes/{id}/xml Descarga el XML firmado del comprobante
GET /v1/comprobantes/{id}/cdr Descarga la Constancia de Recepción SUNAT
GET /v1/clientes/consulta-ruc/{ruc} Consulta datos del contribuyente por RUC en SUNAT
POST /v1/webhooks Registra una URL para recibir notificaciones de eventos
POST /v1/auth/token Obtiene el token JWT de acceso

SDKs oficiales

Instala en segundos, integra en minutos

🐘 Recomendado

PHP

composer require qenti/sdk-php
🐍

Python

pip install qenti-sdk
🟩

Node.js

npm install @qenti/sdk

Webhooks en tiempo real

En lugar de hacer polling, registra una URL y QENTI te notificará automáticamente cada vez que un comprobante cambie de estado.

comprobante.aceptado SUNAT aceptó el comprobante — CDR disponible
comprobante.rechazado SUNAT rechazó el comprobante — incluye código de error
comprobante.en_proceso El comprobante está en cola de envío
Webhook payload → tu servidor
// POST https://tuapp.com/webhook
{
  "event":   "comprobante.aceptado",
  "data": {
    "id":          "FAC-2025-F001-123",
    "serie":       "F001",
    "numero":      "00000123",
    "estado":      "aceptado",
    "cdr_code":    "0",
    "pdf_url":     "https://cdn.qenti.pe/...",
    "xml_url":     "https://cdn.qenti.pe/..."
  },
  "timestamp": "2025-06-01T14:32:10Z"
}
🏖️

Sandbox gratis e ilimitado

Desarrolla y prueba tu integración sin límites, sin costo y sin afectar SUNAT real. Los comprobantes del sandbox tienen estado simulado y no generan obligaciones tributarias.

🔑
Credenciales sandbox
Disponibles en tu panel desde el primer día
♾️
Sin límite de llamadas
Prueba todos los escenarios sin preocuparte por cuotas
🎭
Errores simulados
Fuerza rechazos de SUNAT para probar tu manejo de errores
Base URL sandbox: https://sandbox.api.qenti.pe/v1/

¿Listo para integrar?

Solicita tus credenciales de sandbox y tendrás tu primera factura emitida vía API en menos de una hora.

La API está disponible desde el plan Corporativo. Sandbox accesible en todos los planes.