Introduction
The Ministry of Finance of Poland introduced an updated version of the JPK structure 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:
Changes in 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”) |
Changes in 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. |
Changes in 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. |
Changes in 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 hotfix provides support of changes in VAT invoices report (SAF invoices or JPK_FA) introduced by version 3 of the “Jednolity Plik Kontrolny (JPK) – Faktury VAT” Standard Audit File that the Ministry of Finance of Poland (Ministerstwo Finansów – Krajowa Administracja Skarbowa) announced on October 29, 2019.
The hotfix includes also changes to cover scenarios reported for Finance and Operations in KB #4520771 (“P_19A, P_19B, P_19C tags must report user-editable text depending on Exempt code 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 of advance invoice is in the file”).
Setup
To prepare your AX 2012 R3 system to report “JPK_FA” report of version “3” the following steps must be done:
-
Install the hotfix package (link to package download is in the “Hotfix information” section of this article), which contains new XSLT file (AifOutboundPortReportSAFVATInvoice_PL.xslt).
-
Open AOT > Resources, select AifOutboundPrtReportSAFVATInvoiceV3_PL, right-click on it and select Open.
3. In the opened Preview form click on Export button, select folder to save the “AifOutboundPortReportSAFVATInvoice_PL” file and click Save.
4. Open the saved “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 Reverse change (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 Reverse change (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 post transactions on margin procedure - second-hand goods (which must be reported 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 the example: 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 post transactions on margin procedure - works of art (which must be reported as “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 the example: 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 post transactions on margin procedure - collectors' items and antiques (which must be 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 the example: 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 to post transactions with exempt, description of which must be reported in <P_19A> tag (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. Należy wskazać przepis ustawy albo aktu wydanego na podstawie ustawy, na podstawie którego podatnik stosuje zwolnienie od podatku):
row #33 <xsl:variable name="VATActP19AExemptCodes" select="'ExemptCode1;ExemptCode2;ExemptCode3'"/>
Note! Follow the syntaxis applied in the example: 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 to post transactions with exempt, description of which must be reported in <P_19B> tag (The provision of Directive 2006/112/WE, which exempts from such tax the supply of goods or such services. Należy wskazać przepis dyrektywy 2006/112/WE, który zwalnia od podatku 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 the example: 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 to post transactions with exempt, description of which must be reported in <P_19C> tag (Another legal basis indicating that the supply of goods or services benefits from the exemption. Należy wskazać inną podstawę prawną wskazującą na to, że dostawa towarów lub świadczenie usług korzysta ze zwolnienia):
row #35 <xsl:variable name="OtherBasisP19CExemptCodes" select="'ExemptCode7;ExemptCode8;ExemptCode9'"/>
Note! Follow the syntaxis applied in the example: 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 ports for electronic audit reports, select the “SAF VAT invoices (Poland)” format and Delete it (if it exists):
15. Click folder iconof the “Import XSLT” field on the “Outbound port” fast-tab and select the 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 up before you need to click on “Create / Update ports” button on the Action pane to populate the list of default ports, define the path the “AifOutboundPortReportSAFVATInvoice_PL.xslt” file (p.8 of this guidance), set "Default export path" to the folder you expect where the reports to be saved, click "Create / Update ports" to import the XSLT into Dynamics AX with the default ID. The "XSLT ID" field is set to reference the XSL transformation. As a result, the outbound AIF port is created and initialized with a list of needed services.
Implementation details
Version 3 of JPK_FA report introduces possibility of reporting invoices with different document currency in the same file. For this purpose, “Currency” parameter on the dialog form of “SAF VAT invoices (Poland)” report is made optional. When user specifies in this parameter a currency, the report will include only invoices with this currency, when user doesn’t specify any currency in this field, report will be generated for all the invoices not considering document currency of the invoices.
<P_14*> tags
According to the requirements of the version 3 of JPK_FA report, when invoices is posted in 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” is defined as currency for the Sales tax codes used for transactions to be included in to JPK_FA report. Basing on this assumption, for invoices which document currency 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 amount in 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 Dynamics AX 2012 R3, AX 2012 R2, and AX 2009 SP1”) introduces possibility to setup Methods of payments in Account receivable module as “Split payment”.
According to the requirements of the version 3 of JPK_FA report, < P_18A> tag for an invoice must be reported as “true” when split payment mechanism was applied for this invoice. To define if split payment mechanism was applied to invoice, system checks “Split payment” parameter of the Method of payment which was used during the invoice posting and reflected in the corresponding customer transaction (in CustTrans table). It is important to keep setup of “Split payment” parameter of Methods of payments stable to guaranty correct reporting.
<P_19>, <P_19A>, <P_19B> and <P_19C> tags
According to 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 wydanych na 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 reason of exemption depending on basis of the exemption. Specify text that will be reported in these tags in Description field of related Sales tax exempt 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 Description field of Sales tax exempt codes included in configurable lists of Sales tax exempt 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
According to 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' items and antiques, taxable base of which is in accordance with art. 120 paragraph 4th and 5th. When <P_106E_3> tag is reported with “true” value, <P_106E_3A> tag must represent related value(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
According to the requirements of version 3 of JPK_FA report <Zamowienie> node must represent orders or contracts referred to in art. 106f paragraph 1 item 4 of the Act (for advance invoices) in the currency in which the advance invoice was issued (Zamówienia lub umowy, o których mowa w art. 106f ust. 1 pkt 4 ustawy (dla faktur zaliczkowych) w walucie, w której wystawiono fakturę zaliczkową).
To complete this requirement system collects information through the data base by the lines of Sales orders (SO) and Free text invoices (FTI) which are linked to the advance invoices included to the report are provide the following information 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 document lines 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
https://mbs.microsoft.com/partnersource/resources/support/supportinformation/Global+Support+Contacts
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.