Skip to content
Happen Softwarewww.happen.software · sales@happen.software
All case studies

Case study · Logistics · Rescue & rebuild

A courier platform, rebuilt to run for years

1Fetch came to us after a first attempt at their platform didn't work out. We built it again on a solid foundation: pricing, payments, ordering, and accounts, joined to the dispatch platform, the accounting system, and the partners who send them work. It has run their deliveries since 2017, more than 380,000 of them.

  • Since 2017 · 9 years
  • 380,000+

    Deliveries completed on the platform since 2017

  • 51%

    Of orders now arrive through the business API or partner integrations, not typed in by hand

  • 99.9%+

    Of completed deliveries with an electronic proof of delivery

At a glance

Client
1Fetch
Orders in
Apps and website, a business API, spreadsheet import, and partner integrations
Engagement
Rebuild in 2017, then run and support ever since
Customers
Individuals paying by card or EFT, and business accounts on credit
Payments
PayGate cards with saved cards, Ozow instant EFT, and monthly accounts
Integrations
Driver dispatch, Pastel Evolution accounting, partner order systems, and webhooks
Visibility
A 15-panel dashboard, 8 reports, and scheduled delivery reports for businesses

Working with the Happen Software team has been an absolute pleasure. Our relationship started in 2017 where they were responsible for the entire overhaul of our 1Fetch app and systems. They delivered exactly what was agreed and to the exact time frames. Everything is delivered timeously and as agreed. It really is a stress-free process and they come highly recommended.

Jason Psillos1Fetch

01The situation

1Fetch is an on-demand courier company. Customers book deliveries in an app or on the web, businesses book through their own accounts and systems, and drivers are dispatched to collect and deliver.

They came to us after a first attempt at their platform didn't work out. We started again in April 2017, rebuilt the order process and account management, carried their existing customers across, and integrated the payment providers, the dispatch platform, and their accounting system. Since then we've connected partners whose orders 1Fetch now collects, delivers, and keeps up to date automatically, and the platform has stayed stable throughout.

  1. 01

    A first build that didn't work out

    The platform had to be rebuilt on a foundation that would hold up, without losing the customers 1Fetch already had.

  2. 02

    Payment before dispatch

    Cards, instant EFT, and business credit each needed to be confirmed before a driver was sent, with problems flagged quickly.

  3. 03

    Orders from other systems

    Partners hold the orders in their own systems, so 1Fetch needs to pull them in, deliver them, and report every step back.

02What changes

  • PricingWithout it: Prices worked out by hand for each job.With the platform: Quotes priced by zone and driving distance, with business rates, private rates, and coupons applied first.
  • PaymentWithout it: Payments chased after the delivery.With the platform: Card, instant EFT, or account credit confirmed before dispatch, with unpaid orders flagged every 15 minutes.
  • DispatchWithout it: Every job passed to drivers by hand.With the platform: Paid orders sent straight to the dispatch platform, and its driver updates drive the order status.
  • Partner ordersWithout it: Orders copied over from partners' systems.With the platform: Pulled in every hour or received over the API, priced, and dispatched automatically.
  • Keeping clients informedWithout it: Status updates sent by phone and email.With the platform: Emails at key steps, partner systems updated as the driver moves, and proof of delivery sent back.
  • AccountingWithout it: Invoices and payments captured again in accounting.With the platform: Invoices, discounts, and payments posted to the accounting system automatically.

03How it works

A delivery, end to end

  1. 1

    Quote

    The customer enters the stops. Each leg is priced by zone and the shortest driving distance, using the business's rates, the customer's own rates, or public rates, less any coupon.

  2. 2

    Pay

    They pay by saved card, instant EFT, or on account within a monthly limit. Instant EFT is checked against a signed callback and confirmed with the provider before it counts.

  3. 3

    Dispatch

    Once paid, the order goes to the dispatch platform, and the invoice and payment are queued for the accounting system.

  4. 4

    Track

    Driver updates are processed every 30 seconds and move the order from dispatched to en route. Customers and business contacts are emailed, and partners' systems are updated.

  5. 5

    Deliver

    When the driver finishes, the order is completed or marked return to sender, and a proof-of-delivery PDF is emailed to the customer and the business.

  6. 6

    Report

    Business accounts get delivery reports at the hours they choose, proof-of-delivery files by FTP overnight if they want them, and webhooks for their own systems.

04What we built

  • Zone & distance pricing

    Zones with exclusion areas, distance bands per rate, and the shortest driving route for each leg. Business, private, and public rates are tried in order, and a rate tester lets staff check a price.

  • Payments

    PayGate card payments with a saved card held as a token by the provider, Ozow instant EFT verified with the provider, and monthly account credit with limits per customer or business.

  • Rebuilt ordering

    One order process from quote to payment, dispatch, and completion, for app and web customers, business systems, and spreadsheet imports. Staff can step in to dispatch or complete an order.

  • Accounts for every customer

    Cash and account customers, business accounts with their own users, supervisors who see all of the business's orders, credit limits, branded proof of delivery, and coupons with usage rules.

  • Automatic dispatch

    Every paid order becomes a task on the driver dispatch platform. Its driver events are logged and processed in order, and orders it shows as done but 1Fetch doesn't are flagged every weekday.

  • Partner order integrations

    Orders are pulled from a partner's system every hour or pushed in by a courier partner, then priced and dispatched. Each step goes back to them, with a re-attempt and return to sender if delivery fails.

  • Accounting sync

    Invoices, discounts, and payments are queued on payment, sent to Pastel Evolution every 10 minutes, and posted automatically, with checks so nothing is sent twice.

  • Dashboard & reports

    A dashboard of 14 charts and a heatmap covering orders, revenue, customers, and platforms, and 8 reports, from sales and turnaround to delivery exceptions and outsourced drivers.

05What each team gets

  • Customers

    • An instant price for every delivery
    • A saved card or instant EFT to pay
    • Emails as the driver moves, and proof of delivery
  • Business clients

    • Their own users, rates, and credit on account
    • An API to quote and book, with webhooks back
    • Delivery reports at the hours they choose
  • Partners

    • Their orders collected without re-keying
    • Every delivery step sent back to their system
    • Proof of delivery images returned each night
  • 1Fetch team

    • Pricing, zones, specials, and drivers managed in one portal
    • Alerts for unpaid and stuck orders
    • Invoices and payments in the accounts automatically

06How we delivered

  1. 2017

    Rebuild

    Card payments, ordering, business accounts and an API, dispatch, and accounting, set up in production by July, with existing customers imported.

  2. 2017–2018

    First partner

    A partner's orders brought in from late 2017 and pulled automatically every hour from 2018, with delivery updates sent back.

  3. 2019–2022

    More ways to pay & book

    A move to .NET Core, coupons, Ozow instant EFT, and a courier partner sending orders over the API.

  4. 2024–2026

    Modernised

    Accounting posting automated, and authentication added to client webhooks.

07Built to last

  • Every dispatch event is logged before it's processed, and a completion waits until the events before it are handled, so an order isn't completed before the updates that came before it.
  • Duplicate guards where it matters: partner orders already imported are skipped, an order that already has a dispatch task isn't sent again, and accounting entries are checked before posting.
  • Instant EFT is approved only after the callback's signature is checked and the transaction is confirmed with the provider.
  • Safety nets for the money and the drivers: unpaid orders flagged every 15 minutes, and a weekday check for orders the dispatch platform shows as done.
  • Kept current with regular technology, library, and framework updates, along with ongoing performance and security improvements.
  • .NET
  • ASP.NET Core
  • SQL Server
  • PayGate
  • Ozow
  • Sage Pastel Evolution
  • Google Maps

Picking up the pieces of a platform that didn't work out?

We'll look at what you have, tell you honestly what to keep, and build the rest so it runs reliably for years. Book a free 30-minute call with one of our engineers.

sales@happen.software · www.happen.software/contact

Keep reading

Related case studies

All case studies