easy-e-invoice
Version:
Easy invoice XRechnung is a standardized electronic invoice format developed to comply with the European Directive 2014/55/EU
1 lines • 15.7 kB
JavaScript
!function(e,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.exampleTypescriptPackage=n():e.exampleTypescriptPackage=n()}(this,()=>(()=>{"use strict";var e={229:function(e,n,a){var t=this&&this.__createBinding||(Object.create?function(e,n,a,t){void 0===t&&(t=a);var r=Object.getOwnPropertyDescriptor(n,a);r&&!("get"in r?!n.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return n[a]}}),Object.defineProperty(e,t,r)}:function(e,n,a,t){void 0===t&&(t=a),e[t]=n[a]}),r=this&&this.__exportStar||function(e,n){for(var a in e)"default"===a||Object.prototype.hasOwnProperty.call(n,a)||t(n,e,a)};Object.defineProperty(n,"__esModule",{value:!0}),n.generateEInvoiceXML=void 0;var i=a(434),c=a(900);r(a(854),n),r(a(524),n),r(a(434),n),r(a(900),n),n.generateEInvoiceXML=function(e){return(0,i.generateCrossIndustryInvoiceXml)((0,c.simpleConvertEInvoiceToCII)(e))}},434:(e,n)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.generateCrossIndustryInvoiceXml=void 0,n.generateCrossIndustryInvoiceXml=function(e){var n,a,t,r,i,c,o,d=function(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")},m=function(e){return'<udt:DateTimeString format="'.concat(d(e.format),'">').concat(d(e.value),"</udt:DateTimeString>")},u=function(e,n){return"<ram:".concat(n,"><ram:ID>").concat(d(e.id),"</ram:ID></ram:").concat(n,">")},s=function(e){return"<ram:LineID>".concat(d(e.lineID),"</ram:LineID>")},l=function(e){return"\n <ram:ApplicableTradeTax>\n ".concat(e.calculatedAmount?"<ram:CalculatedAmount>".concat(d(e.calculatedAmount),"</ram:CalculatedAmount>"):"","\n <ram:TypeCode>").concat(d(e.typeCode),"</ram:TypeCode>\n ").concat(e.basisAmount?"<ram:BasisAmount>".concat(d(e.basisAmount),"</ram:BasisAmount>"):"","\n <ram:CategoryCode>").concat(d(e.categoryCode),"</ram:CategoryCode>\n <ram:RateApplicablePercent>").concat(d(e.rateApplicablePercent),"</ram:RateApplicablePercent>\n </ram:ApplicableTradeTax>")},p=function(e){return"\n <ram:BillingSpecifiedPeriod>\n ".concat(e.startDateTime?"<ram:StartDateTime>".concat(m(e.startDateTime),"</ram:StartDateTime>"):"","\n <ram:EndDateTime>").concat(m(e.endDateTime),"</ram:EndDateTime>\n </ram:BillingSpecifiedPeriod>")},T=function(e){return"\n <ram:AdditionalReferencedDocument>\n <ram:IssuerAssignedID>".concat(d(e.issuerAssignedID),"</ram:IssuerAssignedID>\n <ram:TypeCode>").concat(d(e.typeCode),"</ram:TypeCode>\n </ram:AdditionalReferencedDocument>")},y=function(e,n){return"\n <ram:".concat(n,">\n ").concat(e.id?"<ram:ID>".concat(d(e.id),"</ram:ID>"):"","\n <ram:Name>").concat(d(e.name),"</ram:Name>\n ").concat(e.description?"<ram:Description>".concat(d(e.description),"</ram:Description>"):"","\n ").concat(e.specifiedLegalOrganization?(i=e.specifiedLegalOrganization,"\n <ram:SpecifiedLegalOrganization>\n <ram:ID>".concat(d(i.id),"</ram:ID>\n <ram:TradingBusinessName>").concat(d(i.tradingBusinessName),"</ram:TradingBusinessName>\n </ram:SpecifiedLegalOrganization>")):"","\n ").concat(e.definedTradeContact?(r=e.definedTradeContact,"\n <ram:DefinedTradeContact>\n <ram:PersonName>".concat(d(r.personName),"</ram:PersonName>\n <ram:TelephoneUniversalCommunication>\n <ram:CompleteNumber>").concat(d(r.telephoneUniversalCommunication.uriID),"</ram:CompleteNumber>\n </ram:TelephoneUniversalCommunication>\n <ram:EmailURIUniversalCommunication>\n <ram:URIID>").concat(d(r.emailURIUniversalCommunication.uriID),"</ram:URIID>\n </ram:EmailURIUniversalCommunication>\n </ram:DefinedTradeContact>")):"","\n ").concat((t=e.postalTradeAddress,"\n <ram:PostalTradeAddress>\n <ram:PostcodeCode>".concat(d(t.postcodeCode),"</ram:PostcodeCode>\n <ram:LineOne>").concat(d(t.lineOne),"</ram:LineOne>\n <ram:CityName>").concat(d(t.cityName),"</ram:CityName>\n <ram:CountryID>").concat(d(t.countryID),"</ram:CountryID>\n ").concat(t.countrySubDivisionName?"<ram:CountrySubDivisionName>".concat(d(t.countrySubDivisionName),"</ram:CountrySubDivisionName>"):"","\n </ram:PostalTradeAddress>")),"\n ").concat(e.uriUniversalCommunication?function(e,n){return"\n <ram:".concat(n,">\n <ram:URIID").concat(e.schemeID?' schemeID="'.concat(d(e.schemeID),'"'):"",">").concat(d(e.uriID),"</ram:URIID>\n </ram:").concat(n,">")}(e.uriUniversalCommunication,"URIUniversalCommunication"):"","\n ").concat((a=e.specifiedTaxRegistrations,void 0===a&&(a=[]),a.map(function(e){return'\n <ram:SpecifiedTaxRegistration>\n <ram:ID schemeID="'.concat(d(e.schemeID),'">').concat(d(e.id),"</ram:ID>\n </ram:SpecifiedTaxRegistration>")}).join("")),"\n </ram:").concat(n,">");var a,t,r,i};return'\n<rsm:CrossIndustryInvoice xmlns:rsm="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100" xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100" xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100">\n '.concat((o=e.exchangedDocumentContext,"\n <rsm:ExchangedDocumentContext>\n ".concat(u(o.businessProcessSpecifiedDocumentContextParameter,"BusinessProcessSpecifiedDocumentContextParameter"),"\n ").concat(u(o.guidelineSpecifiedDocumentContextParameter,"GuidelineSpecifiedDocumentContextParameter"),"\n </rsm:ExchangedDocumentContext>")),"\n ").concat((c=e.exchangedDocument,"\n <rsm:ExchangedDocument>\n <ram:ID>".concat(d(c.id),"</ram:ID>\n <ram:TypeCode>").concat(d(c.typeCode),"</ram:TypeCode>\n <ram:IssueDateTime>\n ").concat(m(c.issueDateTime),"\n </ram:IssueDateTime>\n ").concat(c.includedNotes.map(function(e){return"\n <ram:IncludedNote>\n <ram:Content>".concat(d(e.content),"</ram:Content>\n <ram:SubjectCode>").concat(d(e.subjectCode),"</ram:SubjectCode>\n </ram:IncludedNote>")}).join(""),"\n </rsm:ExchangedDocument>")),"\n <rsm:SupplyChainTradeTransaction>\n ").concat(e.supplyChainTradeTransaction.includedSupplyChainTradeLineItems.map(function(e){return"\n <ram:IncludedSupplyChainTradeLineItem>\n <ram:AssociatedDocumentLineDocument>\n ".concat(s(e.associatedDocumentLineDocument),"\n </ram:AssociatedDocumentLineDocument>\n ").concat((r=e.specifiedTradeProduct,"\n <ram:SpecifiedTradeProduct>\n <ram:SellerAssignedID>".concat(d(r.sellerAssignedID),"</ram:SellerAssignedID>\n <ram:BuyerAssignedID>").concat(d(r.buyerAssignedID),"</ram:BuyerAssignedID>\n <ram:Name>").concat(d(r.name),"</ram:Name>\n <ram:Description>").concat(d(r.description),"</ram:Description>\n </ram:SpecifiedTradeProduct>")),"\n ").concat((t=e.specifiedLineTradeAgreement,"\n <ram:SpecifiedLineTradeAgreement>\n <ram:BuyerOrderReferencedDocument>\n ".concat(s(t.buyerOrderReferencedDocument),"\n </ram:BuyerOrderReferencedDocument>\n <ram:NetPriceProductTradePrice>\n <ram:ChargeAmount>").concat(d(t.netPriceProductTradePrice.chargeAmount),"</ram:ChargeAmount>\n </ram:NetPriceProductTradePrice>\n </ram:SpecifiedLineTradeAgreement>")),"\n ").concat((a=e.specifiedLineTradeDelivery,'\n <ram:SpecifiedLineTradeDelivery>\n <ram:BilledQuantity unitCode="'.concat(d(a.billedQuantity.unitCode),'">').concat(d(a.billedQuantity.value),"</ram:BilledQuantity>\n </ram:SpecifiedLineTradeDelivery>")),"\n <ram:SpecifiedLineTradeSettlement>\n ").concat(l(e.specifiedLineTradeSettlement.applicableTradeTax),"\n ").concat(p(e.specifiedLineTradeSettlement.billingSpecifiedPeriod),"\n ").concat((n=e.specifiedLineTradeSettlement.specifiedTradeSettlementLineMonetarySummation,"\n <ram:SpecifiedTradeSettlementLineMonetarySummation>\n <ram:LineTotalAmount>".concat(d(n.lineTotalAmount),"</ram:LineTotalAmount>\n </ram:SpecifiedTradeSettlementLineMonetarySummation>")),"\n ").concat(T(e.specifiedLineTradeSettlement.additionalReferencedDocument),"\n </ram:SpecifiedLineTradeSettlement>\n </ram:IncludedSupplyChainTradeLineItem>");var n,a,t,r}).join(""),"\n ").concat((i=e.supplyChainTradeTransaction.applicableHeaderTradeAgreement,"\n <ram:ApplicableHeaderTradeAgreement>\n <ram:BuyerReference>".concat(d(i.buyerReference),"</ram:BuyerReference>\n ").concat(y(i.sellerTradeParty,"SellerTradeParty"),"\n ").concat(y(i.buyerTradeParty,"BuyerTradeParty"),"\n <ram:SellerOrderReferencedDocument>\n <ram:IssuerAssignedID>").concat(d(i.sellerOrderReferencedDocument.issuerAssignedID),"</ram:IssuerAssignedID>\n </ram:SellerOrderReferencedDocument>\n <ram:BuyerOrderReferencedDocument>\n <ram:IssuerAssignedID>").concat(d(i.buyerOrderReferencedDocument.issuerAssignedID),"</ram:IssuerAssignedID>\n </ram:BuyerOrderReferencedDocument>\n <ram:ContractReferencedDocument>\n <ram:IssuerAssignedID>").concat(d(i.contractReferencedDocument.issuerAssignedID),"</ram:IssuerAssignedID>\n </ram:ContractReferencedDocument>\n ").concat(T(i.additionalReferencedDocument),"\n </ram:ApplicableHeaderTradeAgreement>")),"\n ").concat((r=e.supplyChainTradeTransaction.applicableHeaderTradeDelivery,"\n <ram:ApplicableHeaderTradeDelivery>\n ".concat(y(r.shipToTradeParty,"ShipToTradeParty"),"\n </ram:ApplicableHeaderTradeDelivery>")),"\n <ram:ApplicableHeaderTradeSettlement>\n <ram:PaymentReference>").concat(d(e.supplyChainTradeTransaction.applicableHeaderTradeSettlement.paymentReference),"</ram:PaymentReference>\n <ram:InvoiceCurrencyCode>").concat(d(e.supplyChainTradeTransaction.applicableHeaderTradeSettlement.invoiceCurrencyCode),"</ram:InvoiceCurrencyCode>\n ").concat((t=e.supplyChainTradeTransaction.applicableHeaderTradeSettlement.specifiedTradeSettlementPaymentMeans,"\n <ram:SpecifiedTradeSettlementPaymentMeans>\n <ram:TypeCode>".concat(d(t.typeCode),"</ram:TypeCode>\n <ram:PayeePartyCreditorFinancialAccount>\n <ram:IBANID>").concat(d(t.payeePartyCreditorFinancialAccount.iBANID),"</ram:IBANID>\n </ram:PayeePartyCreditorFinancialAccount>\n <ram:PayeeSpecifiedCreditorFinancialInstitution>\n <ram:BICID>").concat(d(t.payeeSpecifiedCreditorFinancialInstitution.bICID),"</ram:BICID>\n </ram:PayeeSpecifiedCreditorFinancialInstitution>\n </ram:SpecifiedTradeSettlementPaymentMeans>")),"\n ").concat(l(e.supplyChainTradeTransaction.applicableHeaderTradeSettlement.applicableTradeTax),"\n ").concat(p(e.supplyChainTradeTransaction.applicableHeaderTradeSettlement.billingSpecifiedPeriod),"\n ").concat((a=e.supplyChainTradeTransaction.applicableHeaderTradeSettlement.specifiedTradePaymentTerms,"\n <ram:SpecifiedTradePaymentTerms>\n <ram:Description>".concat(d(a.description),"</ram:Description>\n </ram:SpecifiedTradePaymentTerms>")),"\n ").concat((n=e.supplyChainTradeTransaction.applicableHeaderTradeSettlement.specifiedTradeSettlementHeaderMonetarySummation,"\n <ram:SpecifiedTradeSettlementHeaderMonetarySummation>\n <ram:LineTotalAmount>".concat(d(n.lineTotalAmount),"</ram:LineTotalAmount>\n <ram:TaxBasisTotalAmount>").concat(d(n.taxBasisTotalAmount),'</ram:TaxBasisTotalAmount>\n <ram:TaxTotalAmount currencyID="').concat(d(n.taxTotalCurrencyID),'">').concat(d(n.taxTotalAmount),"</ram:TaxTotalAmount>\n <ram:GrandTotalAmount>").concat(d(n.grandTotalAmount),"</ram:GrandTotalAmount>\n <ram:DuePayableAmount>").concat(d(n.duePayableAmount),"</ram:DuePayableAmount>\n </ram:SpecifiedTradeSettlementHeaderMonetarySummation>")),"\n </ram:ApplicableHeaderTradeSettlement>\n </rsm:SupplyChainTradeTransaction>\n</rsm:CrossIndustryInvoice>")}},524:(e,n)=>{Object.defineProperty(n,"__esModule",{value:!0})},854:(e,n)=>{Object.defineProperty(n,"__esModule",{value:!0})},900:(e,n)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.simpleConvertEInvoiceToCII=void 0,n.simpleConvertEInvoiceToCII=function(e){var n,a,t,r={id:e.id,typeCode:"380",issueDateTime:{format:"102",value:e.issueDate},includedNotes:(e.notes||[]).map(function(e){return{content:e,subjectCode:"NOTE"}})},i=e.lineItems.map(function(n){return{associatedDocumentLineDocument:{lineID:n.id},specifiedTradeProduct:{sellerAssignedID:n.id,buyerAssignedID:n.id,name:n.name,description:n.description},specifiedLineTradeAgreement:{buyerOrderReferencedDocument:{lineID:""},netPriceProductTradePrice:{chargeAmount:(n.unitPrice*(1-e.taxTotal.taxPercentage)).toString()}},specifiedLineTradeDelivery:{billedQuantity:{unitCode:"C62",value:n.quantity.toString()}},specifiedLineTradeSettlement:{applicableTradeTax:{typeCode:"VAT",categoryCode:"S",rateApplicablePercent:e.taxTotal.taxPercentage.toString()},billingSpecifiedPeriod:{endDateTime:{format:"102",value:e.dueDate||e.issueDate}},specifiedTradeSettlementLineMonetarySummation:{lineTotalAmount:n.lineTotal.toString()},additionalReferencedDocument:{issuerAssignedID:"",typeCode:""}}}}),c=function(e,n,a,t,r,i){return void 0===a&&(a=""),void 0===t&&(t=""),void 0===r&&(r=""),{name:e,postalTradeAddress:{postcodeCode:t,lineOne:a,cityName:r,countryID:n},specifiedTaxRegistrations:i?[{id:i,schemeID:"VA"}]:[]}},o=c(e.supplier.name,e.supplier.country,e.supplier.street||"",e.supplier.postalCode||"",e.supplier.city||"",e.supplier.taxNumber),d=c(e.customer.name,e.customer.country,e.customer.street||"",e.customer.postalCode||"",e.customer.city||"",e.customer.taxNumber),m={buyerReference:e.customer.name,sellerTradeParty:o,buyerTradeParty:d,sellerOrderReferencedDocument:{issuerAssignedID:""},buyerOrderReferencedDocument:{issuerAssignedID:""},contractReferencedDocument:{issuerAssignedID:""},additionalReferencedDocument:{issuerAssignedID:"",typeCode:""}},u={shipToTradeParty:d},s={typeCode:(null===(n=e.paymentDetails)||void 0===n?void 0:n.paymentMeansCode)||"31",payeePartyCreditorFinancialAccount:{iBANID:(null===(a=e.paymentDetails)||void 0===a?void 0:a.bankDetails.iban)||""},payeeSpecifiedCreditorFinancialInstitution:{bICID:(null===(t=e.paymentDetails)||void 0===t?void 0:t.bankDetails.bic)||""}};return{exchangedDocumentContext:{businessProcessSpecifiedDocumentContextParameter:{id:"urn:fdc:peppol.eu:2017:poacc:billing:01:1.0"},guidelineSpecifiedDocumentContextParameter:{id:"urn:cen.eu:en16931:2017#compliant"}},exchangedDocument:r,supplyChainTradeTransaction:{includedSupplyChainTradeLineItems:i,applicableHeaderTradeAgreement:m,applicableHeaderTradeDelivery:u,applicableHeaderTradeSettlement:{paymentReference:e.id,invoiceCurrencyCode:e.currency,specifiedTradeSettlementPaymentMeans:s,applicableTradeTax:{typeCode:"VAT",categoryCode:"S",rateApplicablePercent:e.taxTotal.taxPercentage.toString(),calculatedAmount:e.taxTotal.taxAmount.toString(),basisAmount:e.totalNetPrice.toString()},billingSpecifiedPeriod:{startDateTime:{format:"102",value:e.issueDate},endDateTime:{format:"102",value:e.dueDate||e.issueDate}},specifiedTradePaymentTerms:{description:"Due upon receipt"},specifiedTradeSettlementHeaderMonetarySummation:{lineTotalAmount:e.totalNetPrice.toString(),taxBasisTotalAmount:e.totalNetPrice.toString(),taxTotalAmount:e.taxTotal.taxAmount.toString(),taxTotalCurrencyID:e.currency||"EUR",grandTotalAmount:(e.totalNetPrice+e.taxTotal.taxAmount).toString(),duePayableAmount:(e.totalNetPrice+e.taxTotal.taxAmount).toString()}}}}}}},n={};return function a(t){var r=n[t];if(void 0!==r)return r.exports;var i=n[t]={exports:{}};return e[t].call(i.exports,i,i.exports,a),i.exports}(229)})());