Comprobantes
Contrato anterior a /v1
Estas rutas son las de la versión 2.0 del servicio y se mantienen tal cual: los sistemas que ya las usan
no tienen que cambiar nada. Por eso no siguen las convenciones de /v1: sus campos van en castellano y
sus errores tienen otra forma (ver Errores y reintentos).
Las rutas
Las cuatro reciben el mismo cuerpo JSON y requieren la cabecera X-API-Key:
| Ruta | Devuelve |
|---|---|
POST /api/v1/cpe/xml |
El XML firmado del comprobante, en base64 |
POST /api/v1/cpe/pdf |
La representación impresa, en base64 |
POST /api/v1/cpe/cdr |
La constancia de recepción de SUNAT (CDR), en base64 |
POST /api/v1/cpe/consultar |
Los datos del comprobante (fecha, moneda, total, razones sociales), sin archivos |
La petición
Las credenciales son las de la empresa que consulta: la que emitió el comprobante o la que lo recibió.
curl -X POST https://cpe.sistemerp.com/api/v1/cpe/xml \
-H "X-API-Key: <su API key>" \
-H "Content-Type: application/json" \
-d '{
"ruc": "20100000001",
"usuario": "USUARIO1",
"password": "clave-sol",
"ruc_emisor": "20999999999",
"tipo": "01",
"serie": "F001",
"numero": "123",
"filtro": "2",
"oauth_client_id": "00000000-0000-0000-0000-000000000000",
"oauth_client_secret": "secreto"
}'
Cada campo está explicado en la referencia. Los que más dudas dan:
filtro:2si el comprobante lo recibió de un proveedor,1si lo emitió su empresa.oauth_client_idyoauth_client_secret: las credenciales de la aplicación que su empresa genera en SOL («Credenciales de API SUNAT»). Recomendadas: activan la vía oficial de SUNAT.usuarioypassword: el usuario y la clave SOL. Obligatorios siempre, también con la vía oficial: son los de la vía de respaldo.
La respuesta
xml, pdf y cdr responden el archivo:
{
"filename": "20999999999-01-F001-123.xml",
"content_base64": "PD94bWwgdmVyc2lvbj0iMS4wIj8+",
"size": 8421,
"via": "oficial"
}
via dice por dónde se obtuvo: oficial (la aplicación de SUNAT) o portal (el portal SOL). Si la vía
oficial no da acceso, el servicio usa el portal automáticamente, salvo que su empresa lo tenga
desactivado.
consultar responde los datos del comprobante. La fecha llega como la da SUNAT (dd/mm/aaaa):
{
"ruc_emisor": "20999999999",
"tipo_comprobante": "01",
"serie": "F001",
"numero": 123,
"fecha_emision": "15/09/2026",
"moneda": "PEN",
"total": 1180.0,
"razon_social_emisor": "EMPRESA EMISORA S.A.C.",
"razon_social_receptor": "SU EMPRESA S.A.C."
}
Qué comprobantes entrega SUNAT
- Solo los de la empresa que consulta, como emisora o como receptora.
- Algunas boletas no están disponibles en esta consulta de SUNAT.
- La consulta de SUNAT falla al azar con frecuencia: al reintentar suele salir. Ver Errores y reintentos.
Sus credenciales
Las credenciales SOL y de la aplicación viajan en el cuerpo, por HTTPS, y el servicio no las guarda.