This particular project was a challenging one… one of our long term clients sends our freshly made meals to people all over the nation. However, as these products are perishable customers need to ensure they are in to collect their parcel and transfer their meals to the fridge/freezer. The box they come in keeps the meals chilled for up to 48 hours from sending them from the warehouse, so it's very important they are collected and stored pretty quickly!

Our client wanted to offer a variety of delivery options based on delivery time, what products they have bought and delivery day. They have set cooking schedule so we needed to present delivery dates based on what meals they have bought. This meant implementing cut off dates and managing a variety of scenarios.

The customer was also able to select an optional delivery time slot for an additional cost – which needed to be added to the total of the order.

To make things more complicated, some products had multiple delivery dates which needed to be paid for upfront. So not only were we looking at the product bought but we also had to consider the variant (duration) they opted for. If they selected a 4 week plan, they will have 4 deliveries over 4 weeks - meaning we needed to ensure they paid for all 4 delivery labels at the checkout.

Another tricky element to this project was that products had different deliveries days, for example product A are only delivered on Fridays, whereas Product B is delivered on Tuesday, Wednesday, Thursday, Friday & Saturday (Saturday also incurred an extra cost!).

The client also needed to ensure there was 24 hours between an order and a delivery date (as well as the non-delivery days) so we had to build in additional logic to ensure there was a cut off time for each day, for example a customer couldn’t select a next day delivery after 9am the previous day.

This delivery date picker has made our clients life so much easier as it means no longer manually adding, updating and removing a long list of deliveries dates each night. We also added an extra feature that allowed the client to specify certain dates they won’t be delivering on due to holidays.

Fhewwww - we enjoyed working on this one!