As of January 1st, 2020, Germany introduced a new tax regulation (Kassengesetz) that requires all electronic cash registers to comply with specific guidelines. This regulation requires that Point of Sale (POS) systems be connected to a Technical Security Element (TSE), which ensures the validity of transactions and prevents the manipulation or tampering of financial reporting.
To meet these fiscal compliance requirements in Germany, Lightspeed Restaurant should be connected to Fiskaly, a cloud-based TSE solution. Fiskaly's role is to record and sign transactions, ensuring that financial activities are legitimate and unaltered. All orders, transactions, and voids are recorded and sent to Fiskaly to be authenticated and signed.
What does German fiscal compliance look like?
Whenever a payment is initiated or completed on your POS, the Lightspeed Restaurant app sends the relevant transactional data (such as the quantity and name of items, VAT category, discounts, etc.) to Fiskaly. Fiskaly records this data and sends back a signature that appears on the customer's receipt and validates the transaction.
This process also applies to voids, meaning that any operation involving "money in" or "money out" is recorded and signed by Fiskaly.
Setting up Fiskaly
When setting up your Lightspeed business in Germany, clicking Go Live will connect your account to Fiskaly, and then every order, transaction, and void made on POS will be sent to Fiskaly to be signed.
German customers can enter their Fiscal details in Configuration > Settings > Business settings. At least one of the tax fields, Tax number or VAT number, must be filled out with the appropriate information. Entries won’t be saved if the format is incorrect. The tax field that is filled out will appear on the DSFinV-K export.
Reading and understanding the TSE signature
The image and subsequent table below explain each section of the TSE signature that is printed on signed receipts.
Section | Description |
TSE-Status | This value is only displayed when the POS uses an outdated, non-certified version of Fiskaly integration (V1). For the updated V2 integration, this information is not shown.
Note: No business should be using Fiskaly V1. Please Contact our support team if you notice the TSE-Status line on your receipt. |
TSE-Transaktion TSE-Signatur-Nr TSE-Signatur TSE-PublicKey |
These are operational values obtained from Fiskaly. |
TSE-ErsteBestellung |
This timestamp indicates the beginning of the first order. |
TSE-Start | This timestamp marks the start of the payment process. |
TSE-Stop | This timestamp marks the completion of the payment process. |
Kasse-Seriennummer | The device ID of the POS. |
How German fiscal compliance affects Lightspeed Back Office
Only transactions processed on the POS can be recorded and signed by Fiskaly. Therefore, all transactions in Germany must be completed via the Restaurant POS app. Given this requirement, Lightspeed has disabled several features for German accounts that allow users to change, void, or create new transactions through the Back Office.
Below is a list of features that have been disabled in Germany and, where applicable, some alternative workflows for achieving the same effect through the POS. Note: Closed transactions from a previous business day cannot be changed.
Guidance for high-value transaction errors: It is important to keep a record of any processing errors (like, for example, using the wrong payment method) that might occur while performing high-value transactions. Please be aware that our Support team cannot fix or reverse these transactions. Documentation of the error should be as detailed as possible, stating the cause of the error and how it was corrected. We recommend contacting your tax advisors for help and sharing any information regarding the error with them for accurate record-keeping. In the event of an audit, these reports and corresponding receipts can be used as evidence that these were unintentional errors.
-
Alternative workflow: None. New transactions should only be completed on the Restaurant POS app. See our article About ordering to learn how to process sales from the POS.
-
Alternative workflow: To change the payment type on a completed sale, change it through the Restaurant POS app. Note: This can only be done for transactions made during the same day/sales period.
- From the navigation bar on the Restaurant POS app, tap Receipts.
- Tap the receipt for which you want to change the payment.
- Tap the Receipt actions button.
- Select Change payment.
- Tap Edit or choose another payment method from the list.
- Select Back, then tap OK to apply changes.
-
Alternative workflow: Void the receipt through the Restaurant POS app. Note: This can only be done for transactions made during the same day/sales period.
- From the navigation bar on the Restaurant POS app, tap Receipts.
- Tap the receipt you want to void.
- Tap the Receipt actions button.
- Select Void receipt.
- Tap Yes to confirm your decision.
- Select a reason for the void.
-
Alternative workflow: Settle customer debts through the Restaurant POS app.
- From the navigation bar on the Restaurant POS app, tap Customers.
- Look up the relevant customer profile and tap View.
- Tap the Balance.
- Select the Open invoice they want to pay, and tap Settle.
- Select a payment method, and then tap OK.
Exporting the DSFinV-K report
The Digitale Schnittstelle der Finanzverwaltung für Kassensysteme (DSFinV-K) is a recording standard for cash register systems. It standardizes the format and structure of the electronic records of transactions, ensuring that the documents are tax-compliant and compatible with German auditing systems. Taxpayers in Germany are obligated to export POS data in DSFinV-K format from the POS system and make it available for verification only when undergoing a tax audit by the tax authorities. The DSFinV-K Export is available for German customers in Back Office, Reports > Reports.
Issuing business receipts
In Germany, restaurants need to provide business receipts for tax purposes. Business receipts include extra details not found on regular bills, like the reason for the visit and the names of guests. To issue a business receipt, follow these steps:
- From the navigation bar on the Restaurant POS app, tap Receipts.
- Tap the receipt for which you need a business receipt.
- Tap the Receipt actions button.
- Select Create invoice.
- (Optional) A pop-up may appear to add a customer or fiscal identifier to the invoice. This step is not required and can be skipped.
Receipts can only be created and issued on the same day from the POS app. If you want to issue a receipt for a previous day, do so from Back Office > Reports > Reports > Receipt Report, and then find the receipt. If there's a customer attached to the receipt, you can email it to them. Otherwise, you can click Print receipt to download a PDF copy.
The invoice has extra fields for the customer to fill out. These fields are only visible to businesses in Germany. In other locations, the create invoice feature remains the same.
Troubleshooting
Listed below are some scenarios that can cause disruptions in Fiskaly's services and how you can fix them.
- If you experience printing delays of about 10 seconds per print, it might be due to Fiskaly being partially down or recovering from an outage. In this case, your POS system will continue attempting to send data to Fiskaly but receive no response.
What to do: Disconnect the Internet(not just Wi-Fi) by turning off your router to force your POS system to go offline. Transactions will be signed as "offline" during this period. Wait for 15-20 minutes before turning your Internet connection back on. Check if receipts start printing again.
- In rare cases, Fiskaly might be fully unavailable. If this happens, your transactions will still be processed offline without any delays. Unfortunately, we'll have to wait for Fiskaly to get back up and running.
What to do: There is no immediate fix. You will need to wait for Fiskaly to recover.
- An unstable Internet connection can cause printing delays, averaging 10 seconds per print job. Your POS system will continue attempting to send data to Fiskaly, and some requests may go through while others fail.
What to do: Disconnect the Internet(not just Wi-Fi) by turning off your router to force your POS system to go offline. Transactions will be signed as "offline" during this period. Wait for 15-20 minutes before turning your Internet connection back on. Check if receipts start printing again.
- During busy periods, there may be delays in printing when numerous sales are happening simultaneously. For example, if each signature takes a few seconds, and several transactions are done one after another, you could experience a delay and need to wait between print jobs.
What to do: If possible, take a short break and let all pending receipts finish printing. Once the queue is cleared, you can resume regular operations.