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.
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:
- Send the
application updater update.zipfile first. - Wait until it succeeds.
- Then send the
update POS min.zipfile. - Wait until it succeeds.
- Finally, send the Fiscal Module Update.
- 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.
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 ID | Description |
|---|---|
LT-01 | LT Standard VAT - 21% |
LT-02 | LT Reduced Rate 9% |
LT-03 | LT Reduced Rate 5% |
LT-04 | LT 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 ID | Description | Price Include Tax |
|---|---|---|
LT | Lithuania Tax Scheme | TRUE |
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 ID | Description | Display Code | Percentage | Fiscal Tax Rate Reference |
|---|---|---|---|---|
LT-1 | LT Standard VAT - 21% | A | 21% | A |
LT-2 | LT Reduced Rate 9% | B | 9% | C |
LT-3 | LT Reduced Rate 5% | C | 5% | B |
LT-4 | LT Zero Rate 0% | D | 0% | 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 Group Tax Methods
The following tax group tax methods should be configured and broadcast to the appropriate Lithuania devices.
| Tax Group ID | Tax Scheme ID | Description | Tax Rate |
|---|---|---|---|
| LT Standard VAT 21% | Lithuania | LT Standard VAT 21% | 21 |
| LT Reduced Rate 9% | Lithuania | LT Reduced Rate 9% | 9 |
| LT Reduced Rate 5% | Lithuania | LT Reduced Rate 5% | 5 |
| LT Zero Rate 0% | Lithuania | LT 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.

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.
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.

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.
Receipt Printer Shared must not be ticked.
Select Printer-Attached Cashdrawer from the Cash Drawer Type dropdown.

Privileges to Disable
Disable the following privileges if they are enabled:
| Privilege ID | Application Package |
|---|---|
enactor.pos.ContinueWithDrawerOpen | Enactor POS |
enactor.pos.SignOnWithDrawerOpen | Enactor POS |
enactor.pos.SkipDrawerStatusInitializationChecking | Enactor POS |
Printer IP and Port

Set the printer IP and port as shown in the image above.
The port may be either 5345 in a test lab or 5344 in a production-like environment, but this should be checked with CHD.

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.typebarcode.textPositionbarcode.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

For barcode.type=ITF, the working left margin is up to 40 in testing:
barcode.leftmargin=40
The exact left margin value depends on the receipt width and the barcode type.

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.

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

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

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

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.

Document Function Maintenance
Create a new Document Function called PrintReceipt.

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

If file saving of the invoice is needed, add the enactor.pos.SavePagePrinterReceiptToFile privilege.
If a physical printer is not connected, add the enactor.pos.SkipPagePrinterReceiptPrint privilege to skip trying to print with the system printer.

Document Printer Mapping Maintenance
- Create a new document printer mapping.
- Select Print Receipt as the function.
- Select the correct store location.
- Select the device that the printer is connected to.
- 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.

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 Field | CHD Field |
|---|---|
fiscalTenderId | TENDERTYPE |
fiscalTenderType | CUSTOMTYPE |
tenderId | TENDERID |
These values should be set according to the CHD documentation.

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 Value | Description |
|---|---|
1 | Cash |
2 | Debit or credit card |
4 | Coupon |
6 | PSD (medicine, health insurance fund) |
If the values are not set, by default TENDERTYPE = "0" and CUSTOMTYPE = "1" will be sent to the printer.

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.

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 ID | Application Package |
|---|---|
enactor.pos.AllowReturnTaxRefundItemAlreadyRedeemed | Enactor POS |
enactor.pos.AuthorisesReturnItem | Enactor POS |
enactor.pos.ReturnItemAllowed | Enactor POS |
enactor.pos.GiftCardTenderAllowed | Enactor POS |
enactor.pos.VoidTransactionDiscountAllowed | Enactor POS |
enactor.admin.Run | Enactor POS |
enactor.pos.ReprintRecentReturnToTransaction | Enactor POS |
enactor.pos.VoucherRedeemAllowed | Enactor POS |
enactor.pos.ReturnFromReceiptAllowed | Enactor POS |
enactor.pos.AuthorisesVoidCardTenderItem | Enactor POS |
enactor.pos.AuthoriseDayEndBeforeEarliest | Enactor POS |
enactor.pos.AuthorisesVoidTenderItem | Enactor POS |
enactor.pos.CashRefundAllowed | Enactor POS |
enactor.dayStart.AuthorisesDayStart | Enactor POS |
enactor.pos.AllowEmployeeReturnIfUserInvolved | Enactor POS |
enactor.pos.RequestSimpleFiscalInvoiceAllowed | Enactor POS |
enactor.pos.AuthorisesNoSale | Enactor POS |
enactor.pos.NoSaleAllowed | Enactor POS |
enactor.pos.PrintFiscalReportsAllowed | POS Fiscalisation |
enactor.pos.AuthorisesPrintFiscalReports | POS Fiscalisation |
enactor.pos.fiscal.AuthorisesPrintInvoiceFromArchive | POS Fiscalisation |
enactor.pos.fiscal.PrintInvoiceFromArchiveAllowed | POS Fiscalisation |
enactor.pos.fiscal.AuthorisesSetFooter | POS Fiscalisation |
enactor.pos.fiscal.SetFooterAllowed | POS Fiscalisation |
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.
Menu
The following menu configuration should be applied and broadcast to the appropriate devices.
Sale Menu - Fiscal Reports
Navigate to Configuration > System > Menu.
- Edit the SALE menu for the Menu Group Standard POS.
- Add a folder under Sales > Management > Report called Fiscal Reports.
- Add new buttons to the Fiscal Reports folder for the following:
| Event | ID | Button Label | Name | Java Type | Value |
|---|---|---|---|---|---|
Fiscal_PrintReports_X | Fiscal_PrintReports_X | Fiscal X Report | ReportType | String | X |
Fiscal_PrintReports_Z | Fiscal_PrintReports_Z | Fiscal Z Report | ReportType | String | Z |
Fiscal_PrintReports_Periodic_ByDate | Fiscal_PrintReports_Periodic_ByDate | Fiscal Periodic Report By Date | ReportType | String | PERIODIC |
Fiscal_PrintReports_Periodic_ByFiscalNumber | Fiscal_PrintReports_Periodic_ByFiscalNumber | Fiscal Periodic Report By Fiscal Number | ReportType | String | PERIODIC |
Sale Menu - Footer
- Edit the SALE menu for the Menu Group Standard POS.
- Add a folder under Admin called Footer.
- Add a new button to the Footer folder for the following:
| Event | ID | Button Label | Name | Java Type | Value |
|---|---|---|---|---|---|
Fiscal_Set_Footer | Fiscal_Set_Footer | Set Footer | ConfigType | String | SET_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.

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.

Item Discounts should have a Lithuanian translation for the description.

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.

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

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.