Skip to content
Buea first One API MoMo and Orange Money Sandbox from day one

Send a parcel across town. One request.

UGO | Deliver lets a shop, a market stall or a software team order a local delivery from code: say where it starts, where it ends and who receives it, and get a price, a job number and a way for the sender to pay with mobile money. Riders take the jobs. The customer follows the delivery from a link.

Early access. The partner API and its sandbox are built and being tested. The rider app is next. We are not publishing prices yet: tell us what you want to send and where.

HOW IT WORKS

From your order to the customer's door

No courier company to call and no money to chase. Four steps, each one a clear status you can read.

  1. 1

    Ask for a price

    Give the pickup and the drop-off, as a named junction or a map point. You get the distance and the fee before you commit to anything.

  2. 2

    Create the job

    Add the parcel, a landmark at the door and the receiver's name and number. Your own reference makes the call safe to repeat: the same reference is always one job.

  3. 3

    The fee is paid

    The job comes back with a payment link. The payer opens it, chooses MTN or Orange and approves on their own phone. Nothing starts until the fee has arrived.

  4. 4

    A rider delivers it

    The job goes to riders. The receiver gets a link to follow it and to confirm it arrived. If nobody takes it in time, or you cancel first, the fee goes back.

WHO IT IS FOR

Three people, one delivery

The same job looks different to each of them, and each sees only what they need.

Shops and software

Connect your shop, your booking system or your marketplace and order deliveries from it. Test everything with a sandbox key before a real franc moves.

  • Price, create, read and cancel jobs
  • Sandbox keys that walk a job through every step
  • Live keys only after we approve your business

Riders

An open list of jobs near you: see where it goes and what it pays, take it, deliver it, get paid to your own mobile-money number. The rider app is the next part we build.

  • One rider wins each job: no two riders on one parcel
  • The receiver's number is shown only to the rider who took the job
  • Coming with the rider app

Receivers

No app and no account. A link in a message shows where the parcel is and lets you confirm it arrived, or say something is wrong, without calling anyone.

  • A read-only page for that one delivery
  • Confirm, or report a problem
  • The rider's phone number is never shown
API

One request to order

Plain JSON over HTTPS with one key in a header. You receive your endpoint address and a sandbox key when your access is approved.

# what would it cost?
curl "$DELIVER_URL/quote?pickup_lat=4.143&pickup_lng=9.259&dropoff_lat=4.118&dropoff_lng=9.239" \
  -H "X-API-Key: $DELIVER_KEY"
# {"fee":1067,"distance_km_approx":3.56,"currency":"XAF"}

# order it
curl -X POST "$DELIVER_URL/jobs" \
  -H "X-API-Key: $DELIVER_KEY" -H "Content-Type: application/json" \
  -d '{"ref":"order-1042",
       "pickup":  {"lat":4.143,"lng":9.259,"label":"My shop"},
       "dropoff": {"lat":4.118,"lng":9.239,"landmark":"Blue gate, next to the pharmacy",
                   "recipient_name":"Amina","recipient_phone":"677000111"},
       "package": {"description":"A small parcel"},
       "payment": {"mode":"pay_link"}}'
# {"job_id":"DLV-7K4Q","status":"pending_payment","fee":1067,"duplicate":false,"pay_url":"..."}
CallWhat it does
GET /quoteDistance and fee for two points
POST /jobsCreate a delivery. Same ref twice is one job
GET /jobs/{id}The status of one of your jobs
GET /jobsYour jobs, by ref, status or date
POST /jobs/{id}/cancelCancel while it is waiting; the fee goes back
POST /sandbox/jobs/{id}/advanceTest keys only: move a test job to its next step

A job is pending_payment, open, claimed, then picked up and delivered, or it ends expired or cancelled. Each key has its own scopes and a calls-per-minute limit.

SAFE BY DESIGN

Built so nothing is sent twice and nobody is left guessing

Money, phone numbers and keys are the three things a delivery service must not get wrong.

Money through UGO | Pay

Deliver never talks to a mobile-money operator itself. The fee is collected, and refunded when a job is cancelled or runs out of time, by UGO | Pay.

No double orders

Your own reference is the key. A repeated call, a retry after a timeout or a double click returns the original job instead of making a second one.

Numbers stay private

The receiver's phone number lives apart from the job and is wiped after a retention period. The open list of jobs never shows it.

Keys with limits

Each key does only what it was given, is stored in scrambled form, can be revoked in one click, and is rate-limited. A key is shown once, when it is made.

A sandbox that behaves

Test keys create test jobs that never touch money or riders, and can be walked through every status so you can build your screens first.

A trail for every job

Every step is written down with who did it and when. Staff changes in the console are logged too, with the old and the new value.

IS IT FOR YOU

What it is good for, and what it is not

Good for

  • Parcels, documents and shop orders inside the town
  • Shops and marketplaces that want delivery inside their own checkout
  • Senders who pay with MTN or Orange Money
  • Teams that want a sandbox to build against first

Not for

  • Long-distance or cross-town-to-cross-country freight
  • Cash on delivery: it is not offered yet
  • Dangerous, illegal or very high-value goods
  • A promise of delivery time: today the price is worked out from the straight-line distance
EARLY ACCESS

Tell us what you want delivered

Write to us with what you send, where from and to, and roughly how many a week. We reply on WhatsApp or by phone, and if it is a fit we set you up with a sandbox key first.

FAQ

Common questions

Is UGO | Deliver available now?
It is in early access. The partner API and its sandbox are built and being tested, the rider app is the next part, and we are not publishing prices yet. Tell us what you want delivered and we will reply on WhatsApp or by phone.
Where does it work?
Buea first. A job needs a pickup and a drop-off inside the area we serve; a point outside it is refused with a clear message. We add areas one at a time.
How is the price worked out?
From the distance between the two points, in a straight line, with a lowest fee. The quote call shows the fee and the distance before you create a job, and the distance is labelled "about" because it is not a road distance.
How does the sender pay?
With MTN MoMo or Orange Money, through UGO | Pay. Creating a job returns a payment link; the payer opens it, picks a network and approves on their own phone. The job only opens for riders once the fee has arrived. Which networks are live at any moment depends on UGO | Pay.
What if nobody takes the job, or I change my mind?
A job that is still waiting can be cancelled with one call or from our console, and the fee goes back through UGO | Pay. A job that nobody takes in time closes by itself and is refunded the same way.
Can I try it without paying?
Yes. A sandbox key creates test jobs that never touch money or riders, and one call moves a test job to its next status, so you can build and test every screen first. A live key works only after we approve your business.
What happens if my system sends the same order twice?
You send your own reference with each job. Sending the same reference again returns the original job instead of making another, so a timeout, a retry or a double click cannot order two deliveries.
Who can see the receiver's phone number?
It is kept apart from the job, it is never in the open list of jobs, and it is removed after a retention period. Only the rider who took the job, the sender and our staff can see it, and staff opening it is written to a log.
What about the riders?
The rider side is the next thing we build: an open list of jobs, one rider per job, and payment to the rider's own mobile-money number once the receiver confirms. Until it is live, early-access partners are told which parts run and which are still in test.
Do you offer cash on delivery?
Not yet. It needs its own rules for the rider's liability and for handing the cash over, so it stays out until those are decided.

Something else? Contact us.