Skip to content

Fase 1a: Platformkern

Doel: de gedeelde basis die alle diensten nodig hebben — onboarding, hondprofielen, facturatie, Sentoo, email en admin basisbeheer.

Afbakening: alleen wat nodig is om 1 dienst (trainingen) te laten draaien. Geen configuratieschermen, geen automatiseringen, geen edge cases.

Na deze fase: klanten registreren zichzelf, beheren hun honden, en de basis voor facturatie en betaling staat klaar.

Sentoo: merchant account moet aangevraagd zijn voor deze fase.


10 stories

De eerste ervaring van een nieuwe klant. Een 3-stappen wizard (gegevens → hond → voorwaarden) die verplicht is bij eerste login. Klanten vullen hun profiel, hondgegevens, vaccinaties en voeding in, en accepteren de algemene voorwaarden. Pas daarna krijgen ze toegang tot het portaal.

#RolUser StoryAC
1a.1.1klantBij eerste login een 3-stappen onboarding doorlopen (gegevens, hond, voorwaarden)Verplicht; onboarding_completed = true na afronding
1a.1.2klantPersoonlijke gegevens invullen: naam, telefoon, WhatsApp, adres, stad, noodcontactAlle verplichte velden gevalideerd
1a.1.3klantHond toevoegen met basisgegevens (naam, ras, geboortedatum, geslacht, gesteriliseerd, gewicht, kleur, chipnummer, paspoort, foto)
1a.1.4klantDierenarts van mijn hond opgeven (naam, kliniek, telefoon)
1a.1.5klantVoedingsschema opgeven (merk, hoeveelheid, tijden, bijzonderheden)
1a.1.6klantMedische informatie opgeven (aandoeningen, medicijnen, allergieen, verzekerd j/n)
1a.1.7klantGedrag van mijn hond beschrijven in een vrij tekstveldTekstveld behavior_notes; 18 persoonlijkheidskenmerken checkboxes komen in Fase 2
1a.1.8klantVaccinaties uploaden per vaccin (DHLPP, Bordetella, Rabies) met datum, vervaldatum en documentverified_by_admin default false
1a.1.9klantAlgemene voorwaarden lezen en digitaal accepteren (checkbox + timestamp)Scrollbare tekst; terms_accepted_at opgeslagen
1a.1.10klantNa de onboarding nog een hond toevoegen via /dogs/new

4 stories

Het beheer van hondprofielen na de onboarding. Klanten zien een overzicht van al hun honden met vaccinatiestatus (geldig / bijna verlopen / verlopen), kunnen profielen bewerken en nieuwe vaccinatiebewijzen uploaden.

#RolUser Story
1a.2.1klantOverzicht van al mijn honden (foto, naam, ras, vaccinatiestatus: geldig / bijna verlopen / verlopen)
1a.2.2klantProfiel van mijn hond bewerken
1a.2.3klantNieuw vaccinatiebewijs uploaden met datum en vervaldatum
1a.2.4klantPer vaccin de status zien met vervaldatum

2 stories

De landingspagina voor ingelogde klanten. Toont de 3 eerstvolgende boekingen en openstaande facturen, met snelkoppelingen naar de belangrijkste acties. Bewust eenvoudig gehouden — details staan op de specifieke pagina’s.

#RolUser Story
1a.3.1klantOp mijn dashboard aankomende boekingen (max 3) en openstaande facturen zien
1a.3.2klantSnelkoppelingen naar “nieuwe boeking” en “facturen betalen”

8 stories

Het complete facturatiesysteem. Facturen worden automatisch aangemaakt met uniek nummer (jaarXXXXXX), Arubaanse belasting (BBO 6% + BAZV 1.5% inbegrepen), factuurregels per hond per dienst, en bankgegevens van DHA. Klanten en admins hebben elk hun eigen factuuroverzicht. Prijzen worden gesnapshot op moment van boeking.

#RolUser StoryAC
1a.4.1systeemFacturen aanmaken met auto-increment factuurnummer (format: jaarXXXXXX)
1a.4.2systeemBBO (6%) en BAZV (1.5%) inbegrepen in het totaalbedrag berekenen
1a.4.3systeemFactuurregels per hond per dienst genereren (invoice_items)
1a.4.4systeemBankgegevens van DHA op elke factuur tonen
1a.4.5klantFacturen overzien (filter: betaald / openstaand / verlopen)
1a.4.6adminAlle facturen overzien met filters en totaalbedragen per filter
1a.4.7adminFactuur-PDFs genereren (Forme PDF op CF Workers)
1a.4.8systeemPrijzen op moment van boeking vastleggen (snapshot) zodat klanten niet achteraf meer betalen

5 stories

De integratie met Sentoo voor online bankbetalingen op Aruba. Het systeem maakt een transactie aan, toont een betaallink + QR-code, en verwerkt de webhook bij succesvolle betaling. Admins kunnen ook handmatig betaald markeren voor cash/pin-betalingen aan de balie.

#RolUser StoryAC
1a.5.1systeemSentoo transactie aanmaken en betaallink + QR tonen aan de klantLink in portaal + email
1a.5.2klantVia de betaallink mijn bank kiezen en betalen
1a.5.3systeemBij Sentoo webhook de factuur automatisch als betaald markerenSignature verificatie; idempotent
1a.5.4adminFactuur handmatig als betaald markeren (cash/pin) met methode, tijdstip en medewerker
1a.5.5adminBetaaloverzicht zien (betaald / openstaand) met filters

5 stories

Transactionele emails via Resend + React Email. Klanten ontvangen een welkomstmail, boekingsbevestiging en betaalbevestiging. Admins krijgen een notificatie bij nieuwe boekingsaanvragen. Templates zijn meertalig (NL, EN) met variabelen.

#RolUser Story
1a.6.1klantBij registratie een welkomstmail ontvangen
1a.6.2klantBij boekingsbevestiging een mail met details en betaallink ontvangen
1a.6.3klantBij succesvolle betaling een bevestigingsmail ontvangen
1a.6.4adminNotificatie ontvangen bij nieuwe boekingsaanvragen
1a.6.5developerEmail templates in React Email met variabelen per taal (NL, EN)

5 stories

Het admin-overzicht van alle klanten en honden. Admins kunnen zoeken, klantprofielen inzien (inclusief honden, boekingen en facturen), hondprofielen bewerken, vaccinaties goedkeuren en bijzonderheden per hond vastleggen.

#RolUser Story
1a.7.1adminAlle klanten overzien (zoeken op naam, email, telefoon)
1a.7.2adminKlantprofiel inzien (gegevens, honden, boekingen, facturen)
1a.7.3adminAlle honden overzien en filteren op vaccinatiestatus
1a.7.4adminHondprofiel bewerken en vaccinaties beheren (toevoegen, goedkeuren)
1a.7.5adminBijzonderheden (special_notes) per hond vastleggen

3 stories

De basisinstellingen van het hotel: diensten beheren (naam, prijs, type, actief/inactief), contactgegevens voor facturen, en medewerkersbeheer met rollen (admin, medewerker, trainer). Bewust beperkt — geavanceerde configuratie (openingstijden, capaciteitslimieten) is hardcoded en komt later als Extra.

#RolUser Story
1a.8.1adminDiensten beheren (naam, prijs, type, actief/inactief)
1a.8.2adminContactgegevens van het hotel instellen (naam, logo, adres) voor facturen
1a.8.3adminMedewerkers beheren (toevoegen, rollen: admin/medewerker/trainer)

3 stories

Zelfbediening voor klanten: persoonlijke gegevens bewerken, wachtwoord wijzigen en taalvoorkeur instellen (NL/EN). Account verwijderen is bewust uitgesteld naar Extra vanwege de complexiteit (anonimisering + 5-jaar factuurretentie).

#RolUser Story
1a.9.1klantPersoonlijke gegevens bewerken
1a.9.2klantWachtwoord wijzigen
1a.9.3klantTaalvoorkeur instellen (NL/EN)