Nota de crédito (contado)
Nota de crédito de boleta al contado. tipoComprobante: 07. Incluye el objeto nota con los datos del documento original.
POSThttps://api.facturalo.pe/api/v3/documentos/enviar
Parámetros del body
Campo
Descripción
webhookbooleanopcional
Si es true, la respuesta es inmediata (EN_PROCESO) y el resultado llega al webhook configurado. Default: false (síncrono).Ej:
falseestablecimientostring | nullopcional
UUID del establecimiento emisor. Si se omite, se usa el establecimiento principal de la empresa.
cotizacionstring | nullopcional
UUID de la cotización que se convierte en este comprobante. Se valida antes de enviar a SUNAT y queda vinculada. Opcional.
documentoobjectrequerido
Datos del comprobante electrónico.
sunatTransaccionstringrequerido
Operación de nota de crédito. Usa 0101.Ej:
0101tipoComprobantestringrequerido
07 = Nota de Crédito. Modifica una boleta previa.Ej:
07seriestringrequerido
Serie del comprobante. Facturas: F001–F999. Boletas: B001–B999. Exactamente 4 caracteres.Ej:
F001correlativostringrequerido
Correlativo numérico. Máximo 8 caracteres.Ej:
1fechaEmisionstringrequerido
Fecha de emisión en formato YYYY-MM-DD.Ej:
2026-06-13fechaVencimientostring | nullopcional
Fecha de vencimiento. Formato YYYY-MM-DD. Si no se envía, se toma la fechaEmision como fecha de vencimiento.
formaPagostringrequerido
"CONTADO" | "CREDITO". Si es CREDITO, se requiere el array cuotas.Ej:
CONTADOmonedastringrequerido
"PEN" (Soles) | "USD" (Dólares).Ej:
PENobservacionesstring | nullopcional
Texto libre que aparece en el comprobante.
placaVehiculostring | nullopcional
Placa del vehículo asociado a la operación.
ordenComprastring | nullopcional
Número de orden de compra del cliente.
otrosCamposarray | nullopcional
Campos libres solo locales (PDF, consulta y webhook). No se envían a SUNAT. Máximo 30 ítems. Cada ítem: { label, value }.Ej:
[{ "label": "Cajero", "value": "Guillermo" }]labelstringrequerido
Etiqueta visible en el PDF (ej. Cajero, Método de pago, Mesa).Ej:
Cajerovaluestringrequerido
Valor del campo.Ej:
GuillermodescuentoGlobalnumber | nullopcional
Descuento global aplicado al total del documento (con IGV incluido).
enviarCorreobooleanopcional
Si es true, envía el PDF y XML al correo del cliente tras la aceptación. Default: false.Ej:
trueclienteobjectrequerido
Datos del adquirente.
tipoDocumentostringrequerido
6 = RUC · 1 = DNI · 0 = Sin documento (clientes varios).Ej:
6numeroDocumentostringrequerido
Número sin puntos ni guiones. RUC: 11 dígitos. DNI: 8 dígitos.Ej:
20609753413denominacionstringrequerido
Razón social o nombre completo.Ej:
EMPRESA S.A.C.direccionstring | nullopcional
Requerida si tipoDocumento = 6 (RUC).
correostring | nullopcional
Correo del cliente para envío del PDF/XML.
celularstring | nullopcional
Número de celular. Exactamente 9 dígitos.
itemsarrayrequerido
Líneas del comprobante. Mínimo 1 ítem.
unidadMedidastringrequerido
Código SUNAT: NIU = unidad · ZZ = servicio · BX = caja · KGM = kilogramo · GLI = galón.Ej:
NIUcodigostring | nullopcional
Código interno del producto (max 30 caracteres).
productoIdstring | nullopcional
UUID de la variante (o del producto si tiene una sola) del catálogo. Lo que no envíes (descripción, unidad, IGV, precio, código SUNAT) sale del catálogo, y si controla stock descuenta del inventario. También puedes enviar el SKU en
codigo sin descripcion.seriesstring[] | nullopcional
Productos que controlan número de serie: una serie / IMEI por unidad. Se agrega a la descripción (
S/N: …) y la serie queda vendida. Ver Series.Ej: ["5CD1234ABD"]descripcionstringrequerido
Descripción del producto o servicio (max 250 caracteres).Ej:
SERVICIO DE CONSULTORÍAcantidadnumberrequerido
Cantidad de unidades. Mínimo 0.Ej:
2precioUnitarionumberrequerido
Precio por unidad con IGV incluido. La API calcula el IGV automáticamente.Ej:
590tipoIgvstringrequerido
10 = Gravado oneroso (misma tasa que el documento original).Ej:
10descuentonumber | nullopcional
Descuento por ítem (con IGV incluido).
impuestoBolsaboolean | nullopcional
Si es true, aplica ICBPER (impuesto a bolsas plásticas) a este ítem.
Language
Credentials
Header
Authorization
Ejemplos con el SDK oficial en Node, PHP y Python
Idempotencia
Header
Idempotency-Key
Misma clave + mismo cuerpo = misma respuesta (24 h). Ver /idempotencia.
API Request
$ npm install @facturalo-pe/node
import { FacturaloClient } from "@facturalo-pe/node";
const facturalo = new FacturaloClient({ token: process.env.FACTURALO_TOKEN! });
const envio = await facturalo.documentos.enviar({
tipoComprobante: "07",
serie: "B001",
correlativo: "1",
fechaEmision: "2026-06-13",
formaPago: "CONTADO",
otrosCampos: [
{
label: "Cajero",
value: "Guillermo"
},
{
label: "Método de pago",
value: "Yape"
},
{
label: "Mesa",
value: "12"
}
],
moneda: "PEN",
cliente: {
tipoDocumento: "1",
numeroDocumento: "12345678",
denominacion: "NOMBRES Y APELLIDOS",
direccion: "AV. LIMA 123 - LIMA - LIMA - LIMA",
correo: "persona@gmail.com"
},
nota: {
documentoQueSeModifica: "BOLETA",
documentoQueSeModificaSerie: "B001",
documentoQueSeModificaCorrelativo: "1",
tipoDeNotaDeCredito: "01",
sustento: "Anulación de la operación"
},
items: [
{
cantidad: 1,
unidadMedida: "ZZ",
codigo: "S001",
descripcion: "Servicio de consultoría empresarial",
precioUnitario: 1180,
tipoIgv: "10"
}
]
}, {
idempotencyKey: "orden-1042"
});
console.log(envio.estado, envio.sunat?.mensaje, envio.enlaces.pdf);SDK oficial @facturalo-pe/node · guía en /sdks
Response
Elige un ejemplo de respuesta:
application/json
200Aceptada
{
"success": true,
"message": "La Nota de Crédito numero B001-1, ha sido aceptada",
"data": {
"estado": "ACEPTADA",
"entorno": "demo",
"documento": {
"id": "cc3d4e5f-67d9-11f1-8bd0-5b2bb30404ab",
"estado": "ACEPTADA",
"serie": "B001",
"correlativo": "00000001",
"tipo": "NOTA_CREDITO"
},
"sunat": {
"estado": "ACEPTADA",
"codigo": "0",
"mensaje": "La Nota de Crédito numero B001-1, ha sido aceptada",
"notas": []
},
"enlaces": {
"pdf": "https://api.facturalo.pe/api/v3/documentos/cc3d4e5f-67d9-11f1-8bd0-5b2bb30404ab.pdf",
"pdfTicket": "https://api.facturalo.pe/api/v3/documentos/cc3d4e5f-67d9-11f1-8bd0-5b2bb30404ab.ticket.pdf",
"xml": "https://api.facturalo.pe/api/v3/documentos/cc3d4e5f-67d9-11f1-8bd0-5b2bb30404ab.xml",
"cdr": "https://api.facturalo.pe/api/v3/documentos/cc3d4e5f-67d9-11f1-8bd0-5b2bb30404ab.cdr"
},
"hash": "xvQpVbLssRc8FlD8/0LuSYeIPo8=",
"cadenaQr": "20601476551 | 07 | B001 | 00000001 | 180.00 | 1180.00 | 13/06/2026 | 1 | 12345678 | xvQpVbLssRc8FlD8/0LuSYeIPo8= |"
}
}