Catálogo 19 — Tipo de operación (resumen diario)
Catálogo SUNAT que indica la acción que se realiza sobre un comprobante dentro de un Resumen Diario (SummaryDocuments). Permite adicionar, modificar o anular boletas y notas asociadas.
Tabla de códigos
Sección titulada «Tabla de códigos»| Código | Descripción |
|---|---|
| 1 | Adicionar |
| 2 | Modificar |
| 3 | Anulado |
Uso típico
Sección titulada «Uso típico»Se utiliza en:
SummaryDocumentsItem.tipoOperacion
El valor 1 (Adicionar) se usa para reportar nuevas boletas emitidas en el día. El valor 3 (Anulado) reporta boletas anuladas dentro de las 7 días calendario permitidos por SUNAT.
Ejemplo
Sección titulada «Ejemplo»from datetime import datefrom decimal import Decimalfrom openubl.models import ( SummaryDocuments, SummaryDocumentsItem, Comprobante, ComprobanteImpuestos, ComprobanteValorVenta, Proveedor, Cliente,)
resumen = SummaryDocuments( numero=1, fechaEmisionComprobantes=date(2026, 6, 10), proveedor=Proveedor(ruc="20100100100", razonSocial="Mi Empresa S.A.C."), comprobantes=[ SummaryDocumentsItem( tipoOperacion="1", # Adicionar comprobante=Comprobante( tipoComprobante="03", # Boleta serieNumero="B001-1", cliente=Cliente( nombre="Cliente Ejemplo", numeroDocumentoIdentidad="12345678", tipoDocumentoIdentidad="1", ), impuestos=ComprobanteImpuestos(igv=Decimal("3.60")), valorVenta=ComprobanteValorVenta( importeTotal=Decimal("23.60"), gravado=Decimal("20.00"), ), ), ) ],)import { createSummaryDocuments } from "@openubl/sdk";import { zSummaryDocuments } from "@openubl/sdk/zod.gen";
const summary = zSummaryDocuments.parse({numero: 1,fechaEmisionComprobantes: "2026-06-10",proveedor: { ruc: "20100100100", razonSocial: "Mi Empresa S.A.C." },comprobantes: [ { tipoOperacion: "1", comprobante: { tipoComprobante: "03", serieNumero: "B001-1", cliente: { nombre: "Cliente Ejemplo", numeroDocumentoIdentidad: "12345678", tipoDocumentoIdentidad: "1", }, impuestos: { igv: 3.60 }, valorVenta: { importeTotal: 23.60, gravado: 20.00 }, }, },],});
const { data, error } = await createSummaryDocuments({ body: summary });if (error) throw new Error(JSON.stringify(error));curl -X POST http://localhost:8000/api/v1/summary-documents/create -H "Content-Type: application/json" -d '{ "numero": 1, "fechaEmisionComprobantes": "2026-06-10", "proveedor": { "ruc": "20100100100", "razonSocial": "Mi Empresa S.A.C." }, "comprobantes": [ { "tipoOperacion": "1", "comprobante": { "tipoComprobante": "03", "serieNumero": "B001-1", "cliente": { "nombre": "Cliente Ejemplo", "numeroDocumentoIdentidad": "12345678", "tipoDocumentoIdentidad": "1" }, "impuestos": { "igv": 3.60 }, "valorVenta": { "importeTotal": 23.60, "gravado": 20.00 } } } ]}'