Przejdź do treści

Jak stworzyć system rezerwacji online: model, reguły i decyzje przed pierwszą linijką kodu

Kalendarz z wolnymi godzinami to najmniejsza część systemu rezerwacji. Trudne są reguły, płatności i sytuacja, w której dwie osoby klikają ten sam termin w tej samej sekundzie.

Autor: Szymon Łakomy. Aktualizacja:

Najpierw model: co właściwie jest rezerwowane

Wizyta u osoby

Kalendarz pracownika i czas usługi. Fryzjer, fizjoterapeuta, doradca.

Zasób na godziny

Sala, kort, samochód, urządzenie. Liczy się slot i cennik zależny od pory, jak w systemie dla sal i kortów.

Miejsce na zajęciach

Termin z limitem miejsc, karnety i lista oczekujących.

Nocleg na doby

Pokój z minimalną liczbą nocy i cenami sezonowymi, jak przy temacie system rezerwacji pokoi.

Wiele firm łączy dwa modele. W szkole jazdy jedna jazda zajmuje instruktora i samochód, co rozpisuję na stronie system rezerwacji dla szkoły jazdy. Model wyznacza tabele w bazie danych i ekrany panelu, dlatego ustalam go przed pierwszym szkicem. Przegląd wszystkich wariantów jest na stronie systemy rezerwacji online dla firm.

Specyfikacja na jednej stronie

Zanim poprosisz o wycenę, przygotuj odpowiedzi na kilka pytań. Nie muszą być techniczne.

  • co rezerwujemy, ile tego jest i czy coś rezerwuje się razem,
  • usługi: długość, cena, przerwa po usłudze,
  • godziny pracy, urlopy, święta i sezonowe zmiany,
  • jak wcześnie i jak późno można rezerwować,
  • odwołanie i zmiana terminu: do kiedy i co wtedy z zaliczką,
  • płatność: bramka, zaliczka, faktura,
  • powiadomienia: e-mail, SMS, kto w zespole dostaje informację,
  • dane klienta, które naprawdę są potrzebne,
  • kto co widzi w panelu i kto może zmieniać grafik,
  • połączenia z Kalendarzem Google, programem do faktur lub CRM.

Więcej o pisaniu takiego opisu jest w poradniku jak opisać zlecenie dla programisty.

Pułapki techniczne pierwszych wersji

  • Dwie rezerwacje jednego terminu. Sprawdzenie dostępności w przeglądarce nie wystarczy. Blokadę zakładam w bazie danych w chwili zapisu, żeby druga osoba dostała komunikat, a nie potwierdzenie.
  • Zmiana czasu. Terminy zapisane bez strefy czasowej potrafią przesunąć się o godzinę po przejściu na czas letni lub zimowy.
  • Płatność i blokada terminu. Termin czeka na zapłatę przez kilkanaście minut. Gdy płatność dojdzie po tym czasie albo bramka zgłosi ją dwa razy, system musi wiedzieć, co zrobić.
  • Synchronizacja kalendarzy. Wymiana przez iCal ma opóźnienie, więc przy kilku kanałach sprzedaży potrzebne są dodatkowe zabezpieczenia.
  • Wiadomości, które nie doszły. Każda wysyłka trafia do dziennika, a nieudana jest ponawiana.
Formularz zbiera tylko dane potrzebne do rezerwacji. Zasady przetwarzania i regulamin ustal z prawnikiem, bo to nie jest porada prawna.

Gdzie zostaje człowiek

System nie rozstrzyga wszystkiego i nie powinien. Recepcja dopisuje wizytę umówioną telefonicznie do tego samego kalendarza, przesuwa terminy, gdy dzień się opóźnia, i robi wyjątek dla stałego klienta. Panel musi na to pozwalać bez obchodzenia reguł, a każda ręczna zmiana zapisuje, kto i kiedy ją wprowadził. Przydaje się też szybka blokada całego dnia lub jednego zasobu, po której od razu widać, kogo trzeba zawiadomić.

Aplikacja, wtyczka czy własny kod

Gotowa aplikacja jest najszybsza i wystarcza przy typowych wizytach, a wtyczka ma sens, gdy strona działa na WordPressie i reguły są proste. Własny kod opłaca się przy nietypowym modelu, kilku zasobach naraz i integracjach. Te drogi zestawiam w tekstach porównanie systemów rezerwacji online i system rezerwacji WordPress.

Własny system buduję etapami: najpierw rezerwacja i potwierdzenie, potem płatności, SMS-y i panel. Prosta wersja kosztuje od 2500 zł netto, rozbudowana zwykle 4500 do 9000 zł netto, a składniki ceny rozpisuję w artykule ile kosztuje system rezerwacji online. Prawa do kodu i danych zapisujemy w umowie, o czym piszę w tekście umowa na wykonanie oprogramowania.

Najczęstsze pytania

Czy da się zbudować system rezerwacji bez programisty?

Tak, w prostych przypadkach. Aplikację w abonamencie albo wtyczkę WordPress z kilkoma usługami skonfigurujesz samodzielnie. Programista jest potrzebny, gdy reguły wychodzą poza ustawienia narzędzia albo system ma łączyć się z innymi programami.

Ile trwa budowa systemu rezerwacji?

Pierwsza działająca wersja jest gotowa zazwyczaj po kilku tygodniach od zatwierdzenia zakresu. Każdy kolejny element, na przykład płatności, SMS-y czy połączenie z programem do faktur, wydłuża ten czas, dlatego dzielę pracę na etapy.

Jakiej technologii używasz?

Najczęściej React lub Next.js po stronie klienta, Node.js po stronie serwera i bazy PostgreSQL. Na WordPressie buduję moduł zgodny z motywem. Wybór zależy od tego, na czym działa Twoja strona i kto będzie system utrzymywał.

Czy dostanę kod źródłowy?

Tak, jeśli tak zapiszemy w umowie, a zwykle tak proponuję. Razem z kodem przekazuję dostęp do serwera, bazy danych i instrukcję uruchomienia, żeby system mógł przejąć także inny programista.

Powiązane strony

Masz listę wymagań albo jej szkic?

Wyślij ją albo opisz kilka typowych rezerwacji w swojej firmie. Odpowiem z pytaniami do doprecyzowania i wyceną.