¿Qué es el CDR?
El CDR (Constancia de Recepción) es la respuesta oficial de SUNAT confirmando que un comprobante electrónico fue recibido y validado. Formato: Archivo ZIP que contiene un XML de respuesta Nombre del archivo:Contenido del CDR:
- XML de respuesta: Con código y mensaje de SUNAT
- Firma digital de SUNAT: Valida la autenticidad del CDR
- Fecha y hora de procesamiento
- Observaciones (si las hay)
Ubicación de los CDR
Los CDR se almacenan en:Consulta de CDR desde la UI
Acceder al listado de comprobantes
Vaya a Facturación → Ventas (o el módulo correspondiente).En la tabla, identifique los comprobantes enviados:
- Badge verde “Aceptado” indica que hay CDR disponible
- Badge rojo “Rechazado” también genera CDR (con el detalle del rechazo)
Descargar CDR
Haga clic en el botón Descargar CDR (💾) de la fila del comprobante.El navegador descargará el archivo ZIP.URL directa:
Estructura del XML del CDR
Campos Clave
| Campo | Descripción | Ejemplo |
|---|---|---|
<cbc:ID> | Identificador del documento | 20612706702-01-F001-00000045 |
<cbc:IssueDate> | Fecha de respuesta de SUNAT | 2026-03-06 |
<cbc:IssueTime> | Hora de respuesta de SUNAT | 14:30:45 |
<cbc:ResponseCode> | Código de respuesta | 0 (aceptado) |
<cbc:Description> | Mensaje descriptivo | ”La Factura… ha sido aceptada” |
<ds:Signature> | Firma digital de SUNAT | (contenido de certificado) |
Códigos de Respuesta en el CDR
Códigos Exitosos
| Código | Significado | Acción |
|---|---|---|
| 0 | Aceptado | Comprobante válido, sin observaciones |
| 0001 | Aceptado con observaciones | Válido pero con advertencias (ej: RUC de cliente no existe en SUNAT) |
Códigos de Error
Ver la guía completa: Solucionar Errores SUNAT Errores comunes en CDR:- 2010: El RUC del cliente no existe
- 2335: El certificado no es válido
- 2800: El comprobante ya fue informado anteriormente
- 4000: El formato del XML es inválido
Consulta Programática del CDR
Endpoint: Descargar CDR
Leer el contenido del CDR
Validación de la Firma del CDR
El CDR viene firmado digitalmente por SUNAT. Para validar la firma:1. Extraer el certificado de SUNAT
2. Verificar con OpenSSL
En producción: La validación de firma se hace automáticamente al recibir el CDR. Si el CDR fue guardado exitosamente en el sistema, la firma ya fue validada por Greenter.
CDR de Documentos Asíncronos
Resumen Diario de Boletas
El CDR se genera después de consultar el ticket:Guías de Remisión
El CDR de guías viene en base64 desde la API REST:Reenvío de CDR a Correo
Algunos clientes solicitan el CDR por correo. Puede implementar:app/Mail/CDREmail.php:
Verificación de Comprobantes en SUNAT
Los clientes pueden verificar el comprobante en: URL de verificación:- RUC del emisor: 20612706702
- Tipo de comprobante: Factura (01)
- Serie: F001
- Número: 00000045
- Fecha de emisión: 06/03/2026
- Monto total: 550.00
Generación de QR con CDR
El QR del comprobante debe incluir datos del CDR:Solución de Problemas
CDR no aparece después de envío exitoso
CDR no aparece después de envío exitoso
Causa: El archivo no se guardó correctamente o la ruta es incorrecta.Solución:
-
Verifique en storage:
-
Verifique el campo
cdr_urlen la base de datos: - Si el campo está vacío pero el comprobante fue aceptado, reenvíe para obtener el CDR nuevamente.
Error al descargar: 'File not found'
Error al descargar: 'File not found'
Causa: El archivo CDR fue eliminado o movido.Solución:
-
Reenvíe el comprobante a SUNAT:
SUNAT devolverá el CDR nuevamente (si el comprobante ya fue aceptado, responderá con el CDR original).
-
Verifique permisos de storage:
¿Cómo obtengo el CDR de un comprobante antiguo?
¿Cómo obtengo el CDR de un comprobante antiguo?
Si el archivo local se perdió:
- Reenvío: SUNAT devuelve el CDR original al reenviar un comprobante ya aceptado
-
Consulta en SUNAT Operaciones en Línea:
- Ingrese con Clave SOL
- Vaya a Consultas → Comprobantes Electrónicos
- Busque el comprobante y descargue el CDR
El CDR muestra código '0001' con observaciones
El CDR muestra código '0001' con observaciones
El comprobante fue aceptado pero con advertencias.Observaciones comunes:
- “El RUC del cliente no existe en el padrón”
- “El cliente no está habilitado para emitir comprobantes”
Almacenamiento y Respaldo
Recomendaciones:- Backup diario de
storage/app/sunat/ - Backup en la nube (S3, Google Drive, etc.)
- Compresión mensual de archivos antiguos
- Verificación periódica de integridad de archivos