Skip to main content

How to Guide - Fiscal German

Fiscal Overview

Fiscalisation is a legal requirement imposed by the Tax Authorities (TA) of an increasing number of countries, but particularly prevalent in the European Union. The common reason, between countries, for fiscal legislation is to record sales in such a way that an inalterable record of each transaction and the VAT due is available to the TA.

Enactor have fiscal solutions available for the majority of European Fiscal countries and continue to work on additional country solutions both inside and outside Europe. Enactor found that a common complaint from retailers was, POS providers and Fiscal Software Solutions providers blaming each other when things went wrong. Enactor’s approach to fiscal is to avoid reliance on third parties wherever possible. This allows Enactor to provide solutions that do not have hidden third party software costs and also give customers a single point of contact.

Whilst Enactor have avoided relying on software partners to provide pre-packed solutions, we recognise the importance of in country experts. We have therefore built a network of partners that both help us initially understand legislation and technical requirements for each country but are also kept on retainer to inform us of any legislation changes and guide us through their implementation. This allows us to keep our solutions up to date and compliant in what is often a fast-changing area in terms of legislation.

While the reasons for Fiscal legislation are common between countries, unfortunately the approach taken differs from one to the next, although there are a number of common patterns outlined below:

Device Based

When each transaction is finalised, it is also sent to physical device which records the transaction in an inalterable way. In some countries, the device also functions as a printer; in others it is USB or network connected device.

Devices contain a fiscal module which will both sign and record each transaction in a write once read many, fiscal memory. The signature produced by the device is usually printed on the receipt so that the customer, or a TA inspector, can see the transaction has been recorded properly. Devices will also have some mechanism to provide the data held to the TA, commonly one of:

  • Extract in a defined format, tiggered by the POS

  • Internal GPRS connections

  • Device requires an ethernet internet connection

  • Memory Card that can be given to the TA on request

These Fiscal Devices are certified by the TA and this usually, although not always, means that the POS solution does not need certification.

Service Based

Transactions are sent to an online service provided by the TA which will record the transaction detail and provide a signature back as part of the response. This signature is usually required to be printed on the receipt, in some countries in the form of a QR code. Some TA’s offer a lottery where retail customers can scan the QR code to be entered in a regular lottery, thus encouraging reporting of retailers who are not compliant.

Each country has its own provisions for how to deal with a loss of connection to the service, but it is usual to permit offline sales which, must either be manually recorded or electronically submitted to the TA within a defined timeframe.

Signature Based

In this type of scheme, it becomes the responsibility of the POS to record the transactions in an inalterable way and provide a record of the transactions to the TA. The usual approach is to sign and record each transaction, including the signature of the previous transaction as part of the singed data. This has the effect of producing a chain of singed transactions where a transaction modified at a later date would be detectable, as either the altered transaction or all subsequent transactions would have incorrect signatures.

The second requirement of this type of solution is for the POS solution to be able to provide the transaction data, including signatures, to the TA. This data is usually provided in an XML file often in the common SAF-T format.

Again, it’s common for the signature, or part of it, to be printed on the customer receipt.

Clearly this type of solution requires the TA to have a certain level of trust in the POS provider that they will, properly protect the private key used to sign the transactions and that they will not provide the retailer with a mechanism to alter transactions. It is therefore common for these types of solution to require either a declaration of conformity or formal certification process.

Other Requirements

As well as the above each country has a number of other fiscal requirements that must be adhered to, some of which are common between countries, for example:

  • Sales and Returns are not permitted in the same transaction

  • Transaction value must be positive

  • Ability to produce X and Z reports in a proscribed manner

  • Items may not be discounted to zero or negative values

  • Particular handling of deposit and balance transactions

  • Requirement to produce invoices for transactions that meet particular criteria, over a set value, B2B

  • Particular handling of tax for bottle returns

German Introduction

The fiscal approach in Germany is based around the use of TSE devices. These devices can either be USB, printer or service based but in essence all perform the same function which is to sign and store each transaction in an inalterable state. Receipts for transaction must be offered to customers but the format of the receipt is not mandated, although there are some mandatory fields that must be included, one of which is the signature produced by the TSE.

In event of a TSE being broken or offline it is possible for the POS to continue trading. Receipts must show that the POS is offline, and the transactions must be fiscalised once the TSE is back online. However, given that our customers tend to run multiple POS in a store Enactor recommend that an alternate POS is used where possible until the TSE can be brought back online, to avoid this complication.

Certification of the POS software is not required; only the TSE device itself requires certification.

Notes

Currently the Enactor solution supports Epson USB TSE devices. However, the interface for the TSE is specified by the authorities and therefore common so Enactor do not foresee huge complexity in adding new devices or types of devices.

Configuration Overview

The following configuration changes are required and should be broadcast to all German devices in preparation for go live.

POS Terminal Template

The POS Terminal Template used by all devices in Germanymust be configured to have the fiscalisation Type set to Germany. Currency should be set to Euros and Locale to German.

The primary Receipt should be set to Fiscal Standard Receipt XX Col and no sale receipt should be set to Fiscal No Sale 4XX Col where XX is the correct printer column width.

The ‘Print Tax Details on Receipt’ flag withing the printing > flags tab should be ticked.

Within the Tax section the Tax region should be set to Germany and the tax scheme to to the German tax scheme configured in the following section.

Location

Each location in Germany should have its Fiscal Location Reference configured within the EM and broadcast to the appropriate German devices.

Tax Groups

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

Tax Group IDDescription
DE1DE Tax Group A
DE2DE Tax Group B
DE3DE Tax Group C

Tax Scheme

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

Tax Scheme IDDescriptionPrice Include Tax
DEDE VATTRUE

Tax Rates

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

Tax Rate IDDescriptionDisplay CodePercentageFiscal Tax Rate Reference
DE_R1DE Standard 19%DE Standard 19%19%1
DE_R2DE Reduced 7%DE Reduced 7%7%2
DE_R3DE OtherDE Other0%3

Tax Group Tax Methods

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

Tax Group IDTax Scheme IDDescriptionTax Rate
DE_1DEDE Standard 19%DE Standard 19%
DE_2DEDE Reduced 7%DE Reduced 7%
DE_3DEDE OtherDE Other

Account Credentials

The following Account Credentials should be configured on the estate manager and broadcast to the appropriate German devices.

General Tab

Account Credential IDNameTypeUse System KeyIs Live
FISCAL_GERMANYFiscal Key StoreFiscal Key StoreTRUETRUE

Other Properties

Property NameTypeValue
SIG ALGORITHMStringSHA256
ADMIN_PINStringA 5 digit PIN of your choosing
HOST_IPString127.0.0.1
PORTString8009
PUKStringA 6 character alphanumeric password of your choosing
SECRET_KEYStringEPSONKEY
USER_PINStringA 5 digit PIN of your choosing

The ADMIN_PIN, USER_PIN and PUK are used to authenticate with the TSE. When the TSE is first initialised, it will be set up with the values configured in the account credentials. When the POS communicates with the TSE in the future it will need to login with the user (ADMIN or USER) and PIN appropriate for the function it is performing. The PUK (PIN Unblock Key) can be used to reset the PIN’s if they are forgotten, using tools provided by Epson.

If the PIN and PUK are forgotten the TSE will be unrecoverable. It is therefore important that these values are not changed once the TSE is initialised (described in a later step) to do so would result in the TSE becoming blocked as a result of too many failed PIN attempts. Unblocking a TSE is a non-trivial exercise that would require loging on to the TSE and using tools provided by Epson.

Process Connection

Within the POS Process Connection Diagram Locate the GermanyFiscalService Connected Process as shown below:

Update the class name and the account credentials id in the SecurityModuleService as shown below:

  • Class Name: com.enactor.peripherals.tse.driver.epson.impl.EpsonSecurityModule

  • Account credentials id: FISCAL_GERMANY

This change will need to be broadcast or copied to the relevant German POS devices.

Privileges

The following privileges will need to be configured and broadcast to the appropriate German devices. It’s recommended that a store manager be the only role with these privileges since for the most part they permit the configuration and set up of a new TSE. Perhaps the exception to this may be LoginAsTimeAdminAllowed and AuthorisesLoginAsTimeAdmin which may be required in the general operation of the POS as the TSE may require the time to be set if it were ever unplugged.

Privilege IDPackage
enactor.pos.InitialiseDeviceAllowedPosFiscalisation
enactor.pos.AuthorisesInitialiseDevicePosFiscalisation
enactor.pos.LoginAsAdminAllowedPosFiscalisation
enactor.pos.AuthorisesLoginAsAdminPosFiscalisation
enactor.pos.LoginAsTimeAdminAllowedPosFiscalisation
enactor.pos.AuthorisesLoginAsTimeAdminPosFiscalisation
enactor.pos.RegisterPosAllowedPosFiscalisation
enactor.pos.AuthorisesRegisterPosPosFiscalisation

At an appropriate point within your German POS menu structure, suggested on the Admin menu, a fiscalisation menu with the following 5 items will need to be configured and broadcast the German POS devices. This menu will be used to facilitate initialising the TSE and setting the time on the device.

EventIDButton Label
Fiscal_TSE_InitialiseFiscal_TSE_InitialiseInitialise TSE
Fiscal_TSE_Login_AdminFiscal_TSE_Login_AdminLogin as Admin
Fiscal_TSE_Login_TimeAdminFiscal_TSE_Login_TimeAdminLogin as Time Admin
Fiscal_TSE_Register_POSFiscal_TSE_Register_POSRegister Pos
Fiscal_TSE_UpdateTimeFiscal_TSE_UpdateTimeUpdate Time

Initial TSE Setup

  1. On the POS navigate to the fiscalisation menu created in the previous step.

  2. Click the Initialise TSE button on the fiscalisation menu.

    • The POS will prompt ‘Operation Completed Successfully’ click OK.
  3. Click the Login as Admin button on the fiscalisation menu.

    • The POS will prompt ‘Operation Completed Successfully’ click OK.
  4. Click the Register POS button on the fiscalisation menu.

    • The POS will prompt ‘Operation Completed Successfully’ click OK.
  5. Click the Login as Time Admin button on the fiscalisation menu.

    • The POS will prompt ‘Operation Completed Successfully’ click OK.
  6. Click the Update Time button on the fiscalisation menu.

    • The POS will prompt ‘Operation Completed Successfully’ click OK.

On occasion it is possible that the POS will prompt for the time to be updated on the TSE, if this should happen repeat steps 8 through 11.

At this point it should be possible to complete fiscal transactions on the POS. Also, when observing the details in the Epson TSE Monitor tool it should show the device as Initialised, as shown below.

Receipt

The format of the receipt is not prescribed by the German authorities although receipts should be provided to customers and there are some requirements that must be met.

The following are required to be shown on the receipt:

  • Company name and address

  • Date the receipt was issued

  • Transaction start and end time

  • Item names

  • Quantities

  • Total price

  • Item prices

  • Tax totals per VAT rate

  • TSE Transaction number

  • Amount per payment method

  • Signature counter

  • Signature value

  • Serial number of the TSE

Optionally a QR code with the above details can also be included and Enactor support this where it is also supported by the printer.

Within the POS Terminal Template there is a receipt available named ‘Fiscal XX Standard Receipt’ which meets all of the above requirements. Although a retailer can choose to customise the receipt to meet their needs, this should form a good starting point that contains all of the mandatory information. An example of this receipt is shown below.