Livewire

Calendar Booking - Stripe & Timezones

Hi Alex,

I've recreated a calendar booking system based on your course but created a separate livewire calendar component for day selection, which does the same thing as EasPick.

There are two things I wish to do now:

  1. Stripe - I was looking to do this with Livewire and using the Cashier Guest method so the user doesn't need to be logged in.

How would you approach this? What would happen with the webhook? This is a separate package so would we need to override the middleware to add the crf stuff?

  1. Timezones - I've created a user schedules table so they can have multiple schedules defined and an event (or service) can have a schedule set for that particular event. I have initially set up a 'host' (employee) table and added a timezone column but I'm thinking I should add that to the schedule instead. If I'm living between Scotland and Australia I can define each schedule to an event or service and then activate each depending on where I am.

How would you approach this and how would this integrate with the current set-up?

I'm pretty sure Calendly, for example, keeps the host's timezone and schedule the same but shows the person booking the appointment and the host time in their timezone, which is likely what I'm after.

Are these functionalities you can help integrate into the current course?

Thanks

Derek

derekbuntin Member
derekbuntin
1
1
106
alex Member
alex
Moderator

Hey @derekbuntin

Without looking at what you've built it's pretty difficult to make any accurate suggestions but let's start with payments.

For payments, you could make use of the Cashier guest method. I personally wouldn't even bother installing Cashier for this kind of thing, as it's pretty easy to do just with the Stripe SDK, and you'll be pulling in a bunch of other stuff you won't need.

For the webhook, I'd generate and send across a unique token with the Stripe checkout. You can do this under the metdata property. The webhook related to that payment would then contain the token within the payload under metdata, and you'll be able to look up the booking from there, match it up, and mark it as paid (or whatever other actions you need).

Let me know if that makes sense — we'll figure this out and then chat about timezones (more difficult 😥)