NKS Reservation

Booking system for businesses. Each resource has a capacity, bookings go to the calendar and get an SMS reminder. The widget can be embedded in any other website.

Preview of NKS Reservation

NKS Reservation is a booking system for businesses such as hair salons or car repair shops. A hairdresser who answers the phone mid-haircut and searches a notebook for a free hour loses time, and also the clients who could not get through. A car repair shop has the same problem with different tools: the customer wants a wheel alignment, the mechanic is under a car and the appointment gets agreed on the third try. In NKS Reservation, customers pick the service, day and time themselves and the business receives a finished booking. One installation serves several businesses, and each has its own page with its services.

Why a form or a shared calendar is not enough

A contact form with a "preferred time" field only moves the phone call to email: the business still has to reply whether the time works. A shared calendar shows booked hours, but it does not know that colouring takes two hours and a men's cut half an hour, or that the shop is closed on Sundays. NKS Reservation calculates free slots from the length of the service and the opening hours, so customers only see times the service actually fits into.

What the business and the customer get

  • Every service has a duration, a price and an optional deposit. The customer sees them before choosing a time.
  • The calendar crosses out days when nobody works. In the demo salon, Sundays and the public holiday on 17 November are crossed out.
  • Free slots are offered in 15-minute steps and the chosen time is confirmed right above the form.
  • The form asks only for a name and an email address; phone and note are optional. It has a field for a discount code, which is validated before submitting.
  • A service can require a deposit. The widget then shows online payment or a QR code for a bank transfer.
  • A business can choose to approve bookings first. The customer then sees that the booking is waiting for approval, and the confirmation arrives by email.
  • The customer can save the appointment to their calendar and gets an SMS reminder before the visit.
  • The interface is available in Czech, Slovak, English, German and Polish. The language is switched in the header.
The online booking page of the demo hair salon with three services: hair colouring, 120 minutes for 1,200 CZK with a 300 CZK deposit; women's cut, 60 minutes for 490 CZK; men's cut, 30 minutes for 300 CZK
Choosing a service in the demo salon. Each service shows its duration, price and any deposit.

How it works

The system is written in PHP on the Nette framework; the public part is TypeScript built with Vite. reservation.nks-hub.cz is a directory of businesses. Each business has its own URL with a list of services, and each service has its own page with a calendar. The model works with resources that have a capacity: a resource can be a salon chair, a massage table or a lift in a workshop.

Booking can also be embedded in another website. The widget is a single script added to the page with the business key and the service name. It renders into its own Shadow DOM, so the host site's styles do not break its look and its styles do not leak into the site. The calendar, free slots, discount code and deposit QR code are all part of that one script.

Booking hair colouring on a phone: language switcher CS SK EN DE PL, the November 2026 calendar with Sundays and November 17 crossed out, and free slots from 9:00 in 15-minute steps below
Choosing a time on a phone. Days without opening hours are crossed out.

For integration with other systems, NKS Reservation has a REST API. Requests are authenticated with a key in the X-Api-Key header, and the OpenAPI description is public at /api/v1/openapi. The API covers free days and slots; creating, confirming, cancelling and rescheduling bookings; payment confirmation; customers, services and resources; discount code validation; the waiting list; statistics; and key management. Webhooks send booking events to other systems, such as the application where the business manages its jobs.

Typical deployments

  • Hair or beauty salons with several services of different lengths, where a deposit on longer services protects against no-shows.
  • Massage studios with treatments of different lengths, where bookings are fitted around free tables.
  • Car repair shops: the demo shop has wheel alignment for 60 minutes, repairs for 120 minutes and a service inspection for 90 minutes with a deposit.
  • Companies with their own website or app that want bookings on their side and use NKS Reservation only through the widget or the API.

Customer data

When booking, the customer enters a name and an email address, and a phone number only if they want to. Without an API key nothing is returned: requests for bookings, services and customers end with a 401 "Missing API key" response. Keys are managed through the API and can be edited and deleted, so a leaked key can be revoked.

Project status

NKS Reservation has been running since 2026. reservation.nks-hub.cz has demo businesses: a hair salon, a massage studio and a car repair shop. You can click through a booking up to the form there, but submitting it creates a real booking, so do not use it for testing. The OpenAPI document currently lists paths and their parameters; response schemas are missing.

Getting started

Source code

NKS Reservation is our own product and its code is not public. Interested in deploying it for your business or connecting it to your system? Write to dev@nks-hub.cz or use the enquiry form.

← Back to overview