Shipbubble · 2024

Shippa: Shipbubble's fleet app

Rider-facing app for Shipbubble's delivery fleet: assignment through proof of delivery, cash-on-delivery collection by transfer or card, and wallet payouts, on the same design system as the merchant web app and buyer mobile app.

Role
Product Designer
Platform
iOS, Android
Timeline
2024
Team
Product manager, engineering
  • End-to-end rider app design
  • Order and COD payment flows
  • Wallet and payout design
  • Design QA
Shippa rider home screen with online status, assigned pickups and deliveries, and wallet balance

Context

Shipbubble’s web app gets a merchant’s shipment to the right courier. Shippa is the other half: the app the courier’s own riders use to actually run the delivery, from the moment a pickup lands on their phone to the moment cash is in their wallet. I designed it on the same team as Shipbubble’s web and buyer mobile work, on the same component library.

The job, end to end

A rider’s day comes down to three things that all have to hold up: get assigned the right pickup and delivery, prove the delivery happened, and get paid, including cash collected on a merchant’s behalf. Shippa is built around that sequence rather than around a features list.

Home shows what the day looks like at a glance: an online toggle, assigned, completed and pending pickups for the period, and the wallet balance one tap from being withdrawn. A rider can also log an order themselves, capturing the customer’s details, the cash-on-delivery amount, the delivery fee and the seller’s bank details, for jobs that come in outside the normal dispatch.

Shippa home screen with online status, assigned and completed pickups, and wallet balance
Home: the day at a glance
Shippa create-order screen with customer details, COD amount, delivery fee and seller bank details
A rider can log an order directly, COD amount and seller bank details included

A new assignment arrives as a request, pickup and delivery address, and whether it is a cash-on-delivery order, that the rider accepts or declines before it becomes a job. Accepted jobs carry everything needed to run them: pickup and delivery contacts with one-tap calling, the package manifest with weight and quantity, the COD amount to collect and from whom, and any handling notes.

Shippa new order request with pickup and delivery location and a cash-on-delivery flag
A new assignment: accept or decline before it's a job
Shippa order detail screen with pickup and delivery contacts, package manifest and the COD amount to collect
Order detail: contacts, manifest, and the COD amount up front

Completing a delivery takes a photo as proof and a PIN read back from the customer, so “delivered” is something the receiving customer confirmed, not just something the rider clicked.

Shippa proof-of-delivery photo screen
Proof of delivery: a photo
Shippa confirmation PIN entry screen
And a PIN from the customer

Not every delivery goes through. A rider who cannot complete one picks a reason, customer unreachable, cancelled, address not found, rather than leaving the job stuck with no record of why.

Shippa cannot-deliver screen with reason options
When a delivery can't complete, the reason is captured, not just the failure

Getting paid for cash collected

Cash-on-delivery is where trust gets tested. The COD list tracks every order by payment state, pending or collected, with a “request payment” action that pushes the customer to pay by transfer or card instead of handing over cash. A transfer shows the exact amount, account and reference to pay against, and every order carries a payment timeline, pending, collected, settled, so a disputed payment is not a phone call, it is a record.

Shippa COD list with pending payment and payment collected states
Every COD order tracked by payment state
Shippa select payment method screen, transfer or card
Customers can pay by transfer or card instead of handing over cash
Shippa pay-by-transfer screen with amount, bank and account number
Transfer: the exact amount and account, ready to verify
Shippa transaction timeline: pending payment, payment collected, payment settled
A timeline per order: pending, collected, settled

Wallet and payout

Everything a rider earns, deliveries and COD collected, lands in one wallet with a running transaction history. Withdrawing is a choice of amount and a bank transfer out, confirmed by an OTP, so a payout is never one tap away from a mistake.

Shippa wallet with a transaction history of completed orders
Wallet: every order, one running history
Shippa withdraw screen with preset and custom amount options
Withdraw: preset or custom amount
Shippa withdrawal OTP verification screen
Confirmed by OTP before the payout goes out

Outcome

Shippa is live on Shipbubble’s fleet, running the same order-to-payout loop across assignment, proof of delivery, COD collection and wallet payouts, on the design system shared with the web and buyer apps. Firm numbers, riders active, COD collected through transfer and card versus cash, delivery completion time, are still early. I hold them as targets rather than confirmed results, with firm figures to follow once there is a stable stretch to report.