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: 2 si el comprobante lo recibió de un proveedor, 1 si lo emitió su empresa.
  • oauth_client_id y oauth_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.
  • usuario y password: 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.