GET /api/guias-remision
Lista todas las guías de remisión de la empresa activa.Autenticación
Requiere autenticación con token Bearer.Parámetros de Consulta
No requiere parámetros. Los resultados están paginados (15 por página).Respuesta
Lista paginada de guías de remisión
Ejemplo de Uso
POST /api/guias-remision
Crea una nueva guía de remisión electrónica.Autenticación
Requiere autenticación con token Bearer.Parámetros del Body
Datos Generales
ID de la venta relacionada (opcional)
Fecha de inicio del traslado (formato: YYYY-MM-DD)
Código del motivo de traslado (01-18). Use
/api/guias-remision/motivos para la lista.Descripción adicional del motivo (máximo 255 caracteres)
Modalidad de transporte:
- 01: Transporte público
- 02: Transporte privado
Peso total de la carga en kg (mínimo 0.001)
Unidad de peso (default: KGM)
Observaciones adicionales
Destinatario
Tipo de documento: 1 (DNI) o 6 (RUC)
Número de documento del destinatario
Nombre o razón social del destinatario
Dirección del destinatario (punto de llegada)
Código ubigeo del punto de llegada (6 dígitos)
Puntos de Partida y Llegada
Ubigeo del punto de partida. Si no se envía, usa el ubigeo de la empresa.
Dirección del punto de partida. Si no se envía, usa la dirección de la empresa.
Transporte Público (mod_transporte = 01)
Tipo de documento del transportista
Documento del transportista
Nombre o razón social del transportista
Número de registro MTC del transportista
Transporte Privado (mod_transporte = 02)
Indica si es vehículo categoría M1 o L (true = campos opcionales)
Tipo de documento del conductor (requerido si no es M1/L)
Documento del conductor (requerido si no es M1/L)
Nombres del conductor (requerido si no es M1/L)
Apellidos del conductor (requerido si no es M1/L)
Número de licencia de conducir (requerido si no es M1/L)
Placa del vehículo (requerido si no es M1/L)
Detalles de la Carga
Lista de bienes a transportar (mínimo 1)
Proceso Automático
Al crear la guía de remisión:- Obtiene el próximo número correlativo para la serie T001
- Genera el archivo XML firmado
- Sincroniza el número en
documentos_empresas - Asigna la fecha de emisión automáticamente (hoy)
Respuesta
Indica si la guía fue creada exitosamente
Objeto completo de la guía de remisión creada
Información sobre la generación del XML
Ejemplo de Uso
GET /api/guias-remision/
Obtiene el detalle completo de una guía de remisión.Autenticación
Requiere autenticación con token Bearer.Parámetros de Ruta
ID de la guía de remisión
Respuesta
Objeto completo de la guía con detalles, venta y empresa.Ejemplo de Uso
POST /api/guias-remision//enviar
Envía la guía de remisión a SUNAT (GRE API - asincrónico).Autenticación
Requiere autenticación con token Bearer.Parámetros de Ruta
ID de la guía de remisión
Requisitos
- La guía debe tener el XML generado
- La empresa debe tener:
- Certificado digital configurado
- Client ID y Client Secret de GRE configurados (
SUNAT_GRE_CLIENT_ID,SUNAT_GRE_CLIENT_SECRET)
Proceso de Envío (Asincrónico)
- Obtiene token OAuth2 de SUNAT
- Envía el XML firmado al GRE API
- SUNAT devuelve un ticket (número de seguimiento)
- Guarda el ticket en la guía
- Estado queda en “enviado” hasta consultar el ticket
Respuesta
Indica si el envío fue exitoso
Número de ticket de SUNAT para consultar el estado
Ejemplo de Uso
GET /api/guias-remision//ticket
Consulta el estado del ticket en SUNAT y obtiene el CDR.Autenticación
Requiere autenticación con token Bearer.Parámetros de Ruta
ID de la guía de remisión
Requisitos
- La guía debe tener un ticket de SUNAT
Proceso
- Consulta el estado del ticket en SUNAT
- Si está aceptado: descarga el CDR y actualiza el estado a “aceptado”
- Si está rechazado: actualiza el estado a “rechazado” con el motivo
- Si está en proceso: devuelve estado “pendiente”
Respuesta
Indica si la consulta fue exitosa
Estado actual: pendiente, aceptado, rechazado
Código de respuesta de SUNAT (si está procesado)
Mensaje de SUNAT
Ejemplo de Uso
GET /api/guias-remision//cdr
Descarga el archivo CDR de SUNAT.Autenticación
Requiere autenticación con token Bearer.Parámetros de Ruta
ID de la guía de remisión
Respuesta
Descarga directa del archivo ZIP con el CDR.Ejemplo de Uso
GET /api/guias-remision/xml/
Descarga el archivo XML de la guía.Autenticación
Requiere autenticación con token Bearer.Parámetros de Ruta
Nombre del archivo XML
Respuesta
Archivo XML con Content-Type: application/xml.GET /api/guias-remision/proximo-numero
Obtiene el próximo número correlativo disponible.Autenticación
Requiere autenticación con token Bearer.Respuesta
Indica si la operación fue exitosa
Próximo número correlativo
Número completo (ej: T001-00000042)
Ejemplo de Uso
GET /api/guias-remision/motivos
Obtiene la lista de motivos de traslado según catálogo SUNAT.Autenticación
Requiere autenticación con token Bearer.Respuesta
Lista de motivos activos ordenados por código.Motivos Principales SUNAT
- 01: Venta
- 02: Compra
- 03: Venta sujeta a confirmación
- 04: Consignación
- 05: Devolución
- 06: Traslado entre establecimientos de la misma empresa
- 07: Traslado de bienes para transformación
- 08: Recojo de bienes
- 09: Traslado por emisor itinerante CP
- 13: Otros
- 14: Venta con entrega a terceros
- 18: Traslado de bienes para exportación
Ejemplo de Uso
GET /api/guias-remision/empresa
Obtiene los datos de la empresa activa para autocompletar punto de partida.Autenticación
Requiere autenticación con token Bearer.Respuesta
Indica si la operación fue exitosa
GET /api/guias-remision/ubigeos
Busca códigos ubigeo por nombre o código.Autenticación
Requiere autenticación con token Bearer.Parámetros de Consulta
Término de búsqueda (nombre o código ubigeo)
Respuesta
Lista de hasta 20 ubigeos que coinciden con la búsqueda.Ejemplo de Uso
Códigos de Error
- 400 Bad Request: La guía no tiene XML generado.
- 404 Not Found: Guía no encontrada o CDR no disponible.
- 422 Unprocessable Entity: Error de validación.
- 500 Internal Server Error: Error en el servidor o al comunicarse con SUNAT.
Notas Importantes
- Envío asincrónico: A diferencia de facturas/boletas, las guías usan el API GRE que es asincrónico. Debe consultarse el ticket posteriormente.
- Serie fija: Todas las guías usan la serie T001.
- Vehículos M1/L: Si marca
vehiculo_m1l: true, todos los campos del conductor y vehículo son opcionales. - Transporte público vs privado: Los campos requeridos varían según la modalidad.
- La guía se puede crear sin estar vinculada a una venta (
id_ventaes opcional).