Fase 2: Testdag + Daycare
Fase 2 bouwt voort op de platformkern (Fase 1a) en trainingen (Fase 1b). Dit is de dagelijkse operatie: testdagen als gateway, daycare boekingen, check-in/out en capaciteitsbeheer. In totaal 24 user stories.
Openingstijden
Section titled “Openingstijden”Alle boekingen worden gevalideerd tegen het vaste weekrooster. Het systeem blokkeert boekingen buiten deze tijden.
| Dag | Brengen | Ophalen |
|---|---|---|
| Maandag | 7:00 - 10:00 | 16:00 - 18:30 |
| Dinsdag | 7:00 - 10:00 | 16:00 - 18:30 |
| Woensdag | 8:00 - 10:00 | gesloten |
| Donderdag | 7:00 - 10:00 | 16:00 - 18:30 |
| Vrijdag | 7:00 - 10:00 | 16:00 - 18:30 |
| Zaterdag | 8:00 - 10:00 | gesloten |
| Zondag | gesloten | gesloten |
Woensdag en zaterdag zijn “brengen-only” dagen voor boarding honden die al verblijven. Testdagen zijn alleen beschikbaar op ma, di, do, vr.
Klantflows
Section titled “Klantflows”Testdag boeken
Section titled “Testdag boeken”De testdag is verplicht voor elke nieuwe hond. Zonder goedgekeurde testdag kan de klant geen daycare, boarding of training boeken.
Route: /bookings/new
Stap 1: Dienst kiezen
De klant ziet de lijst met diensten. Bij honden waar trial_day_passed = false is alleen de optie “Testdag” zichtbaar. Alle andere diensten zijn geblokkeerd met een melding dat eerst een testdag vereist is.
Stap 2: Hond selecteren
Checkboxes per hond. Alleen honden zonder goedgekeurde testdag worden getoond. Het systeem controleert vaccinaties: verlopen vaccinaties blokkeren de boeking, bijna verlopen (binnen 30 dagen) toont een waarschuwing maar staat de boeking toe.
Stap 3: Datum kiezen
Kalender met beschikbaarheid. Alleen maandag, dinsdag, donderdag en vrijdag zijn kiesbaar. Grijze dagen zijn vol. Testdagen tellen mee in de daycare capaciteit (geboekte daycare + testdagen <= limiet).
Als alle beschikbare dagen vol zijn, krijgt de klant een melding dat er geen plek is.
Stap 4: Overzicht en bevestigen
Samenvatting met:
- Hond(en) en datum
- Prijs: 35 AWG eerste hond, 17,50 AWG per extra hond (50% korting)
- BBO (6%) en BAZV (1,5%) inbegrepen in het totaal
- Betaaloptie: Sentoo betaallink
Na bevestiging krijgt de boeking status pending. Er wordt een factuur aangemaakt met Sentoo betaallink. De klant ontvangt een bevestigingsmail met de betaallink.
Foutafhandeling:
- Hond heeft al een testdag gehad: testdag-optie wordt niet getoond
- Verlopen vaccinatie: boeking geblokkeerd, melding om vaccinaties bij te werken
- Datum buiten beschikbare dagen: niet selecteerbaar in de kalender
- Capaciteit vol: datum is grijs, niet kiesbaar
Na betaling: de boeking status blijft pending tot het hotel bevestigt. Na de fysieke testdag keurt de admin de hond goed of af.
Daycare drop-in boeken
Section titled “Daycare drop-in boeken”Beschikbaar voor honden met een goedgekeurde testdag.
Route: /bookings/new
Stap 1: Dienst kiezen
De klant kiest “Daycare Drop-in” uit de dienstenlijst.
Stap 2: Hond selecteren
Checkboxes per hond. Alleen honden met trial_day_passed = true worden getoond voor daycare. Het systeem voert een vaccinatiecheck uit:
- Verlopen vaccinatie: boeking geblokkeerd
- Bijna verlopen (binnen 30 dagen): waarschuwing, boeking nog mogelijk
Stap 3: Datum kiezen
Kalender met beschikbaarheid. Het systeem controleert capaciteit: daycare_geboekt + testdagen <= daycare_limiet. Bij een volle dag toont het systeem beschikbare alternatieve data in dezelfde week. De klant kan een alternatieve datum kiezen of de boeking afbreken.
Stap 4: Bijzondere instructies
Optioneel vrij tekstveld per hond voor speciale wensen of aandachtspunten.
Stap 5: Overzicht en bevestigen
Samenvatting met:
- Hond(en), datum, dienst
- Prijs: 35 AWG per hond per dag (geen korting op daycare)
- BBO en BAZV inbegrepen
- Betaaloptie: Sentoo betaallink
Na bevestiging: status pending, factuur met Sentoo link, bevestigingsmail.
Foutafhandeling:
- Geen goedgekeurde testdag: daycare is niet zichtbaar als dienst
- Capaciteit vol: alternatieve data worden getoond
- Alle data vol: melding dat er deze week geen plek is
Hondprofiel uitbreiden
Section titled “Hondprofiel uitbreiden”In Fase 2 wordt het hondprofiel uitgebreid met extra velden die bij onboarding (Fase 1a) nog niet bestonden.
Route: /dogs/[id]/edit
De klant kan nu de volgende extra gegevens invullen:
18 gedragskenmerken (checkboxes) Een reeks persoonlijkheidskenmerken die het hotel helpen om de hond goed in te delen. Dit zijn checkboxes naast het bestaande vrije tekstveld voor gedragsnotities.
Dierenarts toestemming Toestemming om een dierenarts in te schakelen bij nood (ja/nee). Optioneel een maximaal bedrag.
Vlooienbehandeling datum Datum van de laatste vlooien- en wormbehandeling. Het systeem controleert of deze binnen 30 dagen voor check-in valt.
Bezoekhistorie hond
Section titled “Bezoekhistorie hond”Route: /dogs/[id]
Op het hondprofiel ziet de klant nu een sectie “Bezoekhistorie” met de laatste boekingen. Per boeking: datum, dienst, status. Dit geeft de klant overzicht over hoe vaak de hond bij het hotel is geweest.
Boeking annuleren (klant)
Section titled “Boeking annuleren (klant)”Route: /bookings/[id]
De klant kan een boeking annuleren als de status pending of confirmed is. Bij status checked_in of checked_out is annulering niet meer mogelijk.
Wat de klant ziet:
- Boekingsdetails (hond, dienst, datum, bedrag)
- Knop “Annuleren” (alleen bij
pendingofconfirmed) - Bevestigingsdialoog met waarschuwing
Wat er gebeurt bij annulering:
- Systeem controleert of de deposit al betaald is
- Als de deposit betaald is: annulering bevestigd, deposit is niet-restitueerbaar
- Factuurstatus wordt
cancelled - Notificatie naar klant en admin
- Capaciteit komt vrij voor andere klanten
Foutafhandeling:
- Status is
checked_in: annuleerknop niet zichtbaar - Dubbele annulering: niet mogelijk, status is al
cancelled
Adminflows
Section titled “Adminflows”Testdag goedkeuren of afkeuren
Section titled “Testdag goedkeuren of afkeuren”Route: /admin/bookings/[id]
Na de fysieke testdag opent de admin de boekingsdetails. Hier kan de admin:
- De hond goedkeuren:
trial_day_passed = truewordt ingesteld. Daarnaast stelt de admingroup_play_approvedin (ja/nee) om aan te geven of de hond geschikt is voor groepsspel. - De hond afkeuren:
trial_day_passedblijftfalse. De hond kan geen andere diensten boeken.
Na goedkeuring ontvangt de klant een notificatie dat de hond is goedgekeurd en dat andere diensten nu beschikbaar zijn. Bij afkeuring ontvangt de klant een notificatie met de reden.
Check-in met checklist
Section titled “Check-in met checklist”Route: /admin/bookings/[id]
De admin opent de boeking en klikt op “Check-in”. Het systeem toont een 9-punten checklist die allemaal afgevinkt moeten worden:
- Vaccinaties up-to-date (min. 7 dagen voor check-in, max 12 maanden oud)
- Vlooien/wormbehandeling binnen 30 dagen
- Hond is schoon, geen teken/vlooien zichtbaar
- Niet zwanger of loops
- Geen tekenen van ziekte of agressie
- Hond aan vaste riem (geen flexilijn)
- Medicatie in originele verpakking met etiket (indien van toepassing)
- Voedsel in ziploc zakjes gelabeld AM/PM met naam hond
- Vaccinatieboekje aanwezig
Onder de checklist toont het systeem de bijzonderheden (special_notes) en gedragsnotities van de hond, zodat de medewerker weet waar hij op moet letten.
Na het afvinken van alle punten en bevestigen:
- Tijdstip wordt vastgelegd
- Status wijzigt naar
checked_in - Automatische notificatie naar de klant
Foutafhandeling:
- Niet alle checklistpunten afgevinkt: check-in knop blijft inactief
- Boeking is niet
confirmed: check-in knop niet beschikbaar
Check-out
Section titled “Check-out”Route: /admin/bookings/[id]
De admin klikt op “Check-out” bij een boeking met status checked_in.
Wat er gebeurt:
- Tijdstip wordt vastgelegd
- Status wijzigt naar
checked_out - Automatische notificatie naar de klant
Boeking annuleren namens hotel
Section titled “Boeking annuleren namens hotel”Route: /admin/bookings/[id]
De admin kan een boeking annuleren ongeacht de betaalstatus. Dit is voor situaties waar het hotel de boeking niet kan nakomen.
Verplichte velden:
- Reden voor annulering (tekstveld, verplicht)
Wat er gebeurt:
- Status wijzigt naar
cancelled - Bij een betaalde boeking: volledige terugbetaling
- Notificatie naar de klant met de opgegeven reden
- Notificatie naar de admin ter bevestiging
Het verschil met klant-annulering: het hotel geeft altijd volledige terugbetaling, ook na betaling.
Dashboard “Vandaag”
Section titled “Dashboard “Vandaag””Route: /admin
De “Vandaag” sectie op het admin dashboard toont vier blokken:
Check-ins verwacht Lijst met honden die vandaag worden gebracht. Per regel: naam hond, naam eigenaar.
Check-outs verwacht Lijst met honden die vandaag worden opgehaald. Per regel: naam hond, naam eigenaar.
Aanwezige honden
Alle honden die op dit moment in het hotel zijn (status checked_in).
Daycare capaciteit Indicator die toont hoeveel plekken bezet zijn versus de limiet. Bijvoorbeeld: “28/40 honden”.
Kalender- en lijstweergave boekingen
Section titled “Kalender- en lijstweergave boekingen”Route: /admin/bookings
Twee weergaven:
Kalenderweergave (standaard) Per dag welke honden aanwezig zijn, met kleurcodering per dienst (testdag, daycare, boarding, training).
Lijstweergave Tabel met alle boekingen. Filters beschikbaar op:
- Status (pending, confirmed, checked_in, checked_out, cancelled)
- Datum (van/tot)
- Dienst (testdag, daycare, boarding, training)
Per boeking: hond, eigenaar, dienst, datum, status, bedrag.
Klant aanmaken namens klant
Section titled “Klant aanmaken namens klant”Route: /admin/clients/new
Voor telefonische aanmeldingen. De admin vult hetzelfde formulier in als bij klantregistratie:
- Persoonlijke gegevens (naam, telefoon, WhatsApp, adres, noodcontact)
- Optie om direct een hond toe te voegen
Na opslaan bestaat het klantaccount en kan de admin er boekingen aan koppelen.
Boeking aanmaken namens klant
Section titled “Boeking aanmaken namens klant”Route: /admin/bookings/new
De admin maakt een boeking aan voor een bestaande klant:
- Klant selecteren (zoeken op naam/email) of direct een nieuwe klant aanmaken
- Dienst kiezen (testdag, daycare, etc.)
- Hond(en) selecteren met vaccinatiecheck
- Datum kiezen met capaciteitscheck
- Bijzondere instructies invullen
- Factuur direct aanmaken met Sentoo betaallink
Het systeem voert dezelfde validaties uit als bij een klantboeking: vaccinatiecheck, capaciteitscheck, openingstijdenvalidatie.
Interne notities per klant
Section titled “Interne notities per klant”Route: /admin/clients/[id]
De admin kan interne notities toevoegen aan een klantprofiel. Deze notities zijn alleen zichtbaar voor admin en medewerkers, niet voor de klant. Handig voor afspraken, bijzonderheden of communicatiegeschiedenis.
CSV export
Section titled “CSV export”Route: /admin/invoices
De admin kan facturen en klantgegevens exporteren als CSV-bestand. Dit is bedoeld voor de boekhouder. De export bevat alle factuurregels met bedragen, belastingen en betaalstatus.
Vaccinatie reminders
Section titled “Vaccinatie reminders”Automatisch (systeem)
30 dagen voor de vervaldatum van een vaccinatie stuurt het systeem een reminder-email naar de klant. De admin kan in het hondenoverzicht (/admin/dogs) filteren op honden met verlopen of bijna verlopen vaccinaties.
Betaalherinneringen
Section titled “Betaalherinneringen”Automatisch (systeem)
Het systeem stuurt automatische betaalherinneringen bij openstaande facturen:
- Dag 3 na factuurdatum: eerste herinnering per email
- Dag 7: tweede herinnering per email
- Dag 14: notificatie naar de admin voor handmatige opvolging
De admin ontvangt de dag-14 notificatie op het dashboard onder “Meldingen”.