/// Case study · Doorstep Glass Recycling

Doorstep Glass Recycling: subscriptions, routes and a driver app in one platform.

A doorstep glass collection service, rebuilt from WooCommerce into a Laravel platform that signs customers up, bills them, plans the rounds and runs the van.

  • Subscriptions
  • Stripe
  • Route planning
  • Driver app
The Doorstep Glass Recycling home page
doorstepglassrecycling.co.uk, live on the new platform since 7 October 2026.

The business

Doorstep Glass Recycling collects glass from customers' doorsteps across central and eastern Scotland. Customers get a 45 litre box and a collection every four weeks, paid for by subscription. The service had been running on WordPress and WooCommerce, with the rounds planned through a separate route-optimisation service.

What we built

A single Laravel 13 platform, on PHP 8.4 and MySQL, that runs the business end to end: from a visitor typing their postcode to a driver marking a box as collected. It went live on 7 October 2026, and the first rounds ran the next day.

Coverage: does it come to my street?

The old site checked postcodes against a single text string more than half a million characters long. We replaced it with an indexed table of 49,373 postcode units. The coverage checker answers covered, nearby or waitlist. Out-of-area checks are saved by district and ranked, so the business can see where to expand next. Since October a nightly rule adds postcodes within a mile of an existing round automatically.

Sign-up and billing

Sign-up uses Stripe's hosted Checkout in subscription mode, so Apple Pay and Google Pay come free, strong customer authentication is handled, and no card detail touches the server. Nothing is written to the database until Stripe confirms the money moved.

Existing customers were moved from WooCommerce to native Stripe Billing subscriptions with the cards they had already saved. Each first charge was dated to the day the old system would have billed them. Nobody had to re-enter a card.

Routes, planned in-house

We replaced the third-party route optimiser with route planning inside the platform, running on a self-hosted road-routing server. Rounds sit on a fixed four-weekly cycle and each round's stop list is built automatically overnight. The optimiser uses real road distances, and because the van starts and finishes at different depots, routes are scored as an open path rather than a loop.

Measured against the old service's own orderings over 88 historical runs, the new routes came out 5.5% shorter in miles and 4.0% shorter in driving time. When a stop is added on the day, the route is re-ordered, but a stop that has already been collected or missed is never moved.

The driver app

  • Every missed stop records a real reason, and a miss that was the company's fault goes to a red screen first.
  • Drivers can add a photo, a note and their arrival time.
  • It works offline, queuing actions on the phone until the signal comes back.
  • A van whose MOT, tax or insurance has expired cannot start a round, and there is a daily walkaround check.

Behind it, operations screens show performance against plan, costs, stock and vehicles.

Customers

Customers have an account they can install on their phone, and a no-login page that answers the question they ask most: when is my glass collected? The evening before a collection, each customer gets one reminder, by push notification, text or email, in that order of preference.

Running a service on spreadsheets?

Send a few lines about what you are making. A real person replies, usually the same working day.