Skip to main content

How To Configure Fiscal Poland

Fiscal Overview

For shared background, see Fiscal Overview.


Introduction

The fiscal approach in Poland is based around the use of Fiscal Printers. Enactor has already integrated the UPOS FP-20 and FP-T88 FVA devices in this market. These fiscal printers contain a write-once-read-many fiscal memory, which is used to store the values for each transaction.

The fiscalisation approach recently changed in Poland. Presently it is possible to use either the old system where transactions are recorded only on a fiscal memory in the printer or the new system where transactions must also be submitted to the authorities online. It will be possible to purchase the old style of offline printer until the end of 2022, after which time only the new online version will be available. It will be possible to use old-style printers until their fiscal memory is exhausted.

UPOS offers an online version of both the FP-20 and the FP-T88 FVA, and since the online communication is handled solely by the printer, Enactor's interface to the printer is the same across the models.

In Poland the fiscal printers must be certified but there is no requirement to certify the POS or the overall solution.

The fiscal printer memory has several limits, and once one of these is reached the printer is at the end of life and will need to be replaced:

  • 2,100 Closed Fiscal Days
  • 30 Tax Rate Changes
  • 350,000 Unique Products Ever Sold

Polish fiscal printer memory limits overview showing capacity thresholds

Overview of fiscal printer memory limits. The printer must be replaced when any of these limits is reached.

Each fiscal transaction on the POS will result in the printing of a fiscal receipt which must contain the fiscal mark. The format of the receipt is defined in the legislation and can only be altered in limited ways by including custom headers, footers, and a logo at the start of the receipt. The receipt must contain an identifier for the operator, although this can be an ID rather than their name; this should be considered when setting up Polish users.

info

The total of the receipt must always be positive. Returns and like-for-like exchanges are handled as non-fiscal receipts. The accounting of tax for returns must be manually handled by the retailer's accounting department.

As well as printing fiscal receipts, the printer can also be used to print non-fiscal receipts in the same way as any normal thermal receipt printer. The only requirement of a non-fiscal receipt is that it must not contain the fiscal mark and it has text in Polish (NIEFISKALNY) to announce that it is a non-fiscal receipt at the beginning and the end. These non-fiscal receipts can be used for things like printing cash management slips since cash management transactions are non-fiscal in Poland. Receipt copies are also non-fiscal receipts and must not contain the fiscal mark.

It is necessary to be able to print X, Y and Periodic reports. The production of these reports is handled by the printer but triggered by the POS. In the case of the Periodic report, the POS also supplies the from and to dates to the printer after capturing them from the operator.

warning

The Z report must be produced at least once every 24-hour period and the report receipt must be kept by the retailer for 5 years. It is recommended to link the production of this report to the day end process.

In the case of an invoice being issued, the fiscal receipt must contain the tax ID of the customer, which will be captured on the POS when requesting an invoice. An invoice number must also be generated either by the POS or some retailer-specific backend process, which will be passed to the printer and included on the receipt. The layout of fiscal invoice receipts is managed by the printer and contains a more detailed tax breakdown than normal fiscal receipts. The retailer may also print an additional non-fiscal invoice document as well as the fiscal invoice receipt. These optional additional receipts can be printed on either the fiscal printer or some other printer, for example an A4 laser printer.

When taking a deposit for an item, a fiscal receipt must be issued for the value of the deposit. When the customer returns and pays the balance, a second fiscal receipt should be issued for the full amount but with a discount of the original amount paid as a deposit.


Deployment Overview

Using the Estate Manager application update broadcaster, deploy the fiscal solution as follows:

  1. Send the application updater update.zip to the devices you wish to deploy the fiscal solution on.

Estate Manager application update broadcaster showing the application updater update deployment

Use the Estate Manager application update broadcaster to send the application updater update.zip to the target devices.
  1. Wait until the update succeeds.
  2. Send the update POS min.zip file.
  3. Wait until it succeeds.
  4. Send the Fiscal Module Update.
  5. Send the Poland printer resources update.
  6. Once both updates are completed, the POS will be ready with the new POS Fiscal Module.
  7. To verify the updates:
    1. Check the installation location's pos/custom-lib folder for JAR files containing "fiscal" in their names.
    2. Check the ext-lib folder for these files:
      • commons-lang-2.6.jar
      • jSerialComm-2.10.4.jar
      • javapos-1.14.3.jar
      • jcl.jar
      • log4j-api-2.19.0.jar
      • log4j-core-2.19.0.jar
      • log4j-slf4j2-impl-2.19.0.jar
      • slf4j-api-2.0.6.jar
      • upos-jpos-pl.jar
      • xercesImpl-2.12.2.jar
      • xml-apis-1.4.01.jar
    3. Check the config folder for the jpos.xml file. Ensure that the jpos.properties file is also present inside the jpos/res directory.

Configuration Overview

The following configuration changes are required and must be broadcast to all Poland devices in preparation for go live. Detailed steps for how to do this are contained in supplementary how-to guides available on the Enactor Insights portal, as well as being covered in the Introduction to Enactor training course.

  1. Region - Create a Poland region within the Region Group Hierarchy
  2. Location - Configure receipt header, footer and logo
  3. Tax Groups - Set up Polish tax groups
  4. Tax Scheme - Configure the Polish VAT tax scheme
  5. Tax Rates - Define Polish VAT rates with fiscal tax rate references
  6. Tax Region - Create a Poland tax region
  7. Tax Group Tax Methods - Link tax groups to the tax region and scheme
  8. POS Terminal Template - Set fiscalisation type, peripherals, receipts and tax
  9. Privileges - Configure fiscal-related privileges
  10. Menus - Add fiscal menu items to the POS
  11. Product Tax - Configure tax groups against products

Region

The region must be configured to continue the other configurations related to the fiscalisation. A region for Poland should be created within the Region Group Hierarchy.

Estate Manager Region configuration showing Poland region in the Region Group Hierarchy

Create a Poland region within the Region Group Hierarchy to support the fiscal configuration.

Location

There are no required configurations for the location, but the header, footer and logo for the receipt will be picked up from here if they are configured.

tip

In line with your procedures, it may be desirable to set these at the location template level rather than the location level. A possible exception to this would be situations where you have footers for each location.

Estate Manager Location configuration showing receipt header, footer and logo settings

Configure the receipt header, footer and logo at the location or location template level.

The logo must satisfy the following conditions:

  • Width - maximum of 360 pixels
  • Height - maximum of 256 pixels
  • Width and Height both divisible by 8
  • The image must be a monochrome bitmap

Tax Groups

The following tax groups should be configured and broadcast to the appropriate Polish devices.

Tax Group IDDescription
PL_0Liable for no tax
PL_1Liable for full tax
PL_2Liable for reduced tax
PL_3Liable for reduced tax

Tax Scheme

The following tax scheme should be configured and broadcast to the appropriate Polish devices.

Tax Scheme IDDescriptionPrice Include Tax
PLPL VATTRUE

Tax Rates

The following tax rates should be configured and broadcast to the appropriate Polish devices. Products to be sold in Poland should have the relevant tax rate configured against them.

Tax Rate TypeTax Rate IDEffective DateDescriptionDisplay CodePercentageFiscal Tax Rate Reference
VATPL_0Date the VAT rate became effective in PLLiable for no taxD0%0
VATPL_1Date the VAT rate became effective in PLLiable for full taxAAt time of writing 23%1
VATPL_2Date the VAT rate became effective in PLLiable for reduced taxBAt time of writing 8%2
VATPL_3Date the VAT rate became effective in PLLiable for reduced taxCAt time of writing 5%3

Tax Region

If it does not already exist, a Tax Region for Poland should be created within the Tax Region Group Hierarchy. It should have the ID PL and the Name Poland. It is not necessary to configure an External Reference ID.

Estate Manager Tax Region configuration showing Poland tax region with ID PL

Create a Poland tax region with the ID PL in the Tax Region Group Hierarchy.

Tax Group Tax Methods

The following tax group tax methods should be configured and broadcast to the appropriate Polish devices.

Tax GroupTax RegionTax SchemeTax Rate
PL Liable for no taxPolandPL VATLiable for no tax
PL Liable for full taxPolandPL VATLiable for full tax
PL Liable for reduced taxPolandPL VATLiable for reduced tax
PL Liable for reduced taxPolandPL VATLiable for reduced tax

POS Terminal Template

The POS Terminal Template used by all devices in Poland should be configured to have the Fiscalisation Type set to Poland. Currency should be set to Polish Zloty and Locale to Polish (Poland). Also add the POS Terminal Reference as well.

info

The POS Terminal Reference helps to identify the receipts when using the shared printer functionality.

POS Terminal Template General tab with Fiscalisation Type set to Poland, Currency set to Polish Zloty

Set Fiscalisation Type to Poland, Currency to Polish Zloty, and Locale to Polish (Poland).

Peripherals Tab

The Peripherals tab should be completed as follows.

FieldDetail
Receipt Printer TypeFP-T88 FVA Polish Fiscal Printer
Fiscal Printer AddressUPOSFPPL, or name defined in jpos.xml
Customer Display TypeFPT88 FVA Line Display
Customer Display ConfiglineDisplayWaitSecs = 1

POS Terminal Template Peripherals tab showing fiscal printer type and address configuration

Configure the Peripherals tab with the fiscal printer type and address. Set Receipt Printer Type to FP-T88 FVA Polish Fiscal Printer.

The Receipt Printer Address should be defined in the jpos.xml file, which must be placed inside the config folder. The value of the address property should be the IP address of the physical printer.

Example jpos.xml file structure showing fiscal printer address configuration

Example jpos.xml structure. Set the address property to the IP address of the physical printer.

Receipts Tab

The primary receipts should be set to the fiscal standard 44-column width versions. Customer Signature Slip should be set to Customer Signature Slip 44 Col.

POS Terminal Template Receipts tab showing fiscal standard 44 column width receipt templates

Set the primary receipts to the fiscal standard 44-column width versions and Customer Signature Slip to Customer Signature Slip 44 Col.

Tax Tab

Within the Tax section, the Tax Region should be set to Poland and the Tax Scheme to the Polish tax scheme.

POS Terminal Template Tax tab with Tax Region set to Poland and Tax Scheme set to PL VAT

Set Tax Region to Poland and Tax Scheme to the Polish VAT scheme.

Privileges

The following privileges will need to be configured and broadcast to the appropriate Polish devices.

tip

For more detail on privileges and roles, refer to the How To Configure Users, User Roles and User Templates.

Privilege IDPackage
enactor.pos.fiscal.SetHeaderAllowedPOS Fiscalisation
enactor.pos.fiscal.AuthorisesSetHeaderPOS Fiscalisation
enactor.pos.fiscal.SetFooterAllowedPOS Fiscalisation
enactor.pos.fiscal.AuthorisesSetFooterPOS Fiscalisation
enactor.pos.fiscal.SetLogoAllowedPOS Fiscalisation
enactor.pos.fiscal.AuthorisesSetLogoPOS Fiscalisation
enactor.pos.PrintFiscalReportsAllowedPOS Fiscalisation
enactor.pos.fiscal.SyncVATAllowedPOS Fiscalisation
enactor.pos.fiscal.AuthorisesSyncVATPOS Fiscalisation
enactor.pos.fiscal.SyncTimeAllowedPOS Fiscalisation
enactor.pos.fiscal.AuthorisesSyncTimePOS Fiscalisation
enactor.pos.RequestSimpleFiscalInvoiceAllowedEnactor POS
enactor.pos.ChangeFiscalInvoiceNumberAllowedPOS Fiscalisation

At an appropriate point within your Polish POS menu structure (suggested on the Admin menu), a fiscalisation menu with the following 5 items will need to be configured and broadcast to all the Polish POS devices.

POS fiscal admin menu showing Set Header, Set Footer, Set Logo, X Report and Z Report buttons

Configure a fiscal menu on the Admin menu with buttons for Set Header, Set Footer, Set Logo, X Report and Z Report.
EventIDButton LabelData NameData TypeData Value
Fiscal_Set_HeaderFiscal_Set_HeaderSet HeaderConfigTypeStringSET_HEADER
Fiscal_Set_FooterFiscal_Set_FooterSet FooterConfigTypeStringSET_FOOTER
Fiscal_Set_LogoFiscal_Set_LogoSet LogoConfigTypeStringSET_LOGO
Fiscal_PrintReports_XFiscal_PrintReports_XX ReportReportTypeStringX
Fiscal_PrintReports_ZFiscal_PrintReports_ZZ ReportReportTypeStringZ

The following items also need to be configured at a convenient point in the sales menu.

POS fiscal sales menu showing Request Simple Fiscal Invoice, Fiscal Receipt Copy and report buttons

Configure fiscal items on the sales menu including Request Simple Fiscal Invoice, Fiscal Receipt Copy and the fiscal report buttons.
EventIDButton LabelData NameData TypeData Value
RequestSimpleFiscalInvoiceRequestSimpleFiscalInvoiceRequest Simple Fiscal Invoice---
Fiscal_Print_Receipt_CopyFiscal_Print_Receipt_CopyFiscal Receipt Copy---
Fiscal_PrintReports_XFiscal_PrintReports_XFiscal X ReportReportTypeStringX
Fiscal_PrintReports_ZFiscal_PrintReports_ZFiscal Z ReportReportTypeStringZ
Fiscal_PrintReports_PeriodicFiscal_PrintReports_PeriodicFiscal Periodic ReportReportTypeStringPeriodic
tip

For more detail on menu creation, refer to the How To Configure POS Behaviour (Menus).


Product Tax

The following tax configurations should be configured against the products and broadcast to the appropriate Poland devices. The tax group can be defined to either configure the tax group directly or have a tax group by tax region.

Product configuration showing tax group settings for Polish fiscal compliance

Configure the Tax Group against products. You can either set the tax group directly or configure a tax group by tax region.

Shared Printer Configurations

info

This configuration should only be added when sharing the printer between MPOS devices.

POS Terminal

Configure the following for the POS Terminal of thin clients and PDP Server. For a production environment this should be done using a POS Terminal Template to ensure consistency and simplify management.

FieldValue
Is Remote Terminaltrue
Receipt Printer ConnectionAt Server
Receipt Printer Sharedtrue
Customer Display At Servertrue
Receipt Printer ConfigserverClaimOnStartUp = true
Customer Line DisplayFPT88 FVA LineDisplay
Receipt Printer TypeFP-T88 FVA Polish Fiscal Printer
Receipt Printer AddressUPOSFPPL
Customer Display ConfiglineDisplayWaitSecs = 1

POS Terminal shared printer configuration showing remote terminal and printer connection settings

Configure the POS Terminal for shared printer mode. Set Is Remote Terminal to true and Receipt Printer Connection to At Server.

POS Terminal shared printer peripherals showing fiscal printer type and display configuration

Complete the shared printer peripheral settings including Receipt Printer Type, Receipt Printer Address and Customer Display Config.

Printer Commissioning

Production printers as delivered by UPOS will be in a non-fiscalised state. Before they can be used in production, they will need to be fiscalised. This operation is performed by a service person authorised to do so and involves use of the service tool as well as setting a hardware jumper on the printer to make the change. At the time of fiscalisation, certain parameters are burned to the printer memory and cannot be modified. All subsequent transactions will be fiscal, stored in the fiscal memory and included in the submissions to the tax authority.

Prior to fiscalisation it is possible to perform test transactions on the printer which will not be fiscalised or committed to the fiscal memory and will not contain the fiscal mark on the receipts printed.

note

The configuration and broadcast of printer settings from the Estate Manager will not automatically submit them to the printer. The printer will only permit these parameters to be changed when it is in a neutral state - that is, when it has completed a Z report and no new transactions have been started. An operator must trigger the submission to the printer from the POS after running a Z report.


The printer can include a footer after the main body of the receipt. This can be used to include promotional information or a message to your customers, for example warranty and returns information. This is configured in the Location or Location Template as described in the configuration section.

To submit the footer to the printer:

  1. Configure the footer text on the Estate Manager and broadcast the location to the POS.
  2. An operator must run a Z report.
  3. Click the Set Footer menu button on the appropriate POS menu (suggested Admin).

Set Header

The printer can include a header before the main body of the receipt. This should include details of the store such as the address as required by the fiscal legislation. This is configured in the Location or Location Template as described in the configuration section.

To submit the header to the printer:

  1. Configure the header text on the Estate Manager and broadcast the location to the POS.
  2. An operator must run a Z report.
  3. Click the Set Header menu button on the appropriate POS menu (suggested Admin).
warning

This operation is not possible with the later online models of printer. Instead, the service person will set the header at the time of fiscalisation, and it cannot be changed after this time.


Sync VAT

From time to time the VAT rates in Poland may change. When this happens, the rates can be updated in the Estate Manager and broadcast to the POS. It will then be necessary for an operator to run a Z report and click the Sync VAT menu button on the appropriate POS menu (suggested Admin).

warning

The printers have a limited number of VAT rate changes permitted before they are end of life. To limit the risk of accidental updates rendering an otherwise functional printer end of life, the sync process will first compare the current VAT rates on the printer to the new rates and only perform the update if there are differences.


Sync Time

It is necessary for the time on the printer to match the system time on the POS. If the printer and POS lose time synchronisation for some reason (for example, the printer has been powered off for a long time), the Sync Time button on the Admin menu can be used to resolve this issue. Again, this can only be performed after running a Z report.

info

The time will be set on the printer according to the system time on the POS. Ensure that the POS OS time is set correctly prior to performing this operation. This is especially important with the online models of printers where the time should also match the time at the tax authority during the online communication between the tax authority and the printer.


The printer can include an image logo at the start of the receipt. This would usually be used to include the company logo on the receipt. This is configured in the Location or Location Template as described in the configuration section.

To submit the logo to the printer:

  1. Configure the logo on the Estate Manager and broadcast the location and image entities to the POS.
  2. An operator must run a Z report.
  3. Click the Set Logo menu button on the appropriate POS menu (suggested Admin).

Operations

Fiscal X Report

  • The X Report gives a report of the transactions. This does not close the fiscal day.
  • The location of this button in the menu structure is configurable.
  • The function is privilege controlled.

Fiscal Z Report

  • The Z Report closes the fiscal day.
  • This should be generated at the end of a shift or day.