← All Case Studies
Last-Mile Logistics

Wee Drop

Scotland's Deliveroo alternative.

A community-focused delivery platform covering food, convenience items, and parcel delivery. Built end-to-end from the ground up: customer apps, driver apps, vendor dashboards, admin portal, and a full EPOS system. Complete rewrite from a no-code platform to production-native.

Visit Wee Drop
The Brief

Local businesses were losing 30% of every sale.

Deliveroo and UberEats take up to 30% commission on every order. For a local Glasgow restaurant making thin margins, that's the difference between surviving and closing. Wee Drop needed a delivery platform that put local businesses first: zero commission on the platform itself, just standard transaction fees.

The existing platform was built on a no-code tool that wrapped WebViews in native app shells. It was slow, locked into £135+/month pricing, and couldn't be customised beyond what the visual builder allowed. The brief: rebuild everything from scratch as a proper native platform.

The Challenge

Three delivery services, four user types, one platform.

This isn't a simple food ordering app. Wee Drop handles three distinct delivery types: restaurant food, convenience store items (with barcode scanning and expiry tracking), and peer-to-peer parcel courier. Each has different workflows, different fulfilment logic, and different pricing models.

On top of that, four completely different user types need their own interfaces: customers ordering, vendors managing their shop, drivers delivering, and admins overseeing the platform. All four need real-time updates. A customer watching their delivery on a map, a vendor seeing new orders appear instantly, a driver getting the next job pushed to them.

What We Built

Six apps. Native everywhere.

Customer App (iOS + Android)

True native app, not a WebView. Browse vendors, build cart, track delivery in real-time on a live map, in-app chat with driver. 40+ screens.

Driver App (iOS + Android)

Accept jobs, navigate to pickup, confirm collection, deliver with proof-of-delivery photo. Earnings tracking, availability scheduling, document uploads for onboarding.

Vendor Portal (Web)

Order management, product catalogue with bulk CSV upload, promotions (BOGOF, multi-buy, promo codes), stock management with batch tracking and expiry dates, analytics dashboard.

Admin Portal (Web)

Platform-wide operations: vendor/driver applications and approval, order oversight, user management, fee configuration, payout disbursement, and analytics.

Full EPOS System

11-page point-of-sale built into both admin and vendor portals. Till management, staff PIN login, loyalty points, refunds, invoicing, and reporting by product, category, staff, and hour.

Real-Time Tracking

Live order status and driver GPS streamed to customers. Push notifications for every state change. Handles spotty mobile connections gracefully with automatic reconnection.

Geospatial Driver Assignment

Scoring algorithm that finds the best available driver by geographic proximity and current workload. 60-second acceptance timeout with automatic reassignment.

27-State Order Machine

Full lifecycle from cart to delivery with complete audit trail. Cart, payment, vendor confirmation, preparation, ready, driver search, assigned, collected, delivered, completed. Plus cancellation paths for every actor.

Payments

Duplicate-safe payment processing that handles network retries without double-charging. Supports card, Apple Pay, and cash on delivery. Webhook-driven confirmation flow.

Engineering Decisions

Why we built it this way.

Real-time built for unreliable mobile connections

Delivery drivers are on spotty 4G in a moving van. A standard WebSocket approach doesn't handle reconnection, offline queueing, or mobile lifecycle events (backgrounding, memory pressure) well enough. We chose a real-time database layer with native SDKs that handle all of this automatically. The backend writes status updates and driver GPS; mobile clients subscribe and get instant updates without managing connection state.

Geospatial queries at the database level

Driver assignment needs to find available drivers within a radius of the vendor, accounting for Earth's curvature. We handle this at the database level with proper geospatial indexing rather than approximate math in application code. Combined with a scoring algorithm that factors in distance and current order load, it assigns the best driver every time.

Full server runtime, not edge functions

Edge functions are great for stateless APIs. But Wee Drop needs persistent connections for real-time updates, background timers for 60-second driver acceptance timeouts, and scheduled tasks. A full server runtime gives us all of that at £5-15/month with auto-scaling to 10,000+ concurrent users.

Single-vendor cart, by design

Multi-vendor carts create logistical nightmares: split deliveries, partial refunds, driver routing complexity. We enforce one vendor per cart at the API level. If a customer tries to add items from a different vendor, they get a clear prompt to switch. This keeps delivery simple: one driver, one pickup, one dropoff.

The Result

A full platform, rebuilt from scratch.

6
Apps built
27
Order states
40+
Screens (customer app)
£5-15
Monthly infra cost

Wee Drop went from a no-code WebView wrapper to a production-native platform with true iOS and Android apps, a full-featured backend, and web portals for vendors and admins. Infrastructure costs dropped from £135+/month to £5-15/month while supporting 10x the concurrent users. The platform is live at wee-drop.co.uk.

Got a similar problem?

Whether you're stuck on a no-code platform, need native mobile apps, or want to build a logistics system from scratch, we can help.

Next case study: CertifyClouds →