Skip to main content

How To Configure Fiscal Lithuania

Introduction

For shared background on Enactor fiscalisation, see Fiscal Overview.

In Lithuania, the fiscal approach requires the use of a CHD device to ensure compliance with the country's fiscal regulations. The CHD device is a hardware-based solution that securely processes, records, and stores each transaction in a tamper-proof format to prevent fraud and ensure transparency.

Receipts generated by the POS system must be printed and offered to customers. These receipts must include certain mandatory fields, such as a unique fiscal receipt number and a digital signature generated by the CHD device.

The purpose of this guide is to demonstrate the steps required to configure Enactor for Lithuania fiscalisation, including tax configuration, POS terminal template setup, tender mapping, privileges, menus, and translations.

info

This guide assumes that the standard POS has already been deployed and has established a connection with Estate Manager. For further details, refer to the Enactor Insights Portal.


App Update Deployment Overview

The following steps must be completed to deploy the fiscal module to Lithuania POS devices:

  1. Send the application updater update.zip file first.
  2. Wait until it succeeds.
  3. Then send the update POS min.zip file.
  4. Wait until it succeeds.
  5. Finally, send the Fiscal Module Update.
  6. Once it has succeeded, the POS is ready with the new POS Fiscal Module.

Configuration Overview

The following configuration changes are required and must be broadcast to all Lithuania 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.

warning

Although steps have been taken to ensure that the POS will not start or perform transactions without a valid configuration, it is the retailer's responsibility to ensure a valid configuration is present and not to try to circumvent any of the requirements of the Lithuania Fiscal Legislation through misconfiguration of the solution.


Tax Groups

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

Tax Group IDDescription
LT-01LT Standard VAT - 21%
LT-02LT Reduced Rate 9%
LT-03LT Reduced Rate 5%
LT-04LT Zero Rate 0%

Tax Scheme

The following tax scheme should be configured and broadcast to the appropriate Lithuania devices. Make sure to add all the tax rates related to Lithuania in the Applicable Tax Rates tab as well.

Tax Scheme IDDescriptionPrice Include Tax
LTLithuania Tax SchemeTRUE

Add all the applicable tax rates (LT-01, LT-02, LT-03, LT-04) in the Applicable Tax Rates tab.


Tax Rates

The following tax rates should be configured and broadcast to the appropriate Lithuania devices.

Tax Rate IDDescriptionDisplay CodePercentageFiscal Tax Rate Reference
LT-1LT Standard VAT - 21%A21%A
LT-2LT Reduced Rate 9%B9%C
LT-3LT Reduced Rate 5%C5%B
LT-4LT Zero Rate 0%D0%D

Tax Region

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

Tax Region configuration showing Lithuania with ID LT


Tax Group Tax Methods

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

Tax Group IDTax Scheme IDDescriptionTax Rate
LT Standard VAT 21%LithuaniaLT Standard VAT 21%21
LT Reduced Rate 9%LithuaniaLT Reduced Rate 9%9
LT Reduced Rate 5%LithuaniaLT Reduced Rate 5%5
LT Zero Rate 0%LithuaniaLT Zero Rate 0%0

Product Tax

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

Product tax configuration showing tax group assignment for Lithuania


POS Terminal Template

The POS Terminal Template used by all devices in Lithuania must be configured to have the Fiscalisation Type set to Lithuania. Currency should be set to Euro and Locale to Lithuania.

warning

If a POS terminal configuration with the Fiscalisation Type set to Lithuania is broadcast to a POS device that does not have the Lithuania fiscal module installed, the POS will fail to start. Similarly, if a POS device with the Lithuania fiscal module installed is configured with anything other than the Lithuania Fiscalisation Type, the POS will also fail to start. This is to ensure that only versions of the Enactor solution that have been certified for use in Lithuania are used in Lithuania.

POS Terminal Template showing Fiscalisation Type set to Lithuania

Receipt Printer Configuration

Select CHD Lithuanian Fiscal Printer from the Receipt Printer Type dropdown.

The CHD printer IP address and port should be configured against the POS Terminal Maintenance Receipt Printer Address and broadcast to POS and/or PDP server.

note

Receipt Printer Shared must not be ticked.

Select Printer-Attached Cashdrawer from the Cash Drawer Type dropdown.

POS Terminal Template receipt printer and cash drawer configuration

Privileges to Disable

Disable the following privileges if they are enabled:

Privilege IDApplication Package
enactor.pos.ContinueWithDrawerOpenEnactor POS
enactor.pos.SignOnWithDrawerOpenEnactor POS
enactor.pos.SkipDrawerStatusInitializationCheckingEnactor POS

Printer IP and Port

POS Terminal Template printer IP and port configuration

Set the printer IP and port as shown in the image above.

info

The port may be either 5345 in a test lab or 5344 in a production-like environment, but this should be checked with CHD.

POS Terminal Template additional printer settings

Customer Display Configuration

Select Custom as the Customer Display Type from the dropdown.

Set Customer Display Classname to: com.enactor.peripherals.fiscalPrinter.lithuania.CHDLithuaniaLineDisplay

Set Customer Display Address to <IP>:<port> and Customer Display At Server to true.

Receipt Printer Config (Barcode Settings)

Set the following Receipt Printer Config values:

  • barcode.type
  • barcode.textPosition
  • barcode.leftmargin

For barcode.leftmargin, the value can be set in the range of 0-255. The default is 0. The left margin can be adjusted until the barcode reaches the right end of the receipt. If the barcode exceeds the rightmost end of the receipt, the printer will not print the barcode.

For barcode.type=CODE93, the working left margin is only 0 in testing:

  • barcode.leftmargin=0

POS Terminal Template barcode configuration for CODE93

For barcode.type=ITF, the working left margin is up to 40 in testing:

  • barcode.leftmargin=40
note

The exact left margin value depends on the receipt width and the barcode type.

POS Terminal Template barcode configuration for ITF

Receipt Configuration

The Primary Receipt should be set to Fiscal 70 Standard Receipt and Page Printer Fiscal Invoice should be set to Lithuania Fiscal A4 Standard Receipt.

POS Terminal Template primary receipt configuration

The Customer Signature Slip should be set to Fiscal Customer Signature Slip 70 Col.

POS Terminal Template customer signature slip configuration

The Warranty Slip should be set to Fiscal Warranty Slip 70 Col.

POS Terminal Template warranty slip configuration

Printing Flags

The Print Tax Details on Receipt flag within the Printing > Flags tab should be ticked.

POS Terminal Template Print Tax Details on Receipt flag enabled

Tax Settings

Within the Tax section, the Tax Region should be set to Lithuania and the Tax Scheme to the Lithuania Tax Scheme configured in the previous section.

POS Terminal Template tax region and scheme set to Lithuania


Document Function Maintenance

Create a new Document Function called PrintReceipt.

Document Function Maintenance showing PrintReceipt configuration


Location Printers Maintenance

Create a new Location Printer for the Lithuania POS location.

  • Set Printer Category to A4 document printer
  • Set System Printer for the Printer Type
  • Add the printer name for the Printer Address

Location Printers Maintenance configuration for Lithuania POS

note

If file saving of the invoice is needed, add the enactor.pos.SavePagePrinterReceiptToFile privilege.

note

If a physical printer is not connected, add the enactor.pos.SkipPagePrinterReceiptPrint privilege to skip trying to print with the system printer.

Location Printers Maintenance privileges configuration


Document Printer Mapping Maintenance

  1. Create a new document printer mapping.
  2. Select Print Receipt as the function.
  3. Select the correct store location.
  4. Select the device that the printer is connected to.
  5. Press the Create button.

Printers created under Location Printer Maintenance should be listed under the Primary Printer dropdown. Select the relevant A4 printer as the Primary Printer and save.


Location

Set the Company Tax ID for the VAT Number in Location Maintenance's General tab.

Location Maintenance General tab showing VAT Number configuration


Tender

When creating tenders in Enactor Tender Maintenance, ensure that the Tender ID for the tender is entered in all capital letters (e.g. CASH) and matches the TENDERID config on the CHD xsPOS.

The mapping from Enactor to CHD is as follows:

Enactor FieldCHD Field
fiscalTenderIdTENDERTYPE
fiscalTenderTypeCUSTOMTYPE
tenderIdTENDERID

These values should be set according to the CHD documentation.

Tender Maintenance showing fiscal tender mapping configuration

info

When using non-integrated payments, the TENDERTYPE should be sent as Cash (i.e. 0), since sending Card (i.e. 1) would trigger the CHD payment solution.

CUSTOMTYPE is the tender value that will be sent to I.EKA. The possible values are provided by CHD in the following list:

CUSTOMTYPE ValueDescription
1Cash
2Debit or credit card
4Coupon
6PSD (medicine, health insurance fund)
note

If the values are not set, by default TENDERTYPE = "0" and CUSTOMTYPE = "1" will be sent to the printer.

Tender Maintenance showing CUSTOMTYPE and TENDERTYPE values

For cash tenders, set the Minimum Accepted Denomination to EUR 0.05, and in the Debit Rounding Rule dropdown, select Nearest under the Restrictions 1 tab.

Tender Maintenance Restrictions 1 tab showing rounding rule configuration


Privileges

The following privileges will need to be configured against the appropriate roles and broadcast to the Lithuania devices. Consideration should be given to whether it is desirable for all operators to have all of these privileges or if some should only be granted to managers.

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

Privilege IDApplication Package
enactor.pos.AllowReturnTaxRefundItemAlreadyRedeemedEnactor POS
enactor.pos.AuthorisesReturnItemEnactor POS
enactor.pos.ReturnItemAllowedEnactor POS
enactor.pos.GiftCardTenderAllowedEnactor POS
enactor.pos.VoidTransactionDiscountAllowedEnactor POS
enactor.admin.RunEnactor POS
enactor.pos.ReprintRecentReturnToTransactionEnactor POS
enactor.pos.VoucherRedeemAllowedEnactor POS
enactor.pos.ReturnFromReceiptAllowedEnactor POS
enactor.pos.AuthorisesVoidCardTenderItemEnactor POS
enactor.pos.AuthoriseDayEndBeforeEarliestEnactor POS
enactor.pos.AuthorisesVoidTenderItemEnactor POS
enactor.pos.CashRefundAllowedEnactor POS
enactor.dayStart.AuthorisesDayStartEnactor POS
enactor.pos.AllowEmployeeReturnIfUserInvolvedEnactor POS
enactor.pos.RequestSimpleFiscalInvoiceAllowedEnactor POS
enactor.pos.AuthorisesNoSaleEnactor POS
enactor.pos.NoSaleAllowedEnactor POS
enactor.pos.PrintFiscalReportsAllowedPOS Fiscalisation
enactor.pos.AuthorisesPrintFiscalReportsPOS Fiscalisation
enactor.pos.fiscal.AuthorisesPrintInvoiceFromArchivePOS Fiscalisation
enactor.pos.fiscal.PrintInvoiceFromArchiveAllowedPOS Fiscalisation
enactor.pos.fiscal.AuthorisesSetFooterPOS Fiscalisation
enactor.pos.fiscal.SetFooterAllowedPOS Fiscalisation
warning

The following privilege needs to be removed for Lithuanian cashiers: enactor.pos.AutoSignOffStoreTransaction. This privilege causes the POS to send the transaction to Estate Manager as a completed transaction when the POS is configured to automatically sign off. Disable this privilege to prevent this behaviour.


The following menu configuration should be applied and broadcast to the appropriate devices.

Sale Menu - Fiscal Reports

Navigate to Configuration > System > Menu.

  1. Edit the SALE menu for the Menu Group Standard POS.
  2. Add a folder under Sales > Management > Report called Fiscal Reports.
  3. Add new buttons to the Fiscal Reports folder for the following:
EventIDButton LabelNameJava TypeValue
Fiscal_PrintReports_XFiscal_PrintReports_XFiscal X ReportReportTypeStringX
Fiscal_PrintReports_ZFiscal_PrintReports_ZFiscal Z ReportReportTypeStringZ
Fiscal_PrintReports_Periodic_ByDateFiscal_PrintReports_Periodic_ByDateFiscal Periodic Report By DateReportTypeStringPERIODIC
Fiscal_PrintReports_Periodic_ByFiscalNumberFiscal_PrintReports_Periodic_ByFiscalNumberFiscal Periodic Report By Fiscal NumberReportTypeStringPERIODIC
  1. Edit the SALE menu for the Menu Group Standard POS.
  2. Add a folder under Admin called Footer.
  3. Add a new button to the Footer folder for the following:
EventIDButton LabelNameJava TypeValue
Fiscal_Set_FooterFiscal_Set_FooterSet FooterConfigTypeStringSET_FOOTER

For more detail on menu creation, refer to the How-to Guide Configure POS Behaviour (Menus) on the Enactor Insights Portal.


Groups

Create a new Price Group and Region for Lithuania.

Groups configuration showing Lithuania price group and region


Translations

There are a number of translations that need to be configured to get the customer display to show Lithuanian rather than defaulting to the standard English value.

The Till Welcome and Till Closed messages should be provided on either the Location Template or the Location Maintenance, depending on whether different messages are required in each store.

Translation configuration for till welcome and closed messages

Item Discounts should have a Lithuanian translation for the description.

Translation configuration for item discount descriptions

The promotion description should be in Lithuanian. There is no locale-specific translation for promotions as promotions are expected to be unique to a country.

Translation configuration for promotion descriptions

For the standard messages on the display, they come from Pos/Print/ReceiptMessages. The main ones are:

Receipt message translations for POS display - part 1

Receipt message translations for POS display - part 2

note

There is currently an issue where the customer display, product, tender, and discount translations are taken from the user locale rather than the location locale. For the time being, the user locale should be set to Lithuanian for Lithuania staff. This should not affect the majority of behaviour for the POS since Lithuanian translations have not been provided and will still default to English.