Skip to main content

SDK Overview

Zyntem offers two SDK families, each designed for a different deployment model. Pick the one that matches your architecture -- you only need one.

Choose Your Deployment Mode

Cloud APIEmbedded Local
How it worksYour POS calls api.zyntem.com over HTTPSYour POS calls a native library in-process
Network requiredYes, on every transactionOnly for initial token provisioning and queued submission
Latency~100-300ms (network round-trip)~1-5ms (local function call)
Offline supportNoYes -- transactions are signed locally and queued for submission
Best forWeb apps, cloud-native POS, SaaS platformsTraditional POS (Windows/.NET, Linux), tablet POS (iPad, Android), kiosks
Integration effortLow -- standard HTTP callsMedium -- embed native library in your build

Cloud API SDKs

Standard HTTP client libraries generated from our OpenAPI specification. Use these if your POS has reliable internet connectivity and you prefer a thin integration.

# JavaScript/TypeScript
npm install @zyntem/fiscalapi

# Python
pip install zyntem-fiscalapi

# Go
go get github.com/javipelopi-dev/fiscalapi-go

Usage is straightforward HTTP:

import { FiscalAPI } from '@zyntem/fiscalapi';

const client = new FiscalAPI({ apiKey: 'zyn_live_...' });
const result = await client.transactions.create({
location_id: 'loc_123',
type: 'sale',
currency: 'EUR',
items: [{ description: 'Coffee', quantity: 1, unit_price: 350, tax_rate: 2100 }]
});

Available for: JavaScript/TypeScript, Python, Go, PHP, Ruby, Java.

Embedded Local SDKs

Native libraries that run the fiscalization engine inside your application. Transactions are signed and hash-chained locally with full legal validity. A background queue forwards them to the tax authority within the regulatory window -- no real-time network dependency.

PlatformPackageInstall
Windows (.NET)Zyntem.Fiscalizationdotnet add package Zyntem.Fiscalization
Androidcom.zyntem.fiscalizationimplementation("com.zyntem.fiscalization:fiscalization-sdk:1.0.0")
iOS/iPadFiscalizationSDKSwift Package Manager (binary target)
Web/Node.js@zyntem/fiscalnpm install @zyntem/fiscal
Pythonzyntem-fiscalpip install zyntem-fiscal
C/C++/Go (via cgo)Pre-built .so/.dylibDownload from GitHub Releases

Usage is a single function call:

// C# (.NET)
using Zyntem.Fiscalization;

FiscalEngine.Init("fiscalization.yaml");
string result = FiscalEngine.ProcessTransaction(jsonInput);
// Kotlin (Android)
import com.zyntem.fiscalization.FiscalEngine

val result = FiscalEngine.processTransaction(jsonInput)
// Swift (iOS)
import FiscalizationSDK

let result = FiscalEngine.processTransaction(jsonInput)

How Embedded Local Works

  1. First boot: The library exchanges your API key for a signed token (one network call per merchant)
  2. Every transaction: Signed and hash-chained locally -- no network needed
  3. Background queue: Forwards fiscal records to the tax authority within the legal submission window
  4. Offline resilience: If the network is down, transactions continue. The queue drains when connectivity returns

Token and Billing

Both SDK families use the same API key (zyn_live_*) and the same account. Billing is based on unique merchant VAT IDs across all deployments -- cloud and embedded merchants are counted together. Your deployment topology doesn't affect pricing.

Which Should I Use?

Use Cloud API if:

  • Your POS is a web application or cloud-hosted service
  • You have reliable internet at every point of sale
  • You want the simplest possible integration

Use Embedded Local if:

  • Your POS runs on Windows, tablets, or kiosks
  • You need offline transaction processing
  • Network latency or reliability is a concern
  • You want zero runtime dependencies beyond your application

You can use both. Some ISVs use the Cloud API for their web dashboard and Embedded Local for their on-premise POS installations. The same account and API keys work with both.