Rezerwacje i umawianie wizyt: pełny przewodnik
Instalacja, konfiguracja i obsługa rezerwacji wizyt: usługi, pracownicy, zajęcia grupowe, wyjątkowe godziny, zaliczka, kalendarz w panelu, e-maile i przypomnienia.
Wprowadzenie
Moduł Rezerwacje i umawianie wizyt (dfbooking) dodaje rezerwację wizyt online do PrestaShop 8 i 9. Klient wybiera usługę, pracownika lub opcję „Pierwszy dostępny”, a potem dzień i godzinę. Dostępne godziny są wyliczane na bieżąco z grafików, czasu trwania usługi, przerwy i już zarezerwowanych wizyt.
Można wymagać zaliczki: jest opłacana przez natywne zamówienie PrestaShop, czyli metodami płatności już aktywnymi w sklepie. Zespół pracuje w kalendarzu w panelu administracyjnym, a klient sam zarządza wizytą przez prywatny link z e-maila.
Dokumentacja dotyczy wersji 1.2.0.
Język interfejsu. Panel modułu, strona rezerwacji i e-maile są dostępne po angielsku, francusku, hiszpańsku, niemiecku i włosku. W sklepie po polsku wyświetlają się po angielsku, dlatego w tej dokumentacji nazwy menu i pól podajemy w wersji angielskiej. Teksty, które wpisujesz sam (nazwy i opisy usług, pracownicy, warunki rezerwacji), są wielojęzyczne i możesz je podać po polsku.
Podstawowe pojęcia
- Usługa (Service): to, co rezerwuje klient (strzyżenie, konsultacja, warsztat). Ma czas trwania, przerwę, cenę za osobę, liczbę miejsc na termin i opcjonalnie zaliczkę, kategorię (Group) i zdjęcie.
- Pracownik lub zasób (Staff): osoba, kabina lub urządzenie wykonujące usługę. Każdy ma grafik tygodniowy i opcjonalnie zdjęcie oraz adres e-mail.
- Termin: godzina dostępna do rezerwacji, wyliczana z grafiku i odstępu między terminami.
- Statusy: Awaiting payment, Awaiting confirmation, Confirmed, Cancelled, Completed, No-show.
Instalacja i aktualizacja
- Otwórz Moduły > Menedżer modułów i kliknij Załaduj moduł.
- Upuść archiwum
dfbooking.zip, a następnie kliknij Konfiguruj.
Instalacja tworzy tabele, menu Bookings (Calendar, Bookings, Services, Staff and resources), ukryty produkt techniczny „Booking deposit” oraz folder img/dfbooking/ na zdjęcia.
Aby zaktualizować starszą wersję, zainstaluj nowe archiwum ZIP na istniejącej: skrypty aktualizacji dodają nowe kolumny i tabele, generują prywatne linki istniejących rezerwacji i dodają zakładkę Calendar. Rezerwacje, usługi i grafiki pozostają bez zmian.
Nie usuwaj produktu „Booking deposit”: przenosi kwotę zaliczki do koszyka. Jest niewidoczny w katalogu i usuwany automatycznie przy odinstalowaniu.
Szybki start
- Utwórz pracownika w Bookings > Staff and resources. Domyślnie proponowany jest grafik od poniedziałku do piątku, 9:00-12:00 i 14:00-18:00.
- Utwórz usługę w Bookings > Services i zaznacz pracowników, którzy ją wykonują.
- Dodaj link do strony rezerwacji (widoczny w konfiguracji) do menu lub strony CMS.
Dodaj ?service=ID do adresu strony rezerwacji, aby otworzyć od razu konkretną usługę, na przykład ze strony CMS, która ją opisuje.
Konfiguracja
Terminy (Time slots)
- Slot interval (domyślnie 30 min): odstęp między proponowanymi godzinami rozpoczęcia.
- Minimum notice (domyślnie 120 min): klient nie zarezerwuje terminu zaczynającego się wcześniej.
- Booking window (domyślnie 60 dni): jak daleko w przód można rezerwować.
- Confirm bookings automatically: po wyłączeniu rezerwacje bez zaliczki trafiają do statusu „Awaiting confirmation”.
Formularz klienta (Customer form)
- Require a customer account i Phone number required.
- Consent checkbox: wybierz stronę CMS (polityka prywatności, regulamin); przed potwierdzeniem pojawi się obowiązkowe pole zgody.
- Booking conditions: krótki tekst dla każdego języka, wyświetlany przed potwierdzeniem i na stronie wizyty (odwołanie, zwrot zaliczki, spóźnienia).
Zaliczka, odwołanie i zmiany
- Hold an unpaid slot for (domyślnie 30 min): po tym czasie bez zamówienia termin jest zwalniany.
- Customers can cancel online i Customers can move their appointment online, włączane osobno.
- Online changes allowed until X godzin przed wizytą (domyślnie 24).
Powiadomienia i przypomnienia
- Staff notification email: otrzymuje każdą nową rezerwację, odwołanie i zmianę (puste = e-mail sklepu).
- Also notify the assigned staff member: kopia na e-mail podany przy pracowniku.
- Reminder email X godzin wcześniej (domyślnie 24, 0 wyłącza).
- Attach a calendar file (.ics) to emails przy potwierdzeniu, zmianie i odwołaniu.
- Mark past appointments as completed, automatycznie.
Strona rezerwacji
- Accent colour: przyciski, wybrany dzień i godzina. Wybierz kolor czytelny na białym tle.
- Page URL: domyślnie
/reservation, można zmienić (np./rezerwacja).
Usługi
W Bookings > Services każda usługa ma:
- Nazwę, kategorię (Group) i opis w każdym języku. Usługi z tej samej kategorii są wyświetlane razem, z filtrami od dwóch kategorii.
- Zdjęcie (JPG, PNG lub WebP, maks. 5 MB), wyświetlane jako miniatura.
- Czas trwania i przerwę między wizytami (sprzątanie, przygotowanie).
- Liczbę miejsc na termin (Places per slot): 1 dla wizyty indywidualnej, więcej dla zajęć grupowych.
- Cenę za osobę (0 ukrywa cenę) i zaliczkę: brak, procent ceny lub stała kwota za osobę.
- Kolor w kalendarzu oraz pracowników wykonujących usługę.
Usługa jest dostępna online tylko wtedy, gdy przypisano do niej co najmniej jednego aktywnego pracownika.
Powyżej sześciu usług nad listą na stronie rezerwacji pojawia się wyszukiwarka.
Pracownicy i grafiki
W Bookings > Staff and resources podaj nazwę, funkcję, opis, zdjęcie (wyświetlane w kole), kolor i opcjonalnie e-mail do powiadomień.
Grafik tygodniowy
Dla każdego dnia wpisz do trzech przedziałów godzin. Dwa przedziały pozwalają ustawić przerwę obiadową. Dzień bez przedziałów jest wolny. Przycisk Copy to weekdays kopiuje godziny z poniedziałku na wtorek-piątek, a Clear czyści dzień.
Kalendarz pracownika w telefonie
Po zapisaniu pracownika jego profil pokazuje prywatny link do kalendarza. W Google Calendar (Inne kalendarze > Z adresu URL) lub na iPhonie (Ustawienia > Kalendarz > Konta > Dodaj subskrybowany kalendarz) jego wizyty pojawiają się i aktualizują automatycznie. Link dla całego zespołu znajduje się w konfiguracji.
Link pokazuje imiona i numery telefonów klientów. Udostępniaj go wyłącznie danej osobie.
Zajęcia grupowe
Przy więcej niż jednym miejscu na termin klient wybiera liczbę uczestników i widzi wolne miejsca pod każdą godziną. Kilka rezerwacji może mieć tę samą godzinę rozpoczęcia aż do wyczerpania miejsc; cena i zaliczka są mnożone przez liczbę uczestników.
Zamknięcia i wyjątkowe godziny otwarcia
- Closures and days off: okres bez terminów, dla całego sklepu lub pracownika. Jeśli w tym okresie są już wizyty, pojawi się ostrzeżenie: nie są one odwoływane automatycznie.
- Exceptional opening hours: specjalne godziny dla jednej daty (otwarcie wieczorne, niedziela przed Świętami, krótszy dzień), z opcjonalnym drugim przedziałem. Zastępują zwykły tydzień tylko tego dnia.
Kolejność pierwszeństwa dla danej daty: zamknięcie zawsze wygrywa; potem wyjątkowe godziny pracownika, potem całego sklepu; w pozostałych przypadkach zwykły grafik.
Zaliczka
- Rezerwacja powstaje ze statusem „Awaiting payment”, a termin zostaje zablokowany.
- Moduł przygotowuje koszyk zawierający wyłącznie zaliczkę i kieruje klienta do procesu zamówienia. Dotychczasowy koszyk klienta jest odkładany.
- Płatność natychmiastowa (karta, PayPal): rezerwacja otrzymuje status Confirmed i wychodzą e-maile.
- Płatność odroczona (przelew): termin pozostaje zablokowany, a rezerwacja potwierdza się, gdy nadasz zamówieniu status opłaconego.
- Zamówienie anulowane lub błędne: wizyta zostaje odwołana, a klient powiadomiony.
- Porzucona płatność: termin jest zwalniany po ustawionym czasie.
Po zamówieniu pierwotny koszyk klienta jest przywracany, a strona potwierdzenia zamówienia pokazuje wizytę z linkiem do zarządzania nią.
Proces rezerwacji klienta
- Usługa: lista pogrupowana według kategorii, z filtrami i wyszukiwarką.
- Pracownik: konkretna osoba lub „Pierwszy dostępny”. Krok jest pomijany, gdy usługę wykonuje tylko jeden pracownik.
- Dzień i godzina: kalendarz otwiera się na najbliższym wolnym terminie; godziny są pogrupowane na rano, popołudnie i wieczór.
- Dane kontaktowe, warunki i zgoda, a następnie potwierdzenie.
Zarządzanie wizytą przez klienta
Po rezerwacji klient trafia na stronę swojej wizyty: podsumowanie, dodanie do Google Calendar i plik .ics dla Apple Calendar i Outlooka. Zależnie od ustawień może też przesunąć wizytę na inny wolny termin albo ją odwołać. Strona jest dostępna z linku w każdym e-mailu, także dla klientów bez konta. Zalogowani klienci widzą swoje wizyty także w swoim koncie.
Kalendarz w panelu
Bookings > Calendar pokazuje widok tygodnia (z filtrem pracownika) oraz widok dnia z kolumną na każdego pracownika. Pasek koloru oznacza usługę, obramowanie status. Dni zamknięte są zakreskowane, a czerwona linia wskazuje aktualną godzinę.
- Kliknięcie wolnej godziny tworzy wizytę z wypełnionym dniem, godziną i pracownikiem.
- Przeciągnięcie wizyty przenosi ją z zachowaniem czasu trwania; w widoku dnia upuszczenie w innej kolumnie zmienia pracownika. Okno potwierdzenia proponuje e-mail do klienta. Jeśli termin jest zajęty, kalendarz pyta przed wymuszeniem.
- Kliknięcie wizyty otwiera jej szczegóły.
Rezerwacje w panelu
Bookings > Bookings zawiera listę wizyt z filtrami i eksportem CSV. Przycisk New booking tworzy wizytę umówioną telefonicznie; godzina zakończenia wynika z czasu trwania usługi. Wizyta nakładająca się na inną jest odrzucana, chyba że włączysz Save even if the time is taken.
Szczegóły rezerwacji zawierają wizytę, klienta, płatność z linkiem do zamówienia, wiadomość klienta i notatkę wewnętrzną. Szybkie akcje: Confirm, Mark as completed, No-show, Cancel booking, Restore, Resend the email. Zmiana statusu wysyła klientowi odpowiedni e-mail. Zamówienie z zaliczką pokazuje blok z powiązaną wizytą.
E-maile
Sześć szablonów (po angielsku, francusku, hiszpańsku, niemiecku i włosku; w sklepie po polsku wysyłane po angielsku): potwierdzenie z plikiem .ics, otrzymanie prośby, przypomnienie, odwołanie, zmiana terminu oraz powiadomienie zespołu. Każdy e-mail do klienta zawiera prywatny link do zarządzania wizytą.
Zadania automatyczne
W tle działają trzy zadania: wysyłka przypomnień, zwalnianie terminów z nieopłaconą zaliczką oraz oznaczanie minionych wizyt jako zakończonych. Konfiguracja pokazuje adres cron chroniony tokenem; wywołuj go co 15 minut z crona serwera. Bez crona zadania uruchamiają się podczas wizyt w sklepie, najczęściej co 10 minut. Przycisk Run the tasks now uruchamia je od razu.
Statystyki i RODO
Przegląd konfiguracji pokazuje nadchodzące wizyty oraz dla bieżącego miesiąca: liczbę wizyt, zarezerwowany przychód, udział rezerwacji online, odsetek odwołań i nieobecności.
Z oficjalnym modułem psgdpr eksport danych klienta obejmuje jego rezerwacje, a usunięcie danych anonimizuje rezerwacje (imię, e-mail, telefon, wiadomość) bez zniekształcania statystyk.
Rozwiązywanie problemów
Nie wyświetla się żadna godzina
Sprawdź, czy pracownik ma grafik na ten dzień, czy usługa jest do niego przypisana, czy dzień nie jest zamknięty, oraz porównaj minimalne wyprzedzenie i czas trwania usługi z przedziałami godzin.
Przypomnienia nie są wysyłane
Sprawdź, czy przypomnienie nie jest ustawione na 0 i czy rezerwacja ma status „Confirmed”. W sklepie z małym ruchem skonfiguruj adres cron.
Zdjęcie nie zostaje zapisane
Folder img/dfbooking/ musi mieć prawa zapisu. Sprawdź też rozmiar (maks. 5 MB) i format.
Adres strony rezerwacji zwraca błąd 404
Włącz przyjazne adresy URL w Preferencje > Ruch i SEO i wyczyść pamięć podręczną.