Module · Transport

Transport: sell the trip, even between stations

The Transport module sells trips: a network of lines and stops, a price for each pair of stops, a ticket tied to one departure. The engine finds the cheapest route, holds the seats and checks every price again. Between stations, sales and ticket checks continue on board, without a network.

January 2027

  • The cheapest route
  • Offline sales and checks
  • Price checked again by the server

One network, from the station desk to the tablet

The Transport module sells tickets for a network of lines and stops, with its price grid, seats and departures. The StillDeep Transport example, a fictional train with five stations and three lines, shows every screen at work. The module itself only knows lines, stops and departures: it serves any network described that way.

  • A price per pair of stops Each pair of stops of a line has its price, by fare, season and class. A generator fills the empty cells from the distance, and an empty cell never sells. The example's prices are fictional.
  • Departures in real time Delay, platform and boarding are set by a clerk at a register and reach the station boards at once; the schedule belongs to an administrator.
  • Tickets checked on board, without a network The conductor's tablet reads the signed code, the train's log is shared by its tablets, and a ticket checked twice on the same train shows at once. Between two trains, it shows when the network returns.

Why the Transport module

Always the cheapest route

The engine computes the route once, at search time, using the adult fare and the cheapest class. When prices are equal, it picks the fewest changes, then the shortest trip. A connection gives one ticket per leg, each on its own departure.

A price you read in a grid

One price per pair of stops of a line, by fare, season and class, the same both ways. The generator fills empty cells from the distance without touching what you entered. A pair with an empty cell is not sold.

A price no one can force

The register never sends a price the server cannot check again. The server reads each cell, the season of the date and the coach of the class, and refuses a route other than the reference.

A seat sold only once

A coach sells by count or as numbered seats. The chosen seat is held for the cart, like a seat at a show; on board, two tablets cannot sell the same one.

Sales continue when the train loses the network

The on-board pack carries the network, the fares, the grid and the departures from 12 hours before to 48 hours after. On board, everything keeps working, and the data goes out at the next station.

A stop for a single person

A point on the network sells like a station. The driver sees who gets off and who to pick up at the next stop; the conductor sells a ticket to anyone waiting without one.

What you get

  • Network: stations and stops, lines, order, distance and minutes from the start of the line.
  • Fares of your choice, for example adult, child, 65 and over, student; one way and round trip; proof to show the conductor.
  • Seasons and their date periods, without overlap: a date outside any period does not sell.
  • Classes tied to the coaches of the train, by count or numbered.
  • Cheapest route, connection at a junction, round trip on the reverse route.
  • Groups: one trip, several people, each with a fare, a class and a seat; "Choose for me" seats them side by side.
  • Upgrade of the whole group over the whole trip, at the price difference, read again by the server.
  • Stops on request and pickups, sold like a stop and visible to the driver.
  • Departures: delay or early running, platform, automatic or manual boarding, message on the board. A clerk changes them at a register; an administrator sets the schedule.
  • Station boards in real time, without a shift or a sale: departures, arrivals, trains in station.
  • One register per role: station desk, kiosk, ticket website, train store, conductor's tablet, station board. The server decides what each one may do, never the screen.
  • Train position on a buying map: estimated from the schedule, the real departure and the delay, measured only when the server holds the train at a stop.
  • Offline on-train server: the train's registers, a shared memory, sending at the next station.
  • GPS read by the on-train server (NMEA 0183, any transmitter), which derives the stop and the passages; a simulator for the demonstration.
  • Departure left open: the train's next passage closes it with its real delay; a departure whose train sends nothing is closed after a one-day grace period. Tickets and seats do not move.
  • Time zones: each station can have its own, set in the Admin console; if left empty, the server's zone applies. The ticket shows the zone next to each time, and a trip across two zones carries a notice with the gap on arrival. The abbreviation follows the date of travel.
  • Train manifest: passenger, class, coach, seat, proof required.
  • Ticket check on a tablet, by scanner, camera or number on the keypad: valid, already used, canceled, wrong train, unknown or unreadable.
  • On-board sales by the conductor's tablet or a fixed register, with no blocking capacity: the passenger is already on the train.
  • Administration in the Admin: stops, lines, fares, grid, seasons, classes and departures, in French or English.

Ideal for

  • Trains and small scheduled networks
  • Shuttles and buses with stops
  • Ferries
  • Excursions with fixed departures

The train of the example shows every screen at work; other networks build on the same module, with your screens. See what the modules do together.

January 2027

Create an account

January 2027

The price and online purchase of this module open on that date. Create your account today: it will be ready.

Create an account Contact us

Questions about the Transport module

What software can sell and check tickets on board?

The Transport module: the conductor's tablet and the train store sell and check tickets without a network, and everything goes to the server at the next station.

What happens when the train loses the network?

Nothing stops. The train's registers read the on-board pack, sell and check tickets on board, and keep everything in their outbox. When the network returns, sales, checks and passages go to the server, and the pack is read again. A sale already paid is not refused for its price, fare or seat: a mismatch becomes a warning, and the sale goes to review, with its reason.

Can a ticket be used twice?

On one train, no: its tablets share the same log, and the second read says "already used". Between two trains, double use shows when the network returns, and the conflicting ticket appears on the tablet.

Does the map show where the trains are?

Yes, as an estimated position, and the map says so: between stations, the server has no GPS. It derives the position from the schedule, the real departure and the delay; offline, from the on-board pack. It is measured only when the train is held at a stop.

Can a trip change time zone?

Yes. The ticket, the thank-you page, the PDF, the email and Wallet show the zone next to the time, and a notice gives the gap, on screen too (search, order, desk, kiosk): "On arrival: Vancouver time, 2 h behind the departure." By default, the time is the server's; a layout can choose Date départ and Date arrivée (departure and arrival date), in the zone of each station. The example's network stays in one zone.

How is the price of a trip computed?

The price comes from the grid: the cell of the pair of stops, the fare, the season and the class. The season follows the date of travel; a connection or a round trip can span two, and each leg pays its own. The rate per kilometer is only used to fill the grid.

Can I remove the taxes for a tax-exempt passenger?

Yes, with a discount equal to the tax amount, granted by an authorized employee. The taxes stay computed and visible, and the reports stay right. The employee makes that decision, not the engine.

Do I need a GPS?

Not to sell or to check tickets. The GPS gives the position and the passages without anyone touching a screen. It connects to the on-train server, never to a tablet.

How is a Transport screen built?

In .NET, on the in-process libraries, like the example's screens. Their source code is free: start from it.

What is the price of the module?

The price and online purchase of the module open in January 2027. The screen source code of the example is free.

Works well with

Retail

Sell coffee and newspapers at the desk or on board, in the same sale as the ticket. The example already does.

Ticketing

Sell the entry on top of the trip: a show, a museum, a day on the mountain.

All the combinations

Shuttle, ferry, excursion, festival: what the engine gives you and the screen you build.