Boleta gratuita
Emisión de una boleta con operaciones gratuitas.
Endpoint
POST https://sandbox.apisunat.pe/api/v3/documents
Header
Es obligatorio incluir el encabezado Authorization en cada solicitud.
El token es único por empresa y puedes obtenerlo ingresando a https://app.apisunat.pe, en el módulo de Organizaciones.
header 'Authorization: Bearer {TOKEN}'Request Body
{
"documento": "boleta",
"serie": "B001",
"numero": 123,
"fecha_de_emision": "2025-01-03",
"moneda": "PEN",
"tipo_operacion": "0101",
"cliente_tipo_de_documento": "6",
"cliente_numero_de_documento": "20123456789",
"cliente_denominacion": "EMPRESA DE SERVICIOS S.A.C",
"cliente_direccion": "AV. SAN MARTIN - LIMA",
"items": [
{
"unidad_de_medida": "NIU",
"descripcion": "Nombre del producto",
"cantidad": "1",
"valor_unitario": "234",
"porcentaje_igv": "18",
"codigo_tipo_afectacion_igv": "11",
"nombre_tributo": "GRA"
}
],
"total": "0"
}Operaciones GRATUITAS
En operaciones gratuitas, se debe registrar de forma referencial el valor del producto y su impuesto (por ejemplo, IGV 18%) como si fuera una venta normal.
⚠️ El valor de la venta e impuesto no se suma al campo total, solo se incluye en el comprobante para fines informativos y control de SUNAT.
Response
{
"success": true,
"message": "Boleta B001-123 emitida correctamente",
"payload": {
"estado": "PENDIENTE",
"hash": "4HY34uR7a+Vc1Ax3/zrUk1Ng+tjTLwlqa9mRFysy15E=",
"xml": "http://api.lucode.pe/20123456789-03-B001-123.xml",
"cdr": null,
"pdf": {
"ticket": "http://api.lucode.pe/pdf/ticket/20123456789-03-B001-123"
}
}
}{
"success": true,
"message": "Factura F001-123 emitida correctamente",
"payload": {
"estado": "PENDIENTE",
"hash": "4HY34uR7a+Vc1Ax3/zrUk1Ng+tjTLwlqa9mRFysy15E=",
"xml": "http://api.lucode.pe/20123456789-01-FF01-123.xml",
"cdr": null,
"pdf": {
"ticket": "http://api.lucode.pe/pdf/ticket/20123456789-01-FF01-123"
}
}
}{
"success": false,
"message": "ERROR: Documento B001-123 fue emitido anteriormente"
}{
"success": false,
"message": "JSON no estructurado correctamente (Validación capa 01)",
"payload": {
"documento": [
"El campo documento es requerido."
]
}
}{
"success": false,
"message": "Error en la autenticación, token no válido."
}Última actualización
¿Te fue útil?