Skip to main content

fiskaltrust.Middleware for Linux and macOs

Starting with version 1.3.3, it's possible to run the German Middleware on Linux, using Mono. Just configure a Cashbox and download the Linux launcher via the respective button in the Cashbox overview. Like on Windows, the downloaded zip file contains scripts to install and test the Middleware.

Requirements

In general, it's possible to run the Middleware on each Linux distribution that is supported by Mono (Ubuntu, Debian, Raspbian, CentOS and Fedora, including their derivatives). Most testing at fiskaltrust is performed with Ubuntu and Debian, and we hence recommend to use these distributions.

Please make sure to install the latest Mono version. The default versions in the package repositories are usually extremely outdated, so please follow the official Mono guidelines to get the latest packages. We recommend to use at least version 6.8.0, if possible.

Other than that, no specific software needs to be installed (aside from the dependencies Mono has).

Supported packages

Local storage support

UbuntuDebianOther distributions running Mono
local mySQL Storagetestedtestedshould work (not tested)
local SQLite-Storagetestedtestedshould work (not tested)
local EF-Storagenot testednot tested

Both Entity Framework and SQLite queues can be launched on Linux, starting from version 1.3.3.

TSE support

UbuntuDebianOther distributions running Mono
A-Trust Cloud TSEnot testednot tested
Cryptovision Hardware-TSEtestedtestedshould work (not tested)
Deutsche Fiskal Cloud-TSEUbuntu LTS 20.04 certified, not testednot tested
Diebold-Nixdorf Hardware-TSEnot testednot tested
Epson Hardware-TSEnot testednot tested
fiskaly Cloud-TSEtestedtestedshould work (not tested)
Swissbit Hardware TSEtestedtestedshould work (not tested)
Swissbit Cloud TSEUbuntu LTS 20.04 certified, not testednot tested

Limitations

Currently, the Middleware only supports gRPC and REST when executed on Linux. This means that SOAP is right now not supported (due to open bugs in Mono's WCF implementation).

If you haven't already decided for a communication technology, we strongly recommend gRPC, especially in Linux scenarios, as it provides a cleaner, more stable interface. Please refer to our demo project (currently available in C#, Java, Node.js and others) for sample implementations.

REST limitations

When using REST, the HTTP endpoint slightly differs from the Windows version, as the version prefix cannot be included because of the mentioned Mono issues. Hence, a REST URL on Linux would look like this: http://localhost:1500/a4c4e466-721a-4011-a9a5-a23827a21b45/sign (instead of ../v1/sign).

In addition, if REST is used, a gRPC endpoint needs to be configured as the primary endpoint of the Queue and the SCU, so it can be properly used by our packages.

We will unify the experiences on Linux and Windows in an upcoming version.