Skip to content
v26.3

Disco Turnstile (Turnstile API)

The turnstile API decides, at a card-capture turnstile, whether a Disco guest card may leave the venue. It is deliberately kept simple so that a turnstile controller can call it without logging in (JWT): the API key is passed in the URL.

Setup

Admin → Disco → General → Turnstile (Turnstile API)

  1. „Generieren" (Generate) creates an API key (shown in full).
  2. Save.
  3. Copy the connection URL next to it using „Kopieren" (Copy) and enter it in the turnstile.

An empty API key disables the turnstile API.

Call

GET /api/v1/disco/turnstile/{key}/{kartenId}
POST /api/v1/disco/turnstile/{key}/{kartenId}
  • {key} — the configured API key.
  • {kartenId} — the ID of the presented guest card.

The response is a JSON object:

{ "canExit": true, "message": "Karte kann raus — Restguthaben 5,00 €", "refund": 5.0, "status": "ok" }

message is intended for display at the turnstile.

Status Codes

Code Meaning Turnstile
200 Card is covered — may exit (refund = any remaining balance) open
402 An amount is still owed — please go to the till locked
423 Card is locked locked
409 Card has already been settled locked
404 Card unknown locked
401 API key missing or incorrect locked

Rule at the turnstile: 200 = open, everything else = locked, and display message.

Settlement & License Seat

For a covered card (status 200), the turnstile settles the card immediately — under its own, automatically created user „Drehkreuz" (Turnstile). In doing so, the turnstile logs in like a POS device and thereby occupies a license seat.

If the card cannot be settled immediately in exceptional cases (e.g. because no seat is free), the guest may still exit — the card is then settled at the end-of-day report.

Remaining balance

A remaining card balance (refund) is not paid out at the turnstile. The guest collects it at the till; the posting follows the setting Remaining balance on cards (Pay out / Balance forfeiture / Tip).

Without a turnstile, there are two mobile alternatives at the exit:

  • Self-checkout (/disco/selfcheckout) — kiosk: a green full-screen frame „OK und verlassen" (OK and leave) for a covered card, a red frame with the amount if payment is still owed.
  • Mobile exit till — the Disco POS as a phone view (tabs photo/line items/info) for an additional till when it's busy.