Zum Hauptinhalt springen

Procedural documentation

Vor über 9 Monaten aktualisiert

Functionalities of the POS system

This document provides information concerning the audit of the cash register data for the tax office. The information applies to the regular operation of the cash register. In some rare cases, it is possible that errors caused by components from other manufacturers or in our own software may lead to exceptional situations that may deviate from the answers given in this documentation.

Architecture of Flexybox

Flexybox works offline without needing an active internet connection. A single on-premise server/desktop is installed locally inside the business location that stores and processes all data (alternatively a cloud server can be used which serves the same purpose).

Mobile clients act an extension of the User interface that must work alongside the server/desktop. In other words, the server act as the sole master and the mobile clients acts as the slaves, which forms the master-slave architecture.

A single Fiskaly TSE module is connected to and managed by the server/desktop.

If the internet connection is lost the TSE will not function.

Model 1. Visualizing the architecture of Flexybox.

Transaction types

Flexybox consists of 4 types of transactions that will be signed

  • Sales / Invoices

  • Customer payments

  • Payments

  • End of day

Sales / Invoices

A Sale / invoice is created each time something is paid and a sales receipt is generated.

These happens when a customer makes a purchase from the store.

Charged to customers account

A sale might be charged to a customers account and hence paid at a later time.

This will show up as a Forderungsentstehung in the lines.csv file

Giftcertificates

If a GiftCertificate/Voucher is purchased or redeemed the transaction is recognized as such based on the products used for the sale or redemption.

These are selected when configuring the GiftCertificateType.

Example gift certificate output

Gift certificates that are used will show up in the lines.csv file


when certificates are sold they will also show up in the lines.csv file

Discounts

Discounts can be applied on a product or receipt level.

When discounts are applied on the product level the discounts are recognized as such and can be found in the DSFinV-K export as a discount.
If Discounts are receipt level an additional line will be added to the sale with a negative amount, still marked as a discount.

Example discount output

Discounts applied in the system will be visible in the itemamounts.csv, the base amount will be shown with the applied discount amount on a seperate line.

Voiding / cancelling sales

Sales are immutable and cannot be changed in any way once completed.

When a TSE is active only voids that are available are full voids of full receipts.

When voiding a sale a link will be established to the voided sale.

Customer payments

A customer payment is created if a customer pays an outstanding bill or a deposit payment is made for a future service.

This can be done either from the invocing system or from the customers account.

Transactions might also be made via a direct integration or manually.

In all situations the transaction will be signed.

Payments

Payments will be used for anything that is not a customer purchasing something from the business.

This could be Withdrawals, Money deposits, Salary payouts, Purchases.

The mapping of these payments are done as explained here.

End of day

End of day happens when the staff chooses to close the day.

When this happens they will count the cash and ensure data is correct, once the day is closed it cannot be altered in anyway.

At this time the Cashdifference and End of day cash balance is signed and sent to the TSE.

Numbering

Each of the above types have a Database generated id which ensure a continous numbering within their type, however to ensure all transactions have a continous number across all types; a transaction / signing table is used.

This tables database generated id is used as the actualy receipt id for all signed transactions and is also the one send to Fiskaly as the both the Transaction Export id and also the BON_NR.

Data rentention

All data saved to the system is saved permanently, thus all invoices, receipts, vouchers etc can be retrieved from the system at any time.
Only exception is GDPR compliance where data is anonymized and thus customer data will be removed using the configured anonymization rules.

Z-Reports

All Z-Reports can be viewed using the reporting engine within Flexybox and can be exported using the Fiskaly backend in DSFinV-K format for any given period.

Setup of the cash register

The initial loadout of FlexyBox

During the initial installation of Flexybox, initial settings are provided to assist the user in getting started.

These are as follows:

  • Two pre-installed user groups:

    • Administrator

    • Manager

    • User

  • Payment methods:

    • Cash

    • Card (integrated)

    • Bank transfer

Cash register setup and programming protocols

The operator can fully set up the Flexybox cash register themselves. Alternatively, they can commission Flexybox with the initial setup. In doing so, Flexybox sets up the products, payment methods, pos interface incl. order processes according to the operator's specifications.

The operator is responsible for checking the accuracy and completeness of the changes made by Flexybox and correcting them if necessary.

The operator is responsible for the accuracy and completeness of the settings made in the cash register. Each change in the settings is recorded and logged in the log.

Thus, the log serves as a programming protocol and is therefore part of the operational documentation.

User and admin manuals

All user and admin manuals are available live at https://help.flexybox.com.

This allows the user guidance on how they can configure the system on their own.

Providing an online TSE

Flexybox can be equipped with an online TSE (Technical Security Device) via a cloud-based solution. Clients of Flexybox can request the activation of the online TSE at a cost through the sales department in Flexybox associated with the cash register app. To ensure compliance with KassenSichV regulations, the Flexybox client must be updated to at least version 24.1.


Contact details of the provider of the online TSE:
The online TSE is developed and provided by our partner fiskaly and is integrated into Flexybox via an interface.

fiskaly Germany GmbH Zeilweg 4 60439 Frankfurt am Main HR Nr: HRB 117187 Owner: fiskaly GmbH.

Certification ID of the online TSE
The TSE provided by fiskaly has the certification number BSI-DSZ-CC-1130-V3-2021. Further information about the current status of the certification process can be obtained on the BSI website under "Products undergoing certification". The certification ID of the TSE will be provided as soon as it is available to us.

Compliance with KassenSichV

Flexybox integrates with fiskaly and uses the fiskaly product for both TSE and DSFinV-K exports.

The user needs to connect the fiskaly system to Flexybox - this is done during the onboarding of the system to ensure compliance.

Once activated all transactions are signed using the TSE and will be available for exported through the fiskaly UI.

Export of TSE and DSFinV-K

To export the data from the TSE or in DSFinV-K format, the user must log in to the fiskaly dashboard and select the requested time period.

Once the export is done it can be downloaded in ZIP format.

Reporting obligation for cash registers

The reporting obligation for cash registers has been postponed by the legislator until further notice. Currently, there is no possibility to report the operation of the Flexybox electronically (As of 14-04-2024).

Once ready we will use the Fiskaly reporting functionality to ensure electronic reporting.

Signing of receipts

Flexybox uses the QR code for all pos reciepts to ensure the required information is always available, the QR code is generated by the Fiskaly TSE and simply printed on the reciept as soon as the receipt has been signed.

Failure of TSE module

A temporary failure of the TSE, for example due to a network connection problem or a technical error in the execution of the TSE itself, will be reported on the invoice printout as follows:

!!! TSE FEHLER !!!

Any failure in the TSE will be reported directly to the Flexybox team which will start troubleshooting to ensure a continously active TSE.

Operation of Flexybox with an activated Fiskaly TSE

Once the TSE is active all pos transactions are stored securely in the fiskaly TSE as well as the POS database.

All transactions signed by the TSE and it is signature ensures data protection and data integrity.

Changes to Store Data

The store master data is linked to the user’s license and is managed by Flexybox.

The store master data cannot be changed by the user themselves.

The master data includes:

  • Name and address of the establishment

  • Name, telephone number and e-mail address of the contact person provided by the user

  • Tax number

If a user need to update their master data, then it has to be updated by the Flexybox support team.

Implementation of the invoice receipt obligation

It is possible for Flexybox users to finish the payment process and settle an order without printing an invoice (by choosing to disable automatic receipts).

Users are advised that they must be able to show an exemption from the invoice requirement for this. It is the sole responsibility of the user whether they disable invoice printing or not.

Malfunctions in the operation of TSE and DSFinV-K export

This section lists the bugs found in the implementation of TSE integration and DSFinV-K export.

As soon as the bugs were identified, they were fixed and a new version was released with the fix.

The following table can be used to track the malfunctions and when the issue was resolved on what version.

Issue

Fixed in

The automatic export of data to Fiskaly DSFinV-K was not functional.
Solution: All old reports are uploaded as soon as the POS is updated.

24.1.112

TSE: Sales were signed with the TaxAmount instead of the full amount for each tax level
Solution: All sales are now signed correctly with the full amount.

24.1.112

TSE: Cash difference and customer payment (invoice payments) were not signed

Solution: The new version retroactively signs all payments and cashdifferences

24.1.112

TSE: All long running transactions were send at the time of the customer paying their bill.

Solution: The system now continously, as soon as a product is entered into the POS signs the transactions (Bestellung-V1)

24.1.112

Fixed edge cases and added BusinessDate to all DSFinV-K data and reuploaded to ensure all data is available for export when requested.

24.1.272

Change ReceiptId to be a consecutive number used only for signed transaction and not "orders".

24.2.213

Fix issue where days were signed before being closed resulting in the inability of counting the end of day cash.

Ensure the new ReceiptId is also used in the legacy receipt overview to align with the new Receipt overview and the DSFinVK export

24.2.248

Hat dies deine Frage beantwortet?