Poland: country specific update to support changes in VAT invoices report (SAF invoices or JPK_FA) introduced by version 3 valid from December 2, 2019 in Dynamics AX 2012 R3

Applies to: Dynamics 365 for Finance and Operations

Introduction


The Ministry of Finance of Poland introduced an updated version of the JPKstructure for invoices - JPK_FA (3), which will be in force from December 2,2019. The updated schema of JPK_FA (3) is published on the website of the Ministry of Finance.

Overview


The version “3” of schema of JPK_FA introduces the following changes:

Changesin the “Naglowek” section of the report

What has changed

Description of the change

<KodFormularza> element, KodSystemowy” attribute

The value was changed to “JPK_FA (3)”.

<WariantFormularza> element

The value was changed to “3”.

<DataOd> and <DataDo> elements

The type was changed from “etd:TData” to “tns:TData”.

<DomyślnyKodWaluty> element

This element was removed.

<KodUrzedu> element

The following description was added:

Kod urzędu skarbowego, właściwy dla podatnika przekazującego JPK_FA

(“The code of the tax authority competent for a taxpayer that submits a JPK_FA”)

Changesin the “Podmiot1” section of the report

What has changed

Description of the change

<IdentyfikatorPodmiotu> element

The type was changed from etd:TidentyfikatorOsobyNiefizycznej” to “etd:TIdentyfikatorOsobyNiefizycznej1”.

<AdresPodmiotu> element

The type was changed from “etd:TadresPolski” to “etd:TAdresPolski1”.

<AdresPodmiotu2> element

This new element of the new “etd:TadresZagraniczny” type was added. This element must be reported instead of the <AdresPodmiotu> element if the taxpayer who submits a JPK_FA is located outside Poland.

Changesin the “Faktura” section of the report

What has changed

Description of the change

“Typ” attribute

This attribute is excluded from the report.

<Faktura> element

The description was changed:

Wartości sprzedaży i kwoty podatku wypełnia się w walucie, w której wystawiono fakturę, z wyjątkiem pól, w których kwoty podatku zostały przeliczone zgodnie z art. 31a w związku z art. 106e ust. 11 ustawy

(“The sale price and the tax amount shall be filled in the currency in which the invoice is issued, except for the fields in which the tax amounts have been recalculated in accordance with article 31A in connection with article 106e of paragraph 11 of the Law”)

<KodWaluty> element

This new element of the “kck:currCode_Type” type was added.

<P_1> and <P_6> elements

The type was changed from “etd:TData” to “tns:TDataT”.

<P_4B>, <P_5B>, <P_13_x>, <P_14_x>, and <P_15> elements

The description was changed.

<P_14_1W>, <P_14_2W>, <P_14_3W>, and <P_14_4W> elements

These new elements were added for invoices that were issued in foreign currencies. These elements are intended for tax amounts on the sum of the net sales value. The amounts are converted in accordance with Article 31a, per art. 106e, paragraph 11 of the act.

<P_14_5> element

This element is excluded from the report.

<P_18A> element

This new element is a marker of the split payment mechanism.

<P_22> element

This new element is an intracommunity marker for the delivery of a new means of transport.

<P_106E_3> element

This element was changed from optional to required.

<ZALZaplata> and <ZALPodatek> elements

These elements are excluded from the report.

<NrFaZaliczkowej> element

This new element was added to report the number of previous advance invoices.

<StawkiPodatku> element

This element is excluded from the report.

Changesin the “FakturaWiersz” section of the report

What has changed

Description of the change

Typ” attribute

This attribute is excluded from the report.

<FaturaWiersz> element

The description was changed:

Szczegółowe pozycje faktur w walucie, w której wystawiono fakturę

(“Detailed invoice records in the currency in which the invoice is issued”)

New ”Zamowienie” section

What has changed

Description of the change

<P_2AZ> element

This new element was added for the invoice number that the order or contract is related to. This invoice number is that same as the invoice number in the P_2A field.

<WartoscZamowienia> element

This new element was added for the value of the order or contract, including the tax amount.

<ZamowienieWiersz> element

This new element was added for the detailed order or contract items in the currency that the advance invoice was issued in.

<P_7Z> element

This new element was added for the name (type) of the goods or service.

<P_8AZ> element

This new element was added for the measure of the ordered goods or the scope of the service.

<P_8BZ> element

This new element was added for the quantity of the ordered goods or the scope of the service.

<P_9AZ> element

This new element was added for the net unit price.

<P_11NettoZ> element

This new element was added for the value of the ordered goods or services, excluding the tax amount.

<P_11VatZ> element

This new element was added for the tax amount on the ordered goods or services.

<P_12Z> element

This new element was added for the tax rate.

New ”ZamowienieCtrl” section

What has changed

Description of change

<LiczbaZamowien> element

This new element was added for the number of orders or contracts in ”Zamowienie“ section of the report.

<WartoscZamowien> element

This new element was added for the total value of the <WartoscZamowienia> column in ”Zamowienie“ section during the reporting period.

This hotfixprovides support of changes in VAT invoices report (SAF invoices or JPK_FA)introduced by version 3of the “Jednolity Plik Kontrolny (JPK) – Faktury VAT” Standard Audit File thatthe Ministry of Finance of Poland (Ministerstwo Finansów – Krajowa AdministracjaSkarbowa) announced on October 29, 2019. 

Thehotfix includes also changes to cover scenarios reported for Finance andOperations in KB #4520771(“P_19A, P_19B, P_19C tags must report user-editable text depending on Exemptcode on the tax transaction”), KB #4510230(“Unit of measure is empty for free text invoice”) and #346886(“Final sales invoice is not deducted by advance invoice amount and reversal ofadvance invoice is in the file”).



Setup


To prepare your AX 2012 R3 system to report “JPK_FA” report of version “3” thefollowing steps must be done:

  1. Install thehotfix package (link to package download is in the “Hotfix information” sectionof this article), which contains new XSLT file (AifOutboundPortReportSAFVATInvoice_PL.xslt).
  2. Open AOT > Resources,select AifOutboundPrtReportSAFVATInvoiceV3_PL, right-click on it andselect Open.
image.png

3.  In theopened Preview form click on Export button, select folder to savethe “AifOutboundPortReportSAFVATInvoice_PL” file and click Save.

4.  Open thesaved “AifOutboundPortReportSAFVATInvoice_PL” file in the specified folder.

5.  Find row#28 check if you set up before (KB # 4506293 in row #25)Sales tax code(s) used in your Legal entity to post transactions on Reversechange (which must be reports as “oo”):

row #28 <xsl:variable name="ReverseChargeTaxCodes"select="'TaxCode1;RC;TaxCode3'"/>

Note! Follow the syntaxis applied in the example:replace only names of the Sales tax codes.

6. Find row#29 check if you set up before (KB # 4506293 in row #26)Sales tax code(s) used in your Legal entity to post transactions on Reversechange (which must be reported as “np”):

row #29 <xsl:variable name="NonTaxableTaxCodes"select="'TaxCode4;ExemptNP;TaxCode6'"/>

Note! Follow the syntaxis applied in the example:replace only names of the Sales tax codes.

7. Find row#30 and set up Sales tax code(s) used in your Legal entity to posttransactions on margin procedure - second-hand goods (which must bereported as “procedura marży - towary używane” in <P_106E_3A> tag):

row #30 <xsl:variable name="SecondHandGoodsTaxCodes"select="' TaxCode7;TaxCode8;TaxCode9'"/>

Note! Follow the syntaxis applied in theexample: replace only names of the Sales tax codes.

8. Find row#31 and set up Sales tax code(s) used in your Legal entity to posttransactions on margin procedure - works of art (which must be reportedas “procedura marży - dzieła sztuki” in <P_106E_3A> tag):

row #31 <xsl:variable name=" WorksOfArtTaxCodes" select="'TaxCodeA;TaxCodeB;TaxCodeC'"/>

Note! Follow the syntaxis applied in theexample: replace only names of the Sales tax codes.

9.  Find row#32 and set up Sales tax code(s) used in your Legal entity to posttransactions on margin procedure - collectors' items and antiques (which mustbe reported as “procedura marży - przedmioty kolekcjonerskie i antyki”in <P_106E_3A> tag):

row #32 <xsl:variable name="CollectorsItemsAntiquesTaxCodes"select="'TaxCodeD;TaxCodeE;TaxCodeF'"/>

Note! Follow the syntaxis applied in theexample: replace only names of the Sales tax codes.

10. Find row#33 and set up Sales tax exempt code(s) used in your Legal entity topost transactions with exempt, description of which must be reported in <P_19A>tag (The provision ofthe VAT act or act issued on the basis of the VAT act on the basis of which thetaxpayer applies tax exemption. Należy wskazać przepis ustawy albo aktuwydanego na podstawie ustawy, na podstawie którego podatnik stosuje zwolnienieod podatku):

row #33 <xsl:variable name="VATActP19AExemptCodes"select="'ExemptCode1;ExemptCode2;ExemptCode3'"/>

Note! Follow the syntaxis applied in theexample: replace only names of the Sales tax exempt codes.

11.  Find row#34 and set up Sales tax exempt code(s) used in your Legal entity topost transactions with exempt, description of which must be reported in <P_19B>tag (The provision ofDirective 2006/112/WE, which exempts from such tax the supply of goods or suchservices. Należy wskazać przepis dyrektywy 2006/112/WE, który zwalnia odpodatku taką dostawę towarów lub takie świadczenie usług):

row #34 <xsl:variable name="D2006_112_WEP19BExemptCodes"select="'ExemptCode4;ExemptCode5;ExemptCode6'"/>

Note! Follow the syntaxis applied in theexample: replace only names of the Sales tax exempt codes.

12.  Find row#35 and set up Sales tax exempt code(s) used in your Legal entity topost transactions with exempt, description of which must be reported in <P_19C>tag (Another legalbasis indicating that the supply of goods or services benefits from theexemption. Należy wskazać inną podstawę prawną wskazującą na to, że dostawatowarów lub świadczenie usług korzysta ze zwolnienia):

row #35 <xsl:variable name="OtherBasisP19CExemptCodes"select="'ExemptCode7;ExemptCode8;ExemptCode9'"/>

Note! Follow the syntaxis applied in theexample: replace only names of the Sales tax exempt codes.

13.  Save the changes in the AifOutboundPortReportSAFVATInvoice_PL”file.

14. Open System administration > Setup> Services and Application Integration Framework > Outbound portsfor electronic audit reports, select the “SAF VAT invoices (Poland)”format and Delete it (if it exists):

image.png

     15. Click folder icon of the“Import XSLT” field on the “Outbound port” fast-tab and selectthe exported and updated before “AifOutboundPortReportSAFVATInvoice_PL.xslt” file (p.3-6 of this guidance).
     16. Click on “Create / Update ports”button on the Action pane, check the XSLT transformation was updated.
     17. If “SAF VAT invoices (Poland)” format was not set upbefore you need to click on Create / Update ports” button on the Action pane to populate thelist of default ports, define the path the “AifOutboundPortReportSAFVATInvoice_PL.xslt”file (p.8 of thisguidance), set "Default export path" to the folder you expectwhere the reports to be saved, click "Create / Update ports"to import the XSLT into Dynamics AX with the default ID. The "XSLTID" field is set to reference the XSL transformation. As a result, theoutbound AIF port is created and initialized with a list of needed services.

Implementation details


Version 3of JPK_FA report introduces possibility of reporting invoices with differentdocument currency in the same file. For this purpose, “Currency”parameter on the dialog form of “SAF VAT invoices (Poland)” report ismade optional. When user specifies in this parameter a currency, the reportwill include only invoices with this currency, when user doesn’t specify anycurrency in this field, report will be generated for all the invoices not consideringdocument currency of the invoices.

<P_14*> tags

Accordingto the requirements of the version 3 of JPK_FA report, when invoices is postedin a currency which differs from “PLN”, <P_13*>, <P_14*> and<P_15> tags must represent amounts in the invoice currency and new <P_14*W>tags must represent related amounts in “PLN”. It is assumed that “PLN” isdefined as currency for the Sales tax codes used for transactions to beincluded in to JPK_FA report. Basing on this assumption, for invoices which documentcurrency differs from the currency setup in Sales tax codes used in the tax transaction(s)of this document, system reports additionally <P_14*W> tags with amountin sales tax code currency (as it is assumed to be “PLN”).

<P_18A> tag

KB # 4136816(“A country-specific update for Poland of Split payments in Microsoft DynamicsAX 2012 R3, AX 2012 R2, and AX 2009 SP1”) introduces possibility to setup Methodsof payments in Account receivable module as “Split payment”.

Accordingto the requirements of the version 3 of JPK_FA report, < P_18A>tag for an invoice must be reported as “true” when split paymentmechanism was applied for this invoice. To define if split payment mechanismwas applied to invoice, system checks “Split payment” parameter of the Methodof payment which was used during the invoice posting and reflected in thecorresponding customer transaction (in CustTrans table). It is important to keepsetup of “Split payment” parameter of Methods of payments stable to guarantycorrect reporting.

<P_19>, <P_19A>,<P_19B> and <P_19C> tags

Accordingto the requirements of JPK_FA report <P_19> tag must report “true”when tax exemption (art. 43 ust. 1, art. 113 ust. 1 i 9 albo przepisów wydanychna podstawie art. 82 ust. 3) was applied for the invoice.  When <P_19> tag is reported with “true”value, <P_19A>, <P_19B> or <P_19C> tags must represent reasonof exemption depending on basis of the exemption. Specify text that will bereported in these tags in Description field of related Sales taxexempt codes and define related Sales tax exempt codes in XSLT:

Tag

Description (pl)

Description (en-us)

How AX 2012 R3 will distinguish

P_19A

Należy wskazać przepis ustawy albo aktu wydanego na podstawie ustawy, na podstawie którego podatnik stosuje zwolnienie od podatku

The provision of the VAT act or act issued on the basis of the VAT act on the basis of which the taxpayer applies tax exemption.

In XSLT: Create a configurable list of Sales tax exempt codes (row #33) to define Sales tax exempt codes specifically used for P_19A

P_19B

Należy wskazać przepis dyrektywy 2006/112/WE, który zwalnia od podatku taką dostawę towarów lub takie świadczenie usług

The provision of Directive 2006/112/WE, which exempts from such tax the supply of goods or such services.

In XSLT: Create a configurable list of Sales tax exempt codes (row #34) to define Sales tax exempt codes specifically used for P_19B

P_19C

Należy wskazać inną podstawę prawną wskazującą na to, że dostawa towarów lub świadczenie usług korzysta ze zwolnienia

Another legal basis indicating that the supply of goods or services benefits from the exemption.

In XSLT: Create a configurable list of Sales tax exempt codes (row #35) to define Sales tax exempt codes specifically used for P_19C

Value which will be reported in <P_19A>, <P_19B> or<P_19C> tags will be composed from text which is specified in Descriptionfield of Sales tax exempt codes included in configurable lists of Sales taxexempt codes in rows #33, 34, 35 respectively.

 

<P_22> tag

<P_22>tag will be reported with “true” value when <P_22A> or <P_22B>or <P_22C> tag is valued.

<P_22A>tag will be always included to the report when at least one of <P_22B> or<P_22C> tag is valued.

<P_106E_3> and <P_106E_3A>tags

Accordingto the requirements of JPK_FA report < P_106E_3> tag must report “true”in the case of delivery of second-hand goods, works of art, collectors' itemsand antiques, taxable base of which is in accordance with art. 120 paragraph 4thand 5th.  When <P_106E_3>tag is reported with “true” value, <P_106E_3A> tag must represent relatedvalue(s):

Value of <P_106E_3A> tag

Description (pl)

Description (en-us)

How AX 2012 R3 will distinguish

procedura marży - towary używane

Towary używane - Dostawy towarów używanych, dzieł sztuki, przedmiotów kolekcjonerskich i antyków, dla których podstawę opodatkowania stanowi zgodnie z art. 120 ust. 4 i 5 marża

Second-hand goods - Deliveries of second-hand goods, works of art, collectors' items and antiques, for which the tax base is constituted in accordance with art. 120 paragraph 4th and 5th margin

In XSLT: Create a configurable list of Sales tax codes (row #30) to define Sales tax exempt codes specifically used for “margin procedure - second-hand goods

procedura marży - dzieła sztuki

Dzieła sztuki - Dostawy towarów używanych, dzieł sztuki, przedmiotów kolekcjonerskich i antyków, dla których podstawę opodatkowania stanowi zgodnie z art. 120 ust. 4 i 5 marża

Deliveries of second-hand goods, works of art, collectors' items and antiques, for which the tax base is constituted in accordance with art. 120 paragraph 4th and 5th margin

In XSLT: Create a configurable list of Sales tax codes (row #31) to define Sales tax exempt codes specifically used for “margin procedure - art works

procedura marży - przedmioty kolekcjonerskie i antyki

Dostawy towarów używanych, dzieł sztuki, przedmiotów kolekcjonerskich i antyków, dla których podstawę opodatkowania stanowi zgodnie z art. 120 ust. 4 i 5 marża

Deliveries of second-hand goods, works of art, collectors' items and antiques, for which the tax base is constituted in accordance with art. 120 paragraph 4th and 5th margin

In XSLT: Create a configurable list of Sales tax codes (row #32) to define Sales tax exempt codes specifically used for “margin procedure - collectors' items and antiques

<Zamowienie> and<ZamowienieCtrl> nodes

Accordingto the requirements of version 3 of JPK_FA report <Zamowienie> nodemust represent orders or contracts referred to in art. 106f paragraph 1 item 4of the Act (for advance invoices) in the currency in which the advance invoicewas issued (Zamówienia lub umowy, o których mowa w art. 106f ust. 1 pkt 4ustawy (dla faktur zaliczkowych) w walucie, w której wystawiono fakturęzaliczkową).

To completethis requirement system collects information through the data base by the linesof Sales orders (SO) and Free text invoices (FTI) which arelinked to the advance invoices included to the report are provide the followinginformation from them:

Tag name

Tag description (pl)

Tag description (en-us)

How AX 2012 R3 collects infprmation

P_7Z

Nazwa (rodzaj) towaru lub usługi

Name (type) of the good or service

Value stored in line of SO or FTI in AX data base

P_8AZ

Miara zamówionego towaru lub zakres usługi

Unit of measure of the ordered goods or scope of the service

UOM value stored in line of SO or FTI in AX data base. ("usługa" when empty)

P_8BZ

Ilość zamówionego towaru lub zakres usługi

Quantity of ordered goods or scope of service

Value of quantity stored in line of SO or FTI in AX data base.

P_9AZ

Cena jednostkowa netto

Net unit price

Value of price stored in line of SO or FTI in AX data base.

P_11NettoZ

Wartość zamówionego towaru lub usługi bez kwoty podatku

Value of the ordered goods or services without the amount of tax

Calculated value of tax base amount by the line of SO or FTI basing on quantity stored in the line (P_8BZ).

P_11VatZ

Kwota podatku od zamówionego towaru lub usługi

Tax amount on ordered goods or services

Calculated value of tax amount by the line of SO or FTI basing on quantity stored in the line (P_8BZ).

P_12Z

Stawka podatku

Tax rate

Calculated value tax rate based on tax setup in the line of SO or FTI (Sales tax group and Item sales tax group).

In respect to the values reported for the lines of SO or FTI, <WartoscZamowienia>tag value of <Zamowienie> node is calculated as sum by all the documentlines of calculated values of tax base amount and calculated values of tax amount(P_11NettoZ + P_11VatZ).

<WartoscZamowien>tag value of <ZamowienieCtrl> node is calculated as sum of <WartoscZamowienia>tag values by all the documents reported in <Zamowienie> node.

Hotfix information


A supported hotfix is available from Microsoft. There is a "Hotfix download available" section at the top of this Knowledge Base article. If you are encountering an issue downloading, installing this hotfix, or have other technical support questions, contact your partner or, if enrolled in a support plan directly with Microsoft, you can contact technical support for Microsoft Dynamics and create a new support request. To do this, visit the following Microsoft website:
 

https://mbs.microsoft.com/support/newstart.aspx

You can also contact technical support for Microsoft Dynamics by phone using these links for country specific phone numbers. To do this, visit one of the following Microsoft websites:
 
Partners
 
 
Customers
 
 
In special cases, charges that are ordinarily incurred for support calls may be canceled if a Technical Support Professional for Microsoft Dynamics and related products determines that a specific update will resolve your problem. The usual support costs will apply to any additional support questions and issues that do not qualify for the specific update in question.
 

How to obtain the Microsoft Dynamics AX updates files

This update is available for manual download and installation from the Microsoft Download Center.
 
 

Prerequisites

You must have one of the following products installed to apply this hotfix:

  • Microsoft Dynamics AX 2012 R3

Restart requirement

You must restart the Application Object Server (AOS) service after you apply the hotfix.