Antylogic
DemoApp login

399 operational guides

Docs sections
DocsKDS operations
Device

Open Calendar Service From KDS

Open the current KDS service by selecting the closest eligible public calendar service occurrence for Harbor Soho and linking it to a new open service session.

In this article

Use this guide when Harbor Soho has no active KDS service and a TPV-authorised operator needs to start the live kitchen context from a planned public service such as Soho lunch service.

KDS suggests the nearest eligible public service occurrence for the current client day. It is not a full calendar picker, and manual service opening is a separate action.

Before you start

  • Harbor Demo Group and Harbor Soho are selected.
  • KDS is enabled for Harbor Soho through `tpv_settings.enable_kds`.
  • The operator can access KDS and has backend-valid TPV operation access; the backend requires `tpv:use`.
  • No `service_session` with `status: "open"` already exists for Harbor Soho.
  • A public calendar event of kind `service` has an occurrence in the KDS candidate window: same client day, not ended more than 1 hour ago, and not starting more than 6 hours ahead.
  • For GB captures, refresh the runtime occurrence before recording because `SERVICE_OCCURRENCE_START` is `2026-06-23T12:30:00+00:00`, outside the current `2026-06-25` capture context.

Instructions

  1. 1.

    Open KDS for Harbor Soho

    Open `/${ORG_ID}/${LOCATION_ID}/kds`. The page checks the selected organisation and location, verifies KDS access, loads TPV settings, and treats an expected active-service not-found response as no open service.

  2. 2.

    Review the closest service suggestion

    Select `Open service` and review `Closest service` in the modal. When Soho lunch service is a valid public service occurrence in the candidate window, KDS preselects it as the suggested calendar service.

  3. 3.

    Confirm the calendar service

    Select `Open calendar service`. The request sends only `{ "occurrence_id": "<calendar_occurrence.id>" }` to `POST /api/app/{orgId}/{locationId}/service-sessions`; it does not create a manual service.

  4. 4.

    Continue in the active KDS service

    After success, the modal closes, service-session queries refresh, and the KDS header moves to the active-service state for the opened calendar-linked service session.

Validations and limits

  • If KDS is disabled in TPV settings, the board is blocked before service opening is offered.
  • If another service is already open, KDS shows active-service controls instead of the calendar-opening path.
  • KDS-only access can view the board but cannot open the calendar service; opening is governed by TPV operation access and backend `tpv:use`.
  • Only public calendar events of kind `service` are valid candidates. Internal services, non-service events, other-location occurrences, missing occurrences, and invalid timestamps are rejected or excluded.
  • If no eligible occurrence is available, `Closest service` is disabled; use `kds.open-service-manual` for a manual service.
  • The backend rejects conflicts when another open `service_session` exists for the same location.
  • Opening from KDS does not update tickets, ticket item production status, cash registers, payments, or TPV output jobs.

Expected result

Harbor Soho has an open `service_session` linked to the selected public calendar event and occurrence. The occurrence is prepared for live operation, the KDS board is scoped to that service, and post-open ticket or output-job processing remains documented under separate KDS and TPV actions.

Related articles