Lapetus
An app for a courier fleet. Trips, earnings, shifts and settlements in one place.

- Industry
- Courier and parcel logistics
- Scope
- Design, iOS + Android app, backend
- Timeline
- 2024
- Stack
- Capacitor, Vue 3, Symfony
The brief
A courier fleet is run from the road. Drivers leave the depots in the morning, each on their own rates, and at the end of the day they report what they delivered. As long as that travels through chats and spreadsheets, dispatch assembles every settlement by hand and a driver learns their earnings only with the payslip.
Lapetus GROUP s.r.o. moves parcels and wanted both under one roof: an app where a driver logs a trip in a minute and sees right away what they earned, and a back office from which dispatch runs recruitment, shifts, days off and the money.
We built a hybrid app for iOS and Android with two roles in one codebase. The driver got trip logging, refuelling and settlements; the dispatcher got driver and rate management, depot planning and a live vehicle map. A Symfony backend runs behind it, push notifications and real-time updates keep everyone posted.
A driver’s day: a trip logged in a minute
A new driver signs up right in the app, photographs their documents with the phone and dispatch approves the application in a few taps. From then on their whole day turns around one thing: log the trip and see the money.

Three numbers and it is in
Parcels delivered, parcels to pickup points, kilometres driven. That is all a driver fills in after a trip: the app knows their rates and recalculates the estimated earnings as they type, before the trip is even saved.

Every crown has its line
The trip detail shows the earnings broken down by item: parcels, pickup points, kilometres. The trip overview keeps a monthly total on top, so a driver knows where they stand before the settlement arrives.

Refuelling records itself
The fleet refuels on ORLEN fuel cards and the app is connected to them: every refuelling flows in on its own, with the litres, the amount and the petrol station found through Mapbox on a mini-map. Dispatch then sees the whole fleet’s refuelling in one place, with a place and time on every record.
Dispatch in a pocket
The second role of the same app. The administrator manages drivers and their rates, approves registrations, plans shifts by depot, closes settlements and sees the cars on a map. Ten management modules, still in one phone.

Who drives tomorrow, and from where
The plan is built by depot and by day: the dispatcher assigns drivers to a depot, and the app watches each one’s home depot and who is on holiday. A published rota reaches the drivers as a push notification.

Days off, day by day
The driver asks for time off and adds a reason; the dispatcher approves each day separately: what passes, what does not, with a comment for the driver. Approved days flow straight into shift planning.

The whole fleet on one map
Cars with GPS trackers are drawn on a live map. The vehicle card shows who is driving it, where it stands, whether the engine is running and how much is left in the tank. And when the whole fleet needs an order at once, dispatch has a mass alarm push message at hand.
What else the app does
Two roles in one app make for a long list. The most interesting of it, at speed.
-
Registration with document photos
A new driver goes through onboarding right on the phone: they fill in their details, photograph their documents with the camera and submit. Dispatch approves applications in a queue of its own, so nobody joins the fleet unchecked.
-
Rates tailored to every driver
Per parcel delivered, per pickup-point parcel, per kilometre. Rates can be set for each driver separately and every calculation in the app follows them on its own: in trip logging, in the summaries and in the settlements.
-
Settlements with an approval loop
A settlement for a period passes through the states sent, approved or rejected, and closed. It carries bonuses and deductions along the way, and both sides see which step the money is at.
-
Competitions for drivers
Beside trips and money, the driver has a competitions section in the app: dispatch announces a contest for prizes and the invitation reaches everyone as a push notification. Motivation does not have to be the payslip alone.
-
The news arrives on its own
A new rota, an approved day off, a settlement ready: a driver learns everything that matters from a push notification (WonderPush), and changes flow into the open app instantly over Mercure.
-
One codebase, two stores
The app is built on Capacitor with Vue 3 and Framework7, so one codebase serves both iOS and Android. A Symfony and API Platform backend holds the data, sign-in is secured with JWT.
The app in one place
Fourteen screens in pairs, in the order they come: from driver recruitment through trips and money to fleet management. The names, amounts and addresses in the captures are sample data from a demo environment.