nodefact
Version:
Biblioteca para facturación electrónica en Perú con Node.js. Compatible con UBL 2.1 y servicios web de SUNAT.
72 lines (68 loc) • 2.99 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.voided = void 0;
/**
* Plantilla para Comunicación de Baja (Voided Documents)
*/
const namespaces_1 = require("./namespaces");
exports.voided = `
<VoidedDocuments xmlns="urn:sunat:names:specification:ubl:peru:schema:xsd:VoidedDocuments-1"
xmlns:cac="${namespaces_1.namespaces.cac}"
xmlns:cbc="${namespaces_1.namespaces.cbc}"
xmlns:ds="${namespaces_1.namespaces.ds}"
xmlns:ext="${namespaces_1.namespaces.ext}"
xmlns:sac="${namespaces_1.namespaces.sac}"
xmlns:xsi="${namespaces_1.namespaces.xsi}">
<ext:UBLExtensions>
<ext:UBLExtension>
<ext:ExtensionContent/>
</ext:UBLExtension>
</ext:UBLExtensions>
<!-- Versión del UBL -->
<cbc:UBLVersionID>2.0</cbc:UBLVersionID>
<!-- Versión de la estructura del documento -->
<cbc:CustomizationID>1.0</cbc:CustomizationID>
<!-- Identificador de la comunicación de baja -->
<cbc:ID>RA-{{fechaEmision}}-{{correlativo}}</cbc:ID>
<!-- Fecha de emisión de la comunicación -->
<cbc:ReferenceDate>{{fechaReferencia}}</cbc:ReferenceDate>
<!-- Fecha de generación de la comunicación -->
<cbc:IssueDate>{{fechaEmision}}</cbc:IssueDate>
<!-- Firma Digital -->
<cac:Signature>
<cbc:ID>{{signatureID}}</cbc:ID>
<cac:SignatoryParty>
<cac:PartyIdentification>
<cbc:ID>{{emisor.ruc}}</cbc:ID>
</cac:PartyIdentification>
<cac:PartyName>
<cbc:Name>{{emisor.razonSocial}}</cbc:Name>
</cac:PartyName>
</cac:SignatoryParty>
<cac:DigitalSignatureAttachment>
<cac:ExternalReference>
<cbc:URI>{{signatureURI}}</cbc:URI>
</cac:ExternalReference>
</cac:DigitalSignatureAttachment>
</cac:Signature>
<!-- Datos del Emisor -->
<cac:AccountingSupplierParty>
<cbc:CustomerAssignedAccountID>{{emisor.ruc}}</cbc:CustomerAssignedAccountID>
<cbc:AdditionalAccountID>6</cbc:AdditionalAccountID>
<cac:Party>
<cac:PartyLegalEntity>
<cbc:RegistrationName>{{emisor.razonSocial}}</cbc:RegistrationName>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingSupplierParty>
<!-- Detalle de documentos a dar de baja -->
{{#each bajas}}
<sac:VoidedDocumentsLine>
<cbc:LineID>{{@index}}</cbc:LineID>
<cbc:DocumentTypeCode>{{tipoDocumento}}</cbc:DocumentTypeCode>
<sac:DocumentSerialID>{{serie}}</sac:DocumentSerialID>
<sac:DocumentNumberID>{{correlativo}}</sac:DocumentNumberID>
<sac:VoidReasonDescription>{{motivo}}</sac:VoidReasonDescription>
</sac:VoidedDocumentsLine>
{{/each}}
</VoidedDocuments>`;