Case study · Our own product · Transport · Romania

BusTrans: every bus, every ticket, live.

County bus operators in Romania sell tickets on board, settle discounted student fares with the county and report to the County Council. Most of it used to run on paper and Excel. We built BusTrans to put it on one screen.

POS

Tickets on Datecs terminals

Drivers issue fiscal tickets and take card payments on Datecs BlueCash 50 terminals. The app is published in Danubius Store, the app store for Datecs terminals in Romania.

GPS

The whole fleet on a map

Dispatchers see every bus live. The County Council gets its own read-only view of routes and tickets.

RON

Revenue per trip and driver

Sales by route and driver the same day, and the discount report for settlement straight from the system.

The integration work

  • An Android app on the POS terminal that talks to the fiscal printer and to card payments.
  • A backend on Google Cloud Run that receives tickets and GPS positions from every bus.
  • Web dashboards for the operator, the dispatcher and the County Council, each with its own permissions.
  • Prices locked server-side, so they can't be changed from the bus.

Running it cheaply

A year of billing data showed that real traffic cost $3.64 while the bill was over $1,800: warm Cloud Run instances, a leftover VM and old images. We moved the service to a single warm instance in the deploy pipeline and are removing the leftovers. Here's exactly how we found it.

Stack

  • Google Cloud Run
  • Node.js
  • MongoDB Atlas
  • React
  • Android
  • Datecs fiscal SDK
  • GitHub Actions

Building something that has to talk to hardware?

POS terminals, fiscal printers, GPS trackers, payment providers: we've wired them together. Tell us about yours.