The fiskaly SDK includes an HTTP client that is needed1 for accessing the kassensichv.io API that implements a cloud-based, virtual CTSS (Certified Technical Security System) / TSE (Technische Sicherheitseinrichtung) as defined by the German KassenSichV (Kassensicherungsverordnung).
- Automatic authentication handling (fetch/refresh JWT and re-authenticate upon 401 errors).
- Automatic retries on failures (server errors or network timeouts/issues).
- Automatic JSON parsing and serialization of request and response bodies.
- Future: [1] compliance regarding BSI CC-PP-0105-2019 which mandates a locally executed SMA component for creating signed log messages.
- Future: Automatic offline-handling (collection and documentation according to Anwendungserlass zu § 146a AO)
The fiskaly Java SDK is available via Maven.
Add the following to your build.gradle
:
dependencies {
implementation 'com.fiskaly.sdk:fiskaly-sdk:1.2.200-jre'
}
Additionaly to the SDK, you'll also need the fiskaly client. Follow these steps to integrate it into your project:
- Go to https://developer.fiskaly.com/downloads
- Download the appropriate client build for your platform
- Move the client into your project output directory or somewhere within the OS search path
First of all, download the fiskaly Client for android (e.g. com.fiskaly.client-android-all-v1.2.200.aar
) and copy the Android Archive to app/libs/
Then, add the following to your app/build.gradle
:
dependencies {
implementation 'com.fiskaly.sdk:fiskaly-sdk:1.2.200-android'
implementation files('libs/com.fiskaly.client-android-all-v1.2.200.aar')
}
package com.fiskaly.sdk.demo.jre;
import com.fiskaly.sdk.*;
public class Main {
public static void main(String[] args) throws Exception {
final String apiKey = System.getenv("FISKALY_API_KEY");
final String apiSecret = System.getenv("FISKALY_API_SECRET");
final FiskalyHttpClient client = new FiskalyHttpClient(apiKey, apiSecret, "https://kassensichv.io/api/v1");
final FiskalyHttpResponse response = client.request("GET", "/tss");
System.out.println(response);
}
}
-keep class com.sun.jna.* { *; }
-keepclassmembers class * extends com.sun.jna.* { public *; }
The SDK is built on the fiskaly Client which can be configured through the SDK.