Automatische betaalbevestiging
Bijgewerkt op 2026-04-22
Zodra een gast z'n voorschot of volledige betaling doet via Stripe of Bancontact, zetten we automatisch de hele flow in gang.
Wat gebeurt er wanneer een betaling binnenkomt?
- Webhook (van Stripe of Bancontact) komt binnen bij
/webhooks/stripe-paymentof/webhooks/bancontact - BedFlow update de factuur:
financial.paid+= bedragfinancial.balance= totaal - betaaldfinancial_statewordt'partial'(voorschot) of'paid'(volledig)- Individueel payment record wordt toegevoegd aan
payments[]
- De boeking gaat van
pendingnaarconfirmed+deposit_paid = true - Email vertrekt naar de gast β welke email hangt af van de situatie:
- Eerste betaling (voorschot of in één keer full) β "Betaling ontvangen" (template
booking-confirmed) - Restbedrag na eerder voorschot β "Volledig betaald" (template
booking-fully-paid)
- Eerste betaling (voorschot of in één keer full) β "Betaling ontvangen" (template
- Telegram notificatie naar jou op je telefoon:
- π³ "Betaling ontvangen" (bij voorschot) of β "Volledig betaald"
- Met gastnaam, bedrag, resterend saldo, aankomstdatum, referentie
- WhatsApp naar de gast (alleen bij eerste betaling β bij final betaling volstaat de email)
- Gastportaal URL wordt gegenereerd en opgeslagen op de boeking β de gast kan z'n portaal openen vanuit de email
Voorbeeldflow: Jan Jansen boekt 3 nachten
| Moment | Jan ziet | Jij ziet | |---|---|---| | Boekt via widget | "Bedankt β check je mail voor betaallink" | Telegram π« "Nieuwe boeking" | | Opent mail, klikt Stripe | Stripe checkout, betaalt β¬96 voorschot | β | | Stripe webhook | "Betaling ontvangen β resterend β¬231 bij aankomst" | Telegram π³ "β¬96 ontvangen van Jan" | | 2 dagen later betaalt rest | "Volledig betaald! Tot snel." | Telegram β "Volledig betaald door Jan" |
Waar zit dit gebouwd?
app/Http/Controllers/PaymentController.php::handleBookingPaymentConfirmed()is het hartapp/Services/EmailAutomationService::processEvent()kiest de juiste templateapp/Services/TelegramNotificationService::info('payment_received', ...)stuurt de admin push