Skip to content

Commit

Permalink
[14.0][IMP] set INVCONT when needed in XML
Browse files Browse the repository at this point in the history
Fix for #2094

Co-authored-by: sergiocorato <[email protected]>
  • Loading branch information
TheMule71 and sergiocorato committed Dec 3, 2021
1 parent ca0a3b1 commit f114377
Show file tree
Hide file tree
Showing 4 changed files with 149 additions and 6 deletions.
11 changes: 5 additions & 6 deletions l10n_it_fatturapa_out/data/invoice_it_template.xml
Original file line number Diff line number Diff line change
Expand Up @@ -200,12 +200,11 @@ e 'line' per riga di fattura (a seconda del livello in cui sono chiamati)
t-if="line.admin_ref"
t-esc="line.admin_ref"
/>
<!-- <AltriDatiGestionali>-->
<!-- <TipoDato t-esc=""/>-->
<!-- <RiferimentoTesto t-esc=""/>-->
<!-- <RiferimentoNumero t-esc=""/>-->
<!-- <RiferimentoData t-esc=""/>-->
<!-- </AltriDatiGestionali>-->
<AltriDatiGestionali
t-if="tax_ids.kind_id.code == 'N2.1' and in_eu(line.move_id.partner_id)"
>
<TipoDato>INVCONT</TipoDato>
</AltriDatiGestionali>
</DettaglioLinee>
</template>

Expand Down
102 changes: 102 additions & 0 deletions l10n_it_fatturapa_out/tests/data/IT06363391001_00013.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
<ns1:FatturaElettronica
xmlns:ns1="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2"
versione="FPR12">
<FatturaElettronicaHeader>
<DatiTrasmissione>
<IdTrasmittente>
<IdPaese>IT</IdPaese>
<IdCodice>06363391001</IdCodice>
</IdTrasmittente>
<ProgressivoInvio>00013</ProgressivoInvio>
<FormatoTrasmissione>FPR12</FormatoTrasmissione>
<CodiceDestinatario>XXXXXXX</CodiceDestinatario>
<ContattiTrasmittente>
<Telefono>06543534343</Telefono>
<Email>[email protected]</Email>
</ContattiTrasmittente>
</DatiTrasmissione>
<CedentePrestatore>
<DatiAnagrafici>
<IdFiscaleIVA>
<IdPaese>IT</IdPaese>
<IdCodice>06363391001</IdCodice>
</IdFiscaleIVA>
<Anagrafica>
<Denominazione>YourCompany</Denominazione>
</Anagrafica>
<RegimeFiscale>RF01</RegimeFiscale>
</DatiAnagrafici>
<Sede>
<Indirizzo>Via Milano, 1</Indirizzo>
<CAP>00100</CAP>
<Comune>Roma</Comune>
<Provincia>AK</Provincia>
<Nazione>IT</Nazione>
</Sede>
<Contatti>
<Telefono>06543534343</Telefono>
<Email>[email protected]</Email>
</Contatti>
</CedentePrestatore>
<CessionarioCommittente>
<DatiAnagrafici>
<IdFiscaleIVA>
<IdPaese>LV</IdPaese>
<IdCodice>40003844254</IdCodice>
</IdFiscaleIVA>
<Anagrafica>
<Denominazione>B2B Customer Intra</Denominazione>
</Anagrafica>
</DatiAnagrafici>
<Sede>
<Indirizzo>Frankfurt Strasse, 1</Indirizzo>
<CAP>00000</CAP>
<Comune>Frankfurt</Comune>
<Provincia>EE</Provincia>
<Nazione>LV</Nazione>
</Sede>
</CessionarioCommittente>
</FatturaElettronicaHeader>
<FatturaElettronicaBody>
<DatiGenerali>
<DatiGeneraliDocumento>
<TipoDocumento>TD01</TipoDocumento>
<Divisa>EUR</Divisa>
<Data>2020-01-07</Data>
<Numero>INV/2020/0013</Numero>
<ImportoTotaleDocumento>10.00</ImportoTotaleDocumento>
<Art73>SI</Art73>
</DatiGeneraliDocumento>
</DatiGenerali>
<DatiBeniServizi>
<DettaglioLinee>
<NumeroLinea>1</NumeroLinea>
<Descrizione>Mouse Optical</Descrizione>
<Quantita>1.000</Quantita>
<UnitaMisura>Unit(s)</UnitaMisura>
<PrezzoUnitario>10.00000</PrezzoUnitario>
<PrezzoTotale>10.00</PrezzoTotale>
<AliquotaIVA>0.00</AliquotaIVA>
<Natura>N2.1</Natura>
<AltriDatiGestionali>
<TipoDato>INVCONT</TipoDato>
</AltriDatiGestionali>
</DettaglioLinee>
<DatiRiepilogo>
<AliquotaIVA>0.00</AliquotaIVA>
<Natura>N2.1</Natura>
<ImponibileImporto>10.00</ImponibileImporto>
<Imposta>0.00</Imposta>
<RiferimentoNormativo>Not subject to VAT law</RiferimentoNormativo>
</DatiRiepilogo>
</DatiBeniServizi>
<DatiPagamento>
<CondizioniPagamento>TP02</CondizioniPagamento>
<DettaglioPagamento>
<ModalitaPagamento>MP05</ModalitaPagamento>
<DataScadenzaPagamento>2020-02-29</DataScadenzaPagamento>
<ImportoPagamento>10.00</ImportoPagamento>
</DettaglioPagamento>
</DatiPagamento>
</FatturaElettronicaBody>
</ns1:FatturaElettronica>
4 changes: 4 additions & 0 deletions l10n_it_fatturapa_out/tests/fatturapa_common.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,10 @@ def _tax_vals(ref):
self.res_partner_fatturapa_2 = self.env.ref(
"l10n_it_fatturapa.res_partner_fatturapa_2"
)
# INTRA Customer
self.res_partner_fatturapa_5 = self.env.ref(
"l10n_it_fatturapa.res_partner_fatturapa_5"
)
self.intermediario = self.env.ref("l10n_it_fatturapa.res_partner_fatturapa_1")
self.stabile_organizzazione = self.env.ref(
"l10n_it_fatturapa.res_partner_fatturapa_3"
Expand Down
38 changes: 38 additions & 0 deletions l10n_it_fatturapa_out/tests/test_fatturapa_xml_validation.py
Original file line number Diff line number Diff line change
Expand Up @@ -672,6 +672,44 @@ def test_12_xml_export(self):
xml_content = base64.decodebytes(attachment.datas)
self.check_content(xml_content, "IT06363391001_00012.xml")

def test_13_xml_export(self):
self.set_sequences(13, "2020-01-07")
self.tax_00_ns.kind_id = self.env.ref("l10n_it_account_tax_kind.n2_1")
invoice = self.invoice_model.create(
{
"name": "INV/2020/0013",
"invoice_date": "2020-01-07",
"partner_id": self.res_partner_fatturapa_5.id,
"journal_id": self.sales_journal.id,
"invoice_payment_term_id": self.account_payment_term.id,
"user_id": self.user_demo.id,
"move_type": "out_invoice",
"currency_id": self.EUR.id,
"invoice_line_ids": [
(
0,
0,
{
"account_id": self.a_sale.id,
"product_id": self.product_product_10.id,
"name": "Mouse Optical",
"quantity": 1,
"product_uom_id": self.product_uom_unit.id,
"price_unit": 10,
"tax_ids": [(6, 0, {self.tax_00_ns.id})],
},
)
],
}
)
invoice._post()
res = self.run_wizard(invoice.id)
attachment = self.attach_model.browse(res["res_id"])
self.set_e_invoice_file_id(attachment, "IT06363391001_00013.xml")

xml_content = base64.decodebytes(attachment.datas)
self.check_content(xml_content, "IT06363391001_00013.xml")

def test_14_xml_export(self):
"""
- create two product lines with different taxes, but same tax amount
Expand Down

0 comments on commit f114377

Please sign in to comment.