Introduction to the BoB Standard
What is BoB?
The BoB standard (Biljettdistribution och Biljettvisering) is a national ticketing standard developed by Samtrafiken in cooperation with its owner organisations in the Swedish public transport sector.
The goal of the BoB standard is to enable interoperability between different ticketing systems, sales channels and validation systems, allowing tickets issued by one organisation to be used and validated by another.
BoB achieves this by defining common ticket structures, interfaces and communication mechanisms while allowing each participant to maintain its own:
fare structures
business rules
ticketing systems
sales applications
reporting and settlement systems
This modular approach allows different systems to interact while still giving each participant the flexibility to implement solutions that fit their own operational needs.
Samtrafiken acts as the administrative body of the BoB ecosystem, maintaining the standard and coordinating key infrastructure required for interoperability between participants.
More information about this role can be found here:
Samtrafiken’s Role in the BoB Ecosystem →
BoB Architecture Overview
The BoB standard is based on a modular architecture where traditional ticketing systems are divided into independent components that interact through standardized interfaces.
Typical components in a BoB ecosystem include:
Sales Channels (apps, web services or ticket machines)
Ticket Engines that issue and manage tickets
Product and pricing services
Validation and inspection systems
Shared infrastructure services, such as authentication and participant metadata
These components interact through defined APIs and shared ticket structures to enable interoperability between different participants.
Structure of the BoB Standard
The BoB standard consists of three main technical components:
Component | Description |
|---|---|
Mobile Ticket Specifications (MTS) | Defines how electronic tickets are structured, signed and validated |
Application Programming Interfaces (API) | Defines how systems exchange ticketing information |
Schemas | Defines recommended common enumerated values. |
Together, these components define the interfaces and technical foundations needed to build a BoB-compliant ticketing system.
However, implementing BoB also requires agreements between participating organisations regarding topics such as:
business rules
clearing and settlement
operational responsibilities
These agreements enable a complete interoperable ticketing ecosystem.
Mobile Ticket Specifications (MTS)
The Mobile Ticket Specifications (MTS) define how tickets are created, structured and validated within the BoB ecosystem.
In BoB, tickets are represented as Mobile Ticket Bundles (MTB). An MTB is a structured data container that may contain one or multiple tickets issued by different participants.
The MTS specifications ensure that tickets can be:
read and interpreted by different systems
validated across organisational boundaries
securely signed and verified
There are eight MTS specifications, each covering a specific aspect of ticket structure, security or interoperability.
More information about these specifications can be found in:
Application Programming Interfaces (API)
BoB defines a set of Application Programming Interfaces (APIs) that enable communication between system components.
These APIs support the full lifecycle of a ticket, including:
product discovery
ticket purchase
ticket issuance
validation and inspection
event reporting
Commonly used APIs include:
Authentication
Product
Ticket
Participant Metadata
Device
Validation
Inspection
Additional APIs support specialised functionality such as Booking, Traveller and Token services.
Detailed descriptions of these interfaces are available in:
Schemas
BoB also defines a set of schemas and translation tables describing recommended enumerated values.
These schemas specify:
data structures used in tickets
field definitions and identifiers
standardized abbreviations used to minimize ticket size
Some schemas are defined within the relevant MTS specifications.
BoB Electronic Tickets
In the BoB standard, tickets are represented as Mobile Ticket Bundles (MTB).
An MTB can contain:
a single ticket issued by one participant
multiple tickets issued by different participants
This makes it possible to combine several tickets into one travel document representing a complete journey.
During validation, systems locate the relevant ticket information using the Participant Identifier (PID) associated with each participant.
More information about ticket structure and security can be found here:
BoB in Practice
The following simplified examples illustrate how BoB is used in practice.
Searching for a Ticket
A traveller searches for a ticket using a sales channel, such as a mobile app.
The sales channel sends a request to a Price and Product service within a ticketing system, which returns available products matching the requested journey.
The traveller is then presented with the available ticket options.
Buying a Ticket
When a traveller selects a ticket and completes payment, the sales channel sends an order to the Ticket Engine.
The Ticket Engine generates the Mobile Ticket Bundle (MTB) containing the ticket information and digital signatures required for validation.
The ticket is returned to the traveller, typically encoded as an Aztec code.
Validating a Ticket
When travelling, the traveller presents the ticket to a validation device.
The device reads the ticket data and verifies:
ticket authenticity
validity conditions
time and location constraints
The validation result is reported to the validation backend system and may later be used for reporting and operational analysis.
Related Topics
For more detailed information about the BoB ecosystem, see: