CASE STUDY 05

Behold Bohol Trip

A fare-quoting and payment system built on Mapbox, so riders see a real price before they book and pay without leaving the app.

ROLE
Full-stack engineering
STACK
Next.js · Mapbox · Payments
TIMELINE
[x weeks]
TYPE
Client project
Behold Bohol Trip
01 — PROBLEM

Riders were quoted a rough estimate, then found out the real fare only after the trip — sometimes a very different number. Drivers had no reliable way to charge for the distance actually driven, and refunds for disputed fares were handled by hand.

02 — ARCHITECTURE
Pickup + destination
rider app
Search Box API
address search
Directions API
route · distance · time
Fare engine
distance-based pricing
Payments
charge on completion
FIG. 01 · SIMPLIFIED
03 — KEY DECISIONS & TRADE-OFFS
Price from a route, not a flat zone fareDirections API returns real distance and time for the exact route, so the quote matches what the trip will actually cost.TRADE-OFF Every quote needs a live Mapbox call, so fare pages depend on that uptime.
Quote the fare before the ride, lock it afterRiders see a firm price before they book instead of a range, and the price locks once the trip starts so a reroute doesn't surprise them.TRADE-OFF Needs a clear policy — and UI — for what happens if the actual route differs a lot from the quoted one.
Charge in-app on completion, not after an invoicePayment captures the moment the trip ends, so there's no separate billing step and no unpaid trips to chase.TRADE-OFF Failed payments have to be handled in real time, right as a driver is waiting to be paid.
04 — STACK
Search Box API
Address autocomplete
Directions API
Route, distance & time
Payments
In-app charge on completion
PostgreSQL
Trips, fares & receipts
05 — RESULTS
[metric]
Fare estimate accuracy vs final charge.
[metric]
Riders completing booking after seeing a quote.
[metric]
Disputed-fare tickets per week.
NEXT CASE STUDYLove Bohol Portal →