JFlow Labs / WIEDZA

System rezerwacji online dla firmy: gotowy program czy aplikacja na zamówienie

System rezerwacji online to aplikacja, w której klient sam wybiera usługę, osobę i wolny termin, a firma dostaje wizytę w kalendarzu razem z potwierdzeniem, przypomnieniem i, jeśli trzeba, przedpłatą. Salonowi lub gabinetowi, który chce nowych klientów z aplikacji, polecam Booksy; firmie, do której klienci trafiają z jej strony, Calendesk albo Reservio; jednej osobie harmonogram spotkań w Kalendarzu Google, a firmie pracującej w Microsoft 365 aplikację Bookings. Płacisz za nie abonament zależny od liczby pracowników albo rezerwacji (Reservio i Kalendarz Google mają też wersje bez opłat, z limitami), a do tego SMS-y ponad pakiet i prowizje od płatności online. Własny system rezerwacji ma sens dopiero wtedy, gdy wizyta zajmuje naraz kilka zasobów (osobę, gabinet, urządzenie), gdy zasady zadatków i wyjątków wykraczają poza ustawienia gotowych narzędzi albo gdy rezerwacja musi trafiać prosto do Twojego CRM-u lub ERP.

Gotowy program czy aplikacja na zamówienie?

Najpierw sprawdź gotowe narzędzie w abonamencie. Aplikację pisaną pod firmę warto zamawiać dopiero tam, gdzie gotowe programy przestają nadążać za Twoimi zasadami.

Salonowi, gabinetowi, trenerowi czy konsultantowi polecam na start gotową aplikację do rezerwacji wizyt w abonamencie. Sam piszę aplikacje na zamówienie, a mimo to pierwsze pytanie, które zadaję, brzmi: czego gotowe narzędzie u Ciebie nie umie?

Koszty według cenników producentów, kwoty netto: Reservio i harmonogram spotkań w Kalendarzu Google mają wersje bez opłat z limitami, Calendesk w planach Standard i Pro kosztuje od 157 do 347 zł miesięcznie, a Booksy 145 zł miesięcznie plus 35 zł za każdego kolejnego pracownika. Do abonamentu dochodzą SMS-y ponad pakiet, prowizje od płatności online, a w Booksy także prowizja za nowych klientów z promocji Boost. Aplikacja na zamówienie to jednorazowy projekt i stałe utrzymanie, więc porównuj ją z abonamentem w horyzoncie co najmniej trzech lat.

Własny system rezerwacji to wydatek innego rzędu niż abonament. Polskie software house’y publikują widełki dla najprostszej aplikacji z jednym procesem, logowaniem i prostym panelem: Devisu 15 000–⁠40 000 zł i 6–⁠10 tygodni pracy, Convert Studio 30 000–⁠60 000 zł. Convert Studio wymienia płatności ze zwrotami, integracje z innymi systemami i dane wrażliwe, na przykład medyczne, wśród czynników, które najmocniej podbijają koszt, a to właśnie te powody, dla których firma w ogóle rozważa własny system. Po starcie dochodzi utrzymanie, które MZSoft i Convert Studio szacują na 10–⁠20% wartości projektu rocznie, plus serwer, SMS-y i opłaty bramki płatności.

Kolejność, którą polecam: spisz usługi i zasady odwołań, przetestuj dwa gotowe programy na prawdziwym tygodniu grafiku, policz koszt w trzy lata, a aplikację zamawiaj tylko na to, czego te programy nie umiały. Kwoty, limity i funkcje pochodzą z cenników i dokumentacji producentów, a przepisy z Dziennika Ustaw i z RODO; źródła są wymienione na końcu strony.

Cenniki i przepisy się zmieniają. Linki do źródeł są na dole strony.

Co wybrać w Twojej branży?

Wybór zaczynam od pytania, co zajmuje jedna wizyta: samą osobę, osobę i gabinet, a może jeszcze urządzenie albo dojazd do klienta.

Jakie funkcje są naprawdę potrzebne?

Kalendarz z wolnymi terminami ma każdy program z tego przewodnika. Różnice widać w tym, co dzieje się przed wizytą i po niej: w przypomnieniach, zasadach odwołań, przedpłatach i eksporcie danych.

Ile kosztują Booksy, Calendesk, Reservio i inne programy?

Sześć narzędzi porównanych po tym, za co płacisz i czego nie dostaniesz. Kwoty netto według cenników producentów.

Booksy to jednocześnie kalendarz dla firmy i aplikacja, w której klienci szukają usług. Według cennika Booksy subskrypcja Booksy Biz kosztuje 145 zł netto miesięcznie plus 35 zł netto za każdego dodatkowego pracownika, a od dziesiątego pracownika dopłat już nie ma. W cenie są automatyczne przypomnienia o wizytach i 100 darmowych SMS-ów marketingowych; każdy kolejny SMS marketingowy kosztuje 10 groszy netto.

Calendesk to program z własną stroną do zapisów i cennikiem w złotych. Według cennika Calendesk plan Standard kosztuje 197 zł netto miesięcznie przy płatności co miesiąc albo 157 zł netto przy rozliczeniu rocznym i obejmuje 5 kont pracowników, 750 rezerwacji miesięcznie oraz 50 SMS-ów. Plan Pro to 347 zł albo 287 zł netto, z 15 kontami, 2500 rezerwacjami, 100 SMS-ami, dostępem do API i integracją z Zapierem. SMS ponad pakiet kosztuje 0,24 zł netto w Standardzie i 0,19 zł netto w Pro.

Reservio można zacząć za darmo: według cennika Reservio plan Free przyjmuje 40 rezerwacji w ciągu 30 dni i mieści 100 klientów. Okres 30 dni nie zaczyna się z początkiem miesiąca, tylko przesuwa się z każdym dniem. Uważaj na to, co dzieje się po przekroczeniu limitu: klienci nadal mogą się zapisać, ale w panelu nie zobaczysz szczegółów ich wizyt. Przypomnienia SMS to płatny dodatek od planu Starter, a stronę bez logo Reservio i integracje przez API daje dopiero plan Pro.

Kalendarz Google ma harmonogram spotkań. Według centrum pomocy Google na koncie osobistym albo w Google Workspace Business Starter utworzysz jedną stronę rezerwacji. Więcej harmonogramów, automatyczne przypomnienia e-mail, sprawdzanie dostępności w kilku kalendarzach i płatności za spotkania to funkcje premium, które wymagają odpowiedniego planu Workspace albo subskrypcji Google One. Spotkań z harmonogramu nie da się dodawać do kalendarzy zasobów, czyli sal i urządzeń.

Według dokumentacji Microsoftu aplikacja Bookings jest dostępna między innymi w subskrypcjach Microsoft 365 Business Basic, Standard i Premium, a jej dane są przechowywane w Exchange Online. Cennik Calendly podaje, że darmowy plan daje jeden typ wydarzenia i jedno połączenie z kalendarzem; płatności przez Stripe i PayPal, przypomnienia i webhooki są w planach płatnych, rozliczanych za każdą osobę przyjmującą spotkania.

Jeśli trafisz na zestawienie, które poleca Versum, sprawdź jego datę: według komunikatu na stronie Versum sprzedaż programu zakończyła się 31 stycznia 2022 r., konta testowego nie da się założyć, a nowych klientów producent odsyła do Booksy. Adres Moment.pl, dawnego portalu z oferty Versum, przekierowuje dziś na stronę Booksy.

Gotowe systemy rezerwacji w skrócie. Kwoty netto z oficjalnych cenników; przed decyzją sprawdź je u producenta.
NarzędzieModel opłatMocna stronaNa co uważać
Booksy145 zł miesięcznie plus 35 zł za każdego kolejnego pracownika; prowizja tylko przy włączonym Boost.Platforma z klientami, przedpłaty i kaucje, przypomnienia SMS w cenie.Klient z kontem w aplikacji jest też klientem Booksy.
CalendeskOd 157 zł miesięcznie przy rozliczeniu rocznym; limity rezerwacji i SMS-ów w planie.Własna strona rezerwacji, API i Zapier w planie Pro.Plan Standard: 750 rezerwacji miesięcznie i 5 kont pracowników.
ReservioPlan darmowy i plany płatne.Start bez opłat.Plan darmowy: 40 rezerwacji na 30 dni i 100 klientów.
Harmonogram w Kalendarzu GoogleW ramach konta Google; funkcje premium w Workspace lub Google One.Brak wdrożenia dla jednej osoby.Płatności tylko kartą, Apple Pay i Google Pay; bez kalendarzy zasobów.
Microsoft BookingsW ramach wybranych planów Microsoft 365.Outlook i Teams w jednym miejscu.Ma sens w firmie, która już pracuje w Microsoft 365.
CalendlyPlan darmowy i plany płatne za miejsce.Konsultacje i spotkania, podział rezerwacji w zespole.Płatności, przypomnienia i webhooki dopiero w planie płatnym.

Ile kosztuje Booksy i co oddajesz platformie?

To, czy Booksy wyjdzie drogo, zależy od tego, skąd przychodzą Twoi klienci: abonament jest stały, a prowizja Boost rośnie z liczbą nowych klientów z aplikacji. Policz to na własnych liczbach, zanim włączysz Boost.

Zacznij od abonamentu. Cennik Booksy podaje 145 zł netto miesięcznie za konto i 35 zł netto za każdego kolejnego pracownika. Dla salonu z trzema osobami to 215 zł netto miesięcznie, 2580 zł rocznie i 7740 zł w trzy lata. Płatności przez Booksy mają osobne stawki z tego samego cennika: 1,89 procent kwoty brutto plus 49 groszy brutto przy płatnościach mobilnych i 1,49 procent przy Tap to Pay.

Boost to płatna promocja profilu w aplikacji Booksy. Nie ma za nią abonamentu: płacisz jednorazową prowizję za każdego nowego klienta, którego przyprowadzi, według cennika 45 procent netto wartości usług z jego pierwszej zakończonej wizyty, najwyżej 250 zł netto. Gdy klientka z Boost przychodzi na manicure za 200 zł netto, oddajesz 90 zł netto. Przy zabiegu za 600 zł netto prowizja wyniosłaby 270 zł, ale zatrzymuje się na 250 zł netto.

Prowizja nie jest naliczana, gdy rezerwacja przyszła z Twojego bezprowizyjnego linku do profilu albo z integracji z Facebookiem, Instagramem lub Google, ani wtedy, gdy klient jest już w Twojej bazie kontaktów w Booksy Biz. Dlatego stałym klientom wysyłaj link do swojego profilu. Jedna prowizja za nowego klienta, który potem wraca latami, bywa rozsądnym kosztem pozyskania; prowizja za klienta, którego i tak miałeś, to czysta strata.

Drugiego kosztu nie widać w cenniku: chodzi o relację z klientem. Według obowiązku informacyjnego Booksy dla klienta z kontem w aplikacji administratorem jego danych jest Booksy International. Platforma udostępnia dane salonowi przy rezerwacji, a salon przetwarza je dalej jako osobny administrator. Booksy grupuje klientów, prowadzi marketing własnych usług i kieruje do nich rekomendacje, a na stronie dla klientów zachęca do odkrywania nowych miejsc w okolicy. Twój profil stoi więc w tej samej aplikacji co profile konkurencji.

Kiedy budowa od zera ma sens, a kiedy jest przerostem formy?

Aplikacja na zamówienie broni się regułami, a nie wyglądem. Jeśli jedyną różnicą ma być ładniejszy kalendarz, zostań przy abonamencie.

Narzędzia z tabeli wyżej najprościej ustawić dla układu: jedna osoba, jedna usługa, jeden termin. Kłopot zaczyna się, gdy wizyta zajmuje kilka rzeczy naraz. Zabieg laserowy wymaga kosmetologa, gabinetu i konkretnego urządzenia, którego salon ma jeden egzemplarz na dwa gabinety. Wizyta serwisowa u klienta B2B wymaga technika z uprawnieniami, samochodu i części na magazynie. Jeśli w wersji demo gotowego narzędzia nie ustawisz takiej zależności, w praktyce pilnuje jej recepcja, telefonem i pamięcią.

Drugi sygnał to reguły zależne od klienta: zadatek tylko od nowych klientów i tylko w soboty, zakaz rezerwacji zabiegu bez wcześniejszej konsultacji, limit wizyt w pakiecie wykupionym przez firmę dla pracowników. Część z tego ustawisz w lepszych narzędziach, bo Booksy pozwala oznaczyć zaufanych klientów, którzy rezerwują bez przedpłat, a Calendesk ma limit rezerwacji na klienta. Gdy lista wyjątków rośnie, każdy z nich staje się ręczną poprawką w kalendarzu.

Trzeci sygnał to integracje. Jeśli nowa wizyta ma od razu założyć zlecenie w systemie serwisowym, sprawdzić saldo pakietu w CRM-ie albo zablokować urządzenie w ERP, potrzebujesz API po obu stronach. Calendesk daje API i Zapier w planie Pro, Reservio własne integracje przez API w planie Pro, a Calendly webhooki w planach płatnych. Często to wystarcza: integracja gotowego narzędzia z Twoim programem przez API obejmuje samo połączenie, bo kalendarz, płatności i powiadomienia działają już u dostawcy.

Gotowe narzędzie czy własny system rezerwacji: sygnały z codziennej pracy.
SytuacjaGotowe narzędzieWłasny system
Zespół, który chce nowych klientów z aplikacjiBooksy, jeśli nowi klienci z platformy są warci prowizji Boost.Nie zastąpi ruchu z platformy, na której klienci szukają usług.
Wizyta zajmuje naraz osobę, gabinet i urządzenieSprawdź na demo; harmonogram Google nie zapisuje spotkań w kalendarzach zasobów.Reguła zapisana w bazie danych i sprawdzana przy każdej rezerwacji.
Zadatek zależny od usługi, klienta i terminuPrzedpłaty procentowe i kaucje w Booksy; reszta zależy od ustawień narzędzia.Dowolna reguła, na przykład zadatek tylko od nowych klientów w soboty.
Rezerwacja ma trafić do CRM-u, ERP albo systemu serwisowegoAPI w wyższych planach (Calendesk Pro, Reservio Pro) albo integracja przez Zapier.Zapis prosto do Twoich systemów, bez pośrednika.
Wizyty u klienta, z dojazdem między adresamiSprawdź na demo, czy narzędzie uwzględnia czas dojazdu między klientami.Grafik liczony z adresów i stref, z akceptacją dyspozytora.
Dane klientów mają zostać wyłącznie u CiebieW abonamencie dostawca przetwarza dane w Twoim imieniu; na platformie klient ma też własne konto u jej operatora.Baza w infrastrukturze, którą wybierasz Ty, z Twoimi zasadami dostępu.

Jak ograniczyć nieobecności klientów?

Najpierw przypomnienie, potem pieniądze: SMS dzień przed wizytą przypomina o terminie, a przedpłata albo kaucja sprawiają, że późne odwołanie kosztuje tyle, ile zapisałeś w regulaminie.

Najpierw przypomnienie. W Booksy jest w cenie abonamentu, w Calendesk mieści się w pakiecie SMS-ów planu, a we własnej aplikacji płacisz bramce SMS: według cennika SMSAPI przy doładowaniu od 49 do 499,99 zł jeden SMS kosztuje 0,17 zł netto, więc 400 przypomnień miesięcznie to 68 zł netto. Ile nieobecności to oszczędza, sprawdź na własnych liczbach: porównaj miesiąc przed włączeniem przypomnień z miesiącem po.

Treść przypomnienia trzymaj czystą. Art. 398 Prawa komunikacji elektronicznej zakazuje używania telekomunikacyjnych urządzeń końcowych i automatycznych systemów wywołujących do przesyłania informacji handlowej, w tym marketingu bezpośredniego, bez uprzedniej zgody odbiorcy. Dopisek o promocji na inny zabieg może zmienić przypomnienie w informację handlową, więc zgody marketingowe zbieraj osobnym polem, a przypomnienie ograniczaj do godziny, adresu i linku do zmiany terminu.

Na nieobecności bez uprzedzenia gotowe programy proponują przedpłatę. Booksy według swojej strony o ochronie przed nieobecnościami ma dwa mechanizmy: przedpłatę, którą klient wpłaca przy zapisie i którą zatrzymujesz, gdy odwoła po terminie albo nie przyjdzie, oraz kaucję, czyli kartę dodaną przy umawianiu wizyty, z której pobierasz opłatę według ustalonych zasad. Sam decydujesz, przy których usługach, jaki procent ceny i do kiedy klient odwołuje wizytę bez kosztów.

W regulaminie słowa mają skutki. Według art. 394 Kodeksu cywilnego, w braku odmiennego zastrzeżenia umownego albo zwyczaju, strona, której kontrahent nie wykonał umowy, może od niej odstąpić bez wyznaczania dodatkowego terminu i zadatek zachować, a jeśli sama dała zadatek, żądać sumy dwukrotnie wyższej. Gdy umowa zostanie wykonana, zadatek zalicza się na poczet ceny; przy rozwiązaniu umowy albo gdy za niewykonanie nie odpowiada żadna ze stron lub odpowiadają obie, zadatek wraca.

Dochodzą przepisy konsumenckie. Rezerwacja zrobiona przez klienta na stronie albo w aplikacji to zwykle umowa zawarta na odległość, a od takiej umowy konsument może odstąpić w ciągu 14 dni bez podawania przyczyny (art. 27 ust. 1 ustawy o prawach konsumenta). Art. 38 ust. 1 wylicza wyjątki, między innymi usługę w pełni wykonaną za wyraźną i uprzednią zgodą konsumenta, poinformowanego o utracie prawa odstąpienia (pkt 1), oraz usługi związane z wypoczynkiem, wydarzeniami rozrywkowymi, sportowymi lub kulturalnymi, jeśli w umowie oznaczono dzień lub okres świadczenia (pkt 12). Jeśli wizyta ma się odbyć przed upływem 14 dni, przedsiębiorca wymaga od konsumenta oświadczenia z wyraźnym żądaniem rozpoczęcia usługi (art. 21 ust. 2), a konsument, który odstąpi po takim żądaniu, płaci za świadczenia spełnione do chwili odstąpienia (art. 35).

Usługi zdrowotne świadczone przez pracowników służby zdrowia ustawa co do zasady wyłącza (art. 3a ust. 1), ale do takich umów zawieranych na odległość stosuje między innymi przepisy o odstąpieniu z art. 26–⁠37 (art. 3a ust. 2). Jak złożyć to z zatrzymaniem zadatku przy odwołanej wizycie, zależy od usługi i regulaminu, więc tę część ustal z prawnikiem, zanim włączysz przedpłaty. Ja buduję mechanizm, który wiernie wykonuje ustalone zasady, a sporne przypadki zostawia człowiekowi.

Odwołanie wizyty po terminie: system zbiera fakty, o pieniądzach klienta decyduje człowiek.
  1. 01 · StartKlient odwołuje wizytę po terminieOdwołanie przychodzi z linku w przypomnieniu albo z panelu klienta, później niż pozwala regulamin danej usługi.Strona rezerwacji
  2. 02 · AutomatSystem zestawia regulamin i historięPokazuje, ile godzin przed wizytą przyszło odwołanie, jaki zadatek wpłacono i ile razy klient wcześniej odwoływał lub nie przyszedł.
  3. 03 · CzłowiekWłaściciel decyduje o zadatkuZatrzymać, zwrócić czy przenieść na nowy termin. System proponuje rozwiązanie z regulaminu, ale nie rusza pieniędzy sam.
  4. 04 · AutomatSystem wykonuje decyzjęZwrot idzie przez bramkę płatności, bez ręcznego przelewu, a decyzja z uzasadnieniem trafia do historii klienta.Przelewy24 / Stripe
  5. 05 · EfektTermin wraca do grafikuWolny slot pojawia się w kalendarzu, a osoby z listy oczekujących dostają powiadomienie.

Odzyskany czasZamiast przeliczać godziny i szukać wpłaty w panelu bramki, właściciel podejmuje jedną decyzję na podstawie gotowego zestawienia i wraca do klientów.

Jak przyjąć zadatek BLIK-iem albo kartą?

Przy rezerwacjach płatność ma jedną szczególną cechę: dotyczy usługi za kilka dni albo tygodni. To ogranicza, co da się zrobić z kartą i BLIK-iem.

Najprostszy model to przedpłata pobierana od razu przy rezerwacji i do niego BLIK pasuje. Według dokumentacji Stripe kod BLIK jest ważny 2 minuty, klient ma 60 sekund na potwierdzenie płatności w aplikacji banku, a zwroty, także częściowe, są obsługiwane. Przelewy24 oferuje BLIK w kilku wariantach wdrożenia, w tym OneClick i płatności cykliczne. Operatorów, metody płatności i prowizje porównuję w przewodniku jak wybrać bramkę płatności.

Pułapka czeka przy pomyśle „zablokuję pieniądze na karcie i pobiorę je tylko wtedy, gdy klient nie przyjdzie”. Stripe pozwala rozdzielić autoryzację od obciążenia, ale autoryzacja płatności kartą online jest zwykle ważna 7 dni, a przy części transakcji kartą Visa krócej. Dłuższą autoryzację Stripe daje tylko dla płatności, które się do niej kwalifikują, a przy BLIK-u Stripe w ogóle nie pozwala zablokować środków i pobrać ich później (w dokumentacji: brak manual capture). Zwykła blokada na karcie nie wystarczy więc na wizytę za trzy tygodnie.

Do opłaty za nieobecność służy zapisanie metody płatności na później. Stripe pozwala zapisać kartę bez płatności i obciążyć ją, gdy klienta nie ma przy kasie, ale wymaga wyraźnej zgody na takie użycie oraz warunków, które mówią, kiedy i w jakiej wysokości obciążysz klienta, a zapis tej zgody musisz przechowywać. Na tej samej zasadzie działa kaucja w Booksy: klient dodaje kartę przy rezerwacji. Stripe pozwala też zapisać BLIK do późniejszych płatności bez udziału klienta, przy spełnieniu warunków dla płatności cyklicznych BLIK.

Przy własnym systemie liczy się czas blokady terminu. Stripe Checkout pozwala ustawić wygaśnięcie sesji płatności od 30 minut do 24 godzin od jej utworzenia, a po wygaśnięciu wysyła zdarzenie checkout.session.expired. Termin w kalendarzu powinien być zablokowany dokładnie tak długo, jak otwarta jest płatność, i zwalniany po tym zdarzeniu. Jak bezpiecznie przyjmować takie powiadomienia, opisuję w przewodnikach Stripe dla polskiej firmy i webhook: co to jest i jak działa.

Harmonogram spotkań w Kalendarzu Google też przyjmie przedpłatę, ale tylko w odpowiednim planie Google Workspace i wyłącznie przez Stripe, a klient zapłaci tylko kartą, Apple Pay albo Google Pay, bez BLIK-a. Google nie pobiera opłat za platformę i nie przetwarza danych kart, ale też nie zwraca pieniędzy automatycznie, gdy ktoś odwoła spotkanie: zwrot robisz ręcznie w panelu Stripe.

Jak zbudować kalendarz, który nie sprzeda dwa razy tej samej godziny?

We własnym systemie o tym, czy dwóch klientów nie dostanie tej samej godziny, decydują trzy mechanizmy: wolne terminy liczone z grafików osoby, gabinetu i urządzenia, blokada terminu na czas otwartej płatności oraz potwierdzenie dopiero po powiadomieniu od operatora płatności.

Aplikację na zamówienie zaczynam od modelu danych, a nie od ekranu. Usługa ma czas trwania, bufor i listę wymaganych zasobów: osobę z kwalifikacjami, gabinet, urządzenie. Każdy zasób ma grafik i wyjątki, jak urlop czy przegląd, a wolne terminy powstają z przecięcia tych grafików, więc klient widzi tylko sloty, które da się obsłużyć.

Klasyczny błąd w samodzielnie pisanych systemach rezerwacji to sprawdzanie dostępności tylko w kodzie aplikacji. Dwóch klientów klika ten sam termin w tej samej sekundzie, oba żądania widzą wolny slot i oba zapisują rezerwację. Problem rozwiązuje dopiero reguła w bazie danych. W PostgreSQL służy do tego ograniczenie wykluczające na zakresach czasu: baza odrzuci każdą rezerwację, która nakłada się na inną dla tego samego zasobu, niezależnie od tego, ile żądań przyjdzie naraz.

Rezerwacja przechodzi przez statusy: oczekuje na zadatek, potwierdzona, odbyta, odwołana, nieobecność. Status „potwierdzona” ustawia wyłącznie powiadomienie od operatora płatności, nigdy strona powrotu z bramki, bo klient może zamknąć przeglądarkę przed przekierowaniem. Rezerwacje, które nie mieszczą się w regułach, nie przepadają i nie przechodzą automatycznie, tylko czekają na decyzję osoby z recepcji. To ten sam wzorzec, który opisuję w przewodniku człowiek w pętli w automatyzacji.

Pracownicy chcą widzieć wizyty w swoim Kalendarzu Google albo Outlooku, więc system wysyła tam wydarzenia, ale źródłem prawdy zostaje jego własna baza. Blokowanie slotów prywatnymi wpisami z kalendarza pracownika włączam tylko tam, gdzie zespół naprawdę tak pracuje, bo każdy kierunek synchronizacji to kolejne miejsce, w którym coś może się rozjechać.

Rezerwacja z zadatkiem we własnym systemie: automat pilnuje terminu i płatności, wyjątki zatwierdza recepcja.
  1. 01 · StartKlient wybiera usługę i terminStrona pokazuje tylko sloty, w których wolna jest osoba, gabinet i urządzenie potrzebne do tej usługi.Strona firmy
  2. 02 · AutomatBlokada terminu i płatność zadatkuSystem zapisuje rezerwację jako oczekującą i otwiera płatność BLIK-iem lub kartą; blokada wygasa razem z sesją płatności.Przelewy24 / Stripe
  3. 03 · AutomatWebhook potwierdza wpłatęDopiero powiadomienie od operatora zmienia status na potwierdzony; klient dostaje e-mail z terminem i regulaminem.Webhook
  4. 04 · CzłowiekRecepcja zatwierdza wyjątkiRezerwacje spoza reguł, na przykład zabieg bez wcześniejszej konsultacji albo grupa, czekają na decyzję osoby.
  5. 05 · AutomatPrzypomnienie dzień przed wizytąSMS bez nazwy zabiegu: godzina, adres i link do zmiany terminu zgodnie z regulaminem.SMSAPI
  6. 06 · EfektPotwierdzona wizyta w kalendarzuTermin zajęty dla wszystkich zasobów, wpis w CRM-ie, zadatek zaliczony na poczet ceny.

Odzyskany czasRecepcja przestaje przepisywać rezerwacje z telefonu i maili, a czas poświęca klientom, którzy już są w gabinecie, i trudniejszym prośbom o zmianę terminu.

PostgreSQL: ta sama osoba i ten sam gabinet nie dostaną dwóch nakładających się wizyt, nawet przy równoczesnych kliknięciach (schemat uproszczony)
CREATE EXTENSION IF NOT EXISTS btree_gist;

CREATE TABLE rezerwacja (
  id           bigint GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
  pracownik_id int NOT NULL,
  gabinet_id   int NOT NULL,
  termin       tstzrange NOT NULL,
  status       text NOT NULL DEFAULT 'oczekuje_na_zadatek',
  blokada_do   timestamptz,
  -- ta sama osoba nie może mieć dwóch nakładających się wizyt
  EXCLUDE USING gist (pracownik_id WITH =, termin WITH &&)
    WHERE (status IN ('oczekuje_na_zadatek', 'potwierdzona')),
  -- ten sam gabinet też nie
  EXCLUDE USING gist (gabinet_id WITH =, termin WITH &&)
    WHERE (status IN ('oczekuje_na_zadatek', 'potwierdzona'))
);

-- Pierwsza rezerwacja: osoba 7, gabinet 2, 10:00-11:00. Druga rezerwacja
-- tej samej osoby na 10:30-11:30 skończy się błędem:
-- conflicting key value violates exclusion constraint
INSERT INTO rezerwacja (pracownik_id, gabinet_id, termin, blokada_do)
VALUES (7, 2, '[2026-10-12 10:00+02, 2026-10-12 11:00+02)', now() + interval '30 minutes');

-- Blokady, których płatność wygasła, zwalniają termin
UPDATE rezerwacja
SET status = 'wygasla'
WHERE status = 'oczekuje_na_zadatek' AND blokada_do < now();

Co z RODO, gdy wizyta mówi coś o zdrowiu?

W gabinecie fizjoterapii, psychologa czy medycyny estetycznej sama rezerwacja mówi coś o zdrowiu klienta. To zmienia wymagania wobec systemu.

RODO definiuje dane dotyczące zdrowia jako dane o zdrowiu fizycznym lub psychicznym osoby, w tym o korzystaniu z usług opieki zdrowotnej, które ujawniają informacje o stanie jej zdrowia (art. 4 pkt 15). Rezerwacja u fizjoterapeuty z polem „opisz dolegliwość” to już dane szczególnej kategorii. Art. 9 ust. 1 zakazuje ich przetwarzania, a ust. 2 wymienia wyjątki, między innymi wyraźną zgodę osoby w konkretnym celu (lit. a) oraz przetwarzanie niezbędne do diagnozy medycznej, leczenia i zapewnienia opieki zdrowotnej na podstawie prawa albo umowy z pracownikiem służby zdrowia (lit. h).

W praktyce stosuję trzy zasady. Formularz pyta tylko o to, czego naprawdę potrzebujesz przed wizytą. SMS i e-mail z przypomnieniem nie zawierają nazwy zabiegu ani specjalizacji, tylko godzinę, adres i link do zmiany terminu, bo powiadomienia na telefonie klienta widzą też inni. Dostęp do notatek ma wyłącznie osoba prowadząca wizytę, a każde otwarcie karty klienta zostawia ślad w dzienniku zdarzeń.

Gotowy program do rezerwacji przetwarza dane Twoich klientów w Twoim imieniu, więc potrzebujesz z dostawcą umowy powierzenia (art. 28 RODO). Zwróć uwagę na art. 28 ust. 3 lit. g: po zakończeniu usług dostawca, zależnie od Twojej decyzji, usuwa albo zwraca Ci wszystkie dane osobowe. Zanim podpiszesz abonament, sprawdź, w jakim formacie dostaniesz historię klientów i wizyt, bo od tego zależy, czy kiedykolwiek zmienisz narzędzie bez utraty bazy.

Platforma działa inaczej niż abonament. Jak pisałem wyżej, dla klienta z kontem w Booksy administratorem danych tego konta jest Booksy, a salon przetwarza dane jako osobny administrator. Microsoft Bookings przechowuje dane rezerwacji w Exchange Online, w tej samej usłudze co firmowa poczta. Ogólne zasady RODO dla małej firmy, także przy narzędziach z AI, zebrałem w przewodniku AI Act i RODO w małej firmie.

Czy formularz zapisów musi być dostępny cyfrowo?

Dla większości salonów, gabinetów i trenerów nie. Polski Akt o Dostępności nie obejmuje usług mikroprzedsiębiorców, czyli według art. 7 ust. 1 pkt 1 Prawa przedsiębiorców firm, które w co najmniej jednym z dwóch ostatnich lat obrotowych zatrudniały średniorocznie mniej niż 10 pracowników i miały obrót netto albo sumę bilansową do równowartości 2 mln euro. Większą firmę, która przez stronę internetową oferuje konsumentom usługi w celu zawarcia umowy, ustawa obejmuje od 28 czerwca 2025 r.

Ustawa z 26 kwietnia 2024 r. o zapewnianiu spełniania wymagań dostępności niektórych produktów i usług przez podmioty gospodarcze, nazywana Polskim Aktem o Dostępności, obejmuje usługi handlu elektronicznego. Art. 5 pkt 32 definiuje je jako usługi oferowane lub świadczone na odległość przez strony internetowe i urządzenia mobilne, drogą elektroniczną i na indywidualne żądanie konsumenta w celu zawarcia umowy, a serwis gov.pl wymienia wśród nich wprost usługi z zakresu opieki zdrowotnej. Klient, który sam rezerwuje wizytę na Twojej stronie, zawiera umowę o usługę na odległość, więc moim zdaniem formularz rezerwacji mieści się w tej definicji.

Ustawy nie stosuje się do usług oferowanych lub świadczonych przez mikroprzedsiębiorców (art. 4 pkt 1). To zwolnienie dotyczy większości czytelników tego przewodnika: według raportu PARP o sektorze MŚP z 2026 r. mikroprzedsiębiorstwa stanowiły w 2024 r. 97,2% aktywnych przedsiębiorstw niefinansowych w Polsce, a ponad trzy czwarte z nich to firmy jednoosobowe. W większej firmie pamiętaj, że zapewnienie dostępności usług jest obowiązkiem usługodawcy (art. 2 pkt 2), czyli firmy, która świadczy usługę albo oferuje ją konsumentowi (art. 5 pkt 35). Widżet gotowego programu na Twojej stronie nie zmienia tego, kto oferuje usługę Twojemu klientowi, dlatego o zgodność z wymaganiami dostępności pytaj dostawcę przed podpisaniem umowy.

W kalendarzu rezerwacji sprawdź przede wszystkim trzy rzeczy: czy wybór dnia i godziny działa z klawiatury, czy terminy wolne i zajęte różnią się czymś więcej niż kolorem i czy czytnik ekranu odczyta komunikaty o błędach. Pierwszą sprawdzisz w pięć minut, przechodząc całą rezerwację klawiszem Tab, bez myszy. Wymagania, normy i obowiązki informacyjne opisuję szerzej w przewodniku dostępność sklepu internetowego; formularz rezerwacji podlega tej samej ustawie co sklep.

Od czego zacząć wdrożenie?

Zanim wybierzesz program albo zamówisz aplikację, spisz usługi i zasady odwołań, przetestuj dwa gotowe narzędzia na prawdziwym tygodniu i policz koszt w trzy lata. Ta kolejność chroni przed najdroższym błędem: budową aplikacji do zasad, których nikt jeszcze nie spisał.

Jeśli lista luk przemawia za aplikacją pisaną pod firmę, sposób podejmowania takiej decyzji opisuję w przewodniku oprogramowanie dedykowane czy gotowe, budżet i zakres w tekście ile kosztuje aplikacja webowa, a sposób pracy nad takim projektem na stronie usługi aplikacje webowe.

Jeśli po tej liście nadal nie wiesz, czy wystarczy gotowe narzędzie, integracja przez API, czy własna aplikacja, napisz do mnie. Opisz, jakie usługi przyjmujesz, ile rezerwacji masz w tygodniu, jakie zasoby zajmuje jedna wizyta i z jakimi systemami rezerwacja ma się połączyć. Odpowiadam w ciągu jednego dnia roboczego i powiem wprost, co z tych trzech ma u Ciebie sens. Pracuję z Mikołowa, zdalnie w całej Polsce.

  1. Spisz usługi i zasobyDla każdej usługi: czas trwania, bufor, kto może ją wykonać, jaki gabinet i jakie urządzenie zajmuje. Ta lista jest specyfikacją niezależnie od tego, co wybierzesz.
  2. Ustal zasady odwołań i zadatkuDo kiedy klient odwołuje bez kosztów, ile wpłaca i co dzieje się z pieniędzmi. Regulamin skonsultuj z prawnikiem, bo skutki zależą od nazwy kwoty i rodzaju usługi.
  3. Przetestuj dwa gotowe narzędzia na prawdziwym tygodniuBooksy daje 7 dni okresu testowego, a Calendesk i Reservio po 14 dni. Wpisz grafik i usługi, a potem odtwórz w wersji próbnej wszystkie rezerwacje z ostatniego tygodnia; każda, której nie da się wpisać, trafia na listę luk.
  4. Policz koszt w trzy lataAbonament za wszystkie osoby, SMS-y, opłaty za płatności i prowizje od nowych klientów. Porównuj na swojej liczbie rezerwacji, a nie na przykładzie z cennika.
  5. Sprawdź wyjście, zanim wejdzieszZapytaj o eksport klientów i historii wizyt oraz o umowę powierzenia. Narzędzie, z którego nie wyjmiesz danych, decyduje za Ciebie przy każdej podwyżce cennika.
  6. Aplikację buduj z listy lukJeśli luki są poważne, zakres aplikacji wynika wprost z listy z kroku trzeciego. Nie budujesz kopii Booksy dla siebie, tylko to, czego gotowe narzędzie u Ciebie nie umie.

Pytania i odpowiedzi

Czy można przyjmować zapisy na wizyty za darmo?

Tak, ale z limitami. Harmonogram spotkań w Kalendarzu Google na koncie osobistym pozwala utworzyć jedną stronę rezerwacji, a automatyczne przypomnienia e-mail i płatności to funkcje premium. Plan darmowy Reservio przyjmuje 40 rezerwacji na 30 dni i 100 klientów, a darmowe Calendly daje jeden typ wydarzenia i jedno połączenie z kalendarzem. Limity według stron producentów.

Czy Booksy pobiera prowizję od każdej wizyty?

Nie. Booksy pobiera abonament, a prowizję tylko przy włączonej usłudze Boost: 45 procent netto wartości usług z pierwszej zakończonej wizyty nowego klienta z Boost, maksymalnie 250 zł netto. Prowizji nie ma, gdy rezerwacja przyszła z Twojego bezprowizyjnego linku do profilu lub z integracji albo gdy klient jest już w Twojej bazie. Osobno płacisz za płatności przez Booksy, na przykład 1,89 procent od kwoty brutto plus 49 groszy brutto przy płatnościach mobilnych.

Ile kosztuje własny system rezerwacji w porównaniu z abonamentem?

Abonament Booksy dla trzech osób to 215 zł netto miesięcznie, czyli 7740 zł netto w trzy lata, bez opłat za płatności i prowizji Boost. Własny system rezerwacji to jednorazowy projekt i stałe utrzymanie: Devisu publikuje widełki 15 000–⁠40 000 zł za najprostszą aplikację z jednym procesem, Convert Studio 30 000–⁠60 000 zł, a utrzymanie MZSoft i Convert Studio szacują na 10–⁠20% wartości projektu rocznie, plus serwer, SMS-y i opłaty bramki płatności. Za równowartość trzech lat tego abonamentu takiej aplikacji nie zbuduję, więc opłaca się ona dopiero wtedy, gdy rozwiązuje problemy, których abonament nie rozwiąże: łączenie zasobów, nietypowe zasady zadatków albo integrację z Twoimi systemami. Ceny Booksy z cennika i widełki wykonawców.

Zadatek czy przedpłata za wizytę: czym się różnią?

Zadatek ma skutki opisane w art. 394 Kodeksu cywilnego: gdy klient nie wykona umowy, możesz od niej odstąpić i zatrzymać zadatek, a gdy wizyta się odbędzie, zadatek zalicza się na poczet ceny; jeśli umowy nie wykona firma, klient może żądać dwukrotności zadatku. Art. 394 dotyczy kwoty zastrzeżonej jako zadatek, a los zwykłej przedpłaty przy odwołaniu wizyty określa regulamin. Przy rezerwacjach konsumentów przez internet dochodzi prawo odstąpienia od umowy zawartej na odległość, więc nazwę kwoty i zasady jej zwrotu ustal z prawnikiem.

Czy klient może odstąpić od wizyty umówionej przez internet?

Rezerwacja usługi przez stronę lub aplikację jest zwykle umową zawartą na odległość, a od niej konsument może odstąpić w ciągu 14 dni bez podawania przyczyny (art. 27 ust. 1 ustawy o prawach konsumenta). Wyjątki z art. 38 ust. 1 obejmują między innymi usługi związane z wypoczynkiem oraz z wydarzeniami rozrywkowymi, sportowymi lub kulturalnymi, jeśli w umowie oznaczono dzień lub okres świadczenia (pkt 12). Gdy wizyta ma się odbyć przed upływem 14 dni, przedsiębiorca potrzebuje wyraźnego żądania konsumenta, by usługa się rozpoczęła (art. 21 ust. 2).

Czy zapisy w gabinecie to dane o zdrowiu?

Często tak. RODO zalicza do danych dotyczących zdrowia także informacje o korzystaniu z usług opieki zdrowotnej (art. 4 pkt 15), więc rezerwacja u fizjoterapeuty czy psychologa, a zwłaszcza pole z opisem dolegliwości, to dane szczególnej kategorii z art. 9. System rezerwacji w takim gabinecie powinien zbierać minimum danych i wysyłać przypomnienia bez nazwy zabiegu, a z dostawcą gotowego narzędzia potrzebujesz umowy powierzenia z art. 28 RODO.

Jak przyjąć zadatek BLIK-iem przy zapisie przez internet?

Zadatek BLIK-iem pobierasz od razu przy rezerwacji, przez bramkę taką jak Przelewy24 albo Stripe. Przy BLIK-u Stripe nie pozwala zablokować środków i pobrać ich później, więc kwoty nie da się trzymać do dnia wizyty; kod BLIK jest ważny 2 minuty, a klient ma 60 sekund na potwierdzenie w aplikacji banku. Termin w kalendarzu blokuj na czas otwartej płatności i potwierdzaj rezerwację dopiero po powiadomieniu od operatora.

Czy Booksy przekazuje dane o wizytach do urzędu skarbowego?

Tak, w zakresie przepisów wdrażających dyrektywę DAC7, które obowiązują w Polsce od 1 lipca 2024 r. Według centrum pomocy Booksy raport dla Krajowej Administracji Skarbowej obejmuje tylko rezerwacje opłacone przez klientów w Booksy oraz rezerwacje rozliczone dodatkiem Booksy Fiskalizacja, czyli przychody, które i tak wykazujesz. Ministerstwo Finansów zaznacza, że DAC7 nie wprowadza nowych podatków.

Czy mogę dodać własną stronę zapisów do Profilu Firmy w Google?

Tak. W Profilu Firmy w Google w sekcji Rezerwacje wybierasz dostawcę z funkcji Zarezerwuj z Google albo dodajesz własny link do strony rezerwacji. Google zaznacza, że dostawca może naliczać opłaty za rezerwacje przez Google, a dla linku niestandardowego nie pokazuje danych o skuteczności. Własny link prowadzi klienta prosto na Twoją domenę.

Czy Versum i Moment.pl jeszcze działają?

Sprzedaż systemu Versum zakończyła się 31 stycznia 2022 r., choć dotychczasowi klienci mogą z niego dalej korzystać. Producent kieruje nowych klientów do Booksy, a adres Moment.pl przekierowuje na stronę Booksy, więc zestawienia polecające Versum jako nowe wdrożenie są nieaktualne.

Źródła

Liczby i terminy w tym przewodniku sprawdziłem w oficjalnych źródłach. Ceny i przepisy się zmieniają, więc przy decyzji warto zajrzeć do nich ponownie.

Masz pytanie do swojego projektu?

Opisz, co chcesz osiągnąć. Odpowiem konkretnie, także wtedy, gdy najlepszą odpowiedzią jest „nie rób tego”.

Jonasz Jankowski · Bezpośrednia współpraca · Mikołów (Śląsk), zdalnie w całej Polsce

CO DALEJ PO WYSŁANIU
  1. Odpowiadam osobiście w ciągu jednego dnia roboczego.
  2. Krótka rozmowa o celu, funkcjach, materiałach i integracjach.
  3. Dostajesz zakres z etapami i konkretną kwotę, zanim cokolwiek zaczniemy.

Pola oznaczone jako opcjonalne możesz pominąć. Odpowiadam na każdą wiadomość.

Minimum 20 znaków. Wystarczy zalążek pomysłu.0/5000

Na podany e-mail otrzymasz potwierdzenie z numerem zapytania. Odpowiadam w ciągu jednego dnia roboczego. Dalszą rozmowę możemy prowadzić w tym samym wątku.