Skip to content

API & developers

Connect your projects to the till

DiKAS is built open: a REST API with over 200 endpoints and a plugin system turn the POS system into a platform. Inventory management, online shop, accounting, your own apps – everything connects cleanly. No closed box, no lock-in.

first-request.sh
curl -X POST https://YOUR-SERVER/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username":"demo","password":"demo"}'

# → { "accessToken": "eyJhbGciOi..." }

curl https://YOUR-SERVER/api/v1/articles \
  -H "Authorization: Bearer eyJhbGciOi..."
200+

REST API endpoints – readable and writable

JWT

& API key – fine-grained permission control

OpenAPI

interactive Swagger reference included

Linux

self-hosted as an appliance (ISO) possible

API quickstart

Your first request in 3 steps

Authenticate, use the token, fetch data – just as you would expect from a modern API.

1

Log in & get a token

Request an access token with username and password. (For server-to-server connections you use an API key.)

curl -X POST https://YOUR-SERVER/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username":"demo","password":"demo"}'
2

Read the token from the response

The response contains your bearer token (accessToken) and its validity.

{
  "success": true,
  "data": {
    "accessToken": "eyJhbGciOi...",
    "expiresAt": "2026-06-09T22:00:00Z"
  }
}
3

Make requests with the token

Send the token in the Authorization header – done. All endpoints are in the Swagger reference.

curl https://YOUR-SERVER/api/v1/articles \
  -H "Authorization: Bearer eyJhbGciOi..."

What the platform offers

Open, not closed

REST API with 200+ endpoints

Clean JSON over HTTPS: articles, orders, customers, receipts, tables, inventory, reports and more – readable and writable. Whatever the till can do, your application can do too.

Plugin system for deep integration

API not enough? Build your own feature modules (IFeatureModule) with your own entities, endpoints and frontend – right inside DiKAS, with a developer guide.

Secure authentication

Access via JWT token or API key. Permissions are finely controllable, so every integration can only do what it should.

Swagger / OpenAPI

The complete API is documented as an interactive Swagger reference – try it directly in the browser, client-code generation included.

Where your software plugs in

Your systems

Inventory · online shop · accounting · BI · your own apps

REST API & plugins

JSON over HTTPS · JWT/API key · IFeatureModule

DiKAS till

Articles · receipts · customers · TSE · printer · EC terminal

Use cases

What you can connect

Inventory management

Sync articles, stock and orders with your ERP/inventory system.

Accounting

Hand over revenue and receipts to your accounting automatically.

Online shop

Push online orders straight into the till – manage prices and articles centrally.

Your own app / portal

Connect a customer portal, staff app or self-order to the till data.

Reporting & BI

Pull till data into your dashboard/BI tool and build your own analyses.

Automation

Trigger recurring tasks by script – article maintenance, exports, reconciliations.

Even more depth

Your own modules via the plugin system

When the API isn't enough, you go one level deeper: with the plugin system you build your own feature modules with your own entities, endpoints and interfaces – as a system integrator you extend DiKAS for your customers without touching the core.

  • REST API · JSON · over 200 endpoints
  • JWT and API-key authentication
  • Interactive Swagger/OpenAPI reference
  • Plugin system (IFeatureModule) with developer guide
  • Self-hosted as a Linux appliance possible
MyModule.cs
public class MyModule : IFeatureModule
{
    public string Name => "MyModule";

    public void RegisterServices(
        IServiceCollection services,
        IConfiguration configuration)
    {
        // your own services & repositories
    }

    public IEnumerable<EntityRegistration>
        GetEntityRegistrations()
        => [ new(typeof(MyEntity), "MyEntity") ];
}

Get started with the API

Everything documented – from your first request to your own plugin.