Booking Customization on Training Sessions based on WooCommerce Bookings

Challenge

Our client had a website which sells bookings for training sessions to customers. They have the booking feature implemented with WooCommerce Bookings accompanied by some other plugins. But the system was not flawless. They wanted to send automatic invoices for unpaid bookings from the website, wanted a new order status that lets the client send some reminders to pay and also solve some Google Calendar sync issues with mobile devices to better monitor unpaid bookings.

Our task mainly was to:

  • Send invoice after a booked session time is passed automatically
  • Implement new order status that allows us to send reminder mails where users can pay
  • Implement Google Calendar sync for unpaid bookings
  • Bulk booking feature for booking timeslots in advance for a certain period of time
  • Test the implementations as real life customers

Our Solution

The project had some insightful details and complex problems to solve.

Here’s how we solved the problem:

Automatic Invoice

When the session time for a booked timeslot is passed, client wanted to send automatic invoice messages to their users so that they don’t have to send it manually. For doing this automatically, we have created an internal file to run with a cronjob.

Custom Order Status

Client wanted a special order status to be separate from other statuses. This status is like a dummy status that does not do anything. They wanted this status to be set to unpaid users. When this status is set, he will be reminded through messages to pay his dues.

Google Calendar Sync

Client wanted to be notified through their Google Calendar about the new bookings so that they can see the bookings at a glance and prepare accordingly. We have used references to WC Bookings plugin’s ability to handle Google Calendar and applied tweaks to place events on the client’s calendar.

Bulk Booking

We have implemented a Bulk Booking feature on top of WC Bookings. It allowed for a user to book some events in fixed timeslots for years in advance. This is a feature which was available in the backend for admins, but we had to mimic the same feature on frontend.

Testing Bookings

Client insisted that we test the implementation with them. We lend a hand in testing the various complex booking situations that might occur. We found minor issues on the way and fixed them properly with code patches.

Putting it all together

At the end, we delivered an automated system that syncs to client’s Google Calendar, keeps track of unpaid bookings, and sends reminders when necessary. A system what client client wanted for many days.

Are You Interested?

We can get you hooked to a similar project!

Get an estimate
Scroll To Top