Catálogo 01 — Tipo de comprobante
Catálogo SUNAT que identifica el tipo de comprobante de pago electrónico generado por el emisor. Es uno de los valores más importantes del XML UBL generado por openUBL.
Tabla de códigos
Sección titulada «Tabla de códigos»| Código | Descripción |
|---|---|
| 01 | Factura |
| 03 | Boleta |
| 07 | Nota de Crédito |
| 08 | Nota de Débito |
| 09 | Guía de Remisión |
| 20 | Comprobante de Retención |
| 40 | Comprobante de Percepción |
Uso típico
Sección titulada «Uso típico»Se utiliza en los campos tipoComprobante de los modelos:
InvoiceyCreditNote/DebitNote(implícito por el modelo).VoidedDocumentsItem.tipoComprobantepara comunicaciones de baja.SummaryDocuments→Comprobante.tipoComprobanteen resúmenes diarios.PercepcionRetencionOperacion.comprobante.tipoComprobanteen percepciones y retenciones.
Ejemplo
Sección titulada «Ejemplo»from openubl.models import Invoice, Proveedor, Cliente, DocumentoVentaDetallefrom decimal import Decimal
invoice = Invoice( serie="F001", numero=123, proveedor=Proveedor(ruc="20100100100", razonSocial="Mi Empresa S.A.C."), cliente=Cliente( nombre="Cliente Ejemplo", numeroDocumentoIdentidad="12345678", tipoDocumentoIdentidad="1", # DNI (Catálogo 06) ), detalles=[ DocumentoVentaDetalle( descripcion="Producto A", cantidad=Decimal("2"), precio=Decimal("50.00"), tipoAfectacionIGV="10", ) ], moneda="PEN",)import { createInvoice } from "@openubl/sdk";import { zInvoice } from "@openubl/sdk/zod.gen";
const invoice = zInvoice.parse({serie: "F001",numero: 123,proveedor: { ruc: "20100100100", razonSocial: "Mi Empresa S.A.C." },cliente: { nombre: "Cliente Ejemplo", numeroDocumentoIdentidad: "12345678", tipoDocumentoIdentidad: "1",},detalles: [ { descripcion: "Producto A", cantidad: 2, precio: 50.00, tipoAfectacionIGV: "10", },],moneda: "PEN",});
const { data, error } = await createInvoice({ body: invoice });if (error) throw new Error(JSON.stringify(error));curl -X POST http://localhost:8000/api/v1/invoice/create -H "Content-Type: application/json" -d '{ "serie": "F001", "numero": 123, "proveedor": { "ruc": "20100100100", "razonSocial": "Mi Empresa S.A.C." }, "cliente": { "nombre": "Cliente Ejemplo", "numeroDocumentoIdentidad": "12345678", "tipoDocumentoIdentidad": "1" }, "detalles": [{ "descripcion": "Producto A", "cantidad": 2, "precio": 50.00, "tipoAfectacionIGV": "10" }], "moneda": "PEN"}'En este ejemplo el modelo Invoice representa el tipo de comprobante 01 (Factura).