BSI Standards PublicationIdentification card systems — Surface transport applications Part 2: Transport and travel payment related data elements and code lists... ICS 35.240.15 Supersede
AccommodationClassCode
Code representing an accommodation class
AccommodationClassCode ::= ENUMERATED { unknown (0), first (1), second-standard-traveller (2), small (3), large (4), business (5), economy (6), club (7), enhanced-standard (8), premium (9), rfuCEN1 (10), rfuCEN2 (11), rfuCEN3 (12), networkIdSpecific1 (13), networkIdSpecific2 (14), networkIdSpecific3 (15)
AssistanceTypeCode
Code defining the service provided by service provider staff
The AssistanceTypeCode is an ENUMERATED type that categorizes various forms of assistance, including unspecified (0), assistance for wheelchair users (1), visually impaired individuals (2), hearing impaired individuals (3), and mobility impaired persons (4) It also includes support for persons accompanied by infants (5), unaccompanied minors (6), and mentally handicapped individuals (7) Additionally, there are specific codes for various network identifiers, ranging from rfuCEN1 (8) to rfuCEN4 (11) and networkIdSpecific1 (12) to networkIdSpecific4 (15).
DiscountCode
A code outlines the eligibility criteria and the percentage discount available to the holder This code serves as the basis for calculating fare reductions within the CAD or background system.
reduction-on-basis-of-a-kilometre-calculation (6),
reduction-dependant-on-the-used-mode-of-transport (7),
reduction-dependant-on-the-vehicle-class (8),
for-short-distance-bus-and-train-travel-up-to-50 km (9),
for-long-distance-train-travel (10),
for-long-distance-bus-travel (11),
ExtraServiceCode
Code identifying the extra service offered in a contract
FareBasisCode
Code indicating the basis on which the price of a fare is calculated
A code indicating the type of journey defined in a travel contract JourneyTypeCode ::= ENUMERATED { unspecified single return circular rfuCEN1 rfuCEN2 networkIdSpecific1 networkIdSpecific2
Indicates whether loyalty is held locally (on card) or on central account LoyaltyTypeCode ::= ENUMERATED { undefined oncard centralAccount
Indicates the type of a multiple contract
MultiProductTypeCode ::= ENUMERATED{ stored-single-journey-legs stored-multi-leg-journeys, rfuCEN1 rfuCEN2 rfuCEN3 rfuCEN4 networkSpecific1 networkSpecific2
The means by which the payment is affected
PaymentMeansCode ::= BIT STRING (SIZE(5)) mmmm Payment means (5 bits) :
The payment mode identifies the timing of actual money transfer (e.g ahead of or after the event)
PaymentModeCode ::= BIT STRING (SIZE(2)) pp Payment mode (2 bits) :
‘01’B : prepayment, (payment is affected in advance of travel)
‘10’B : postpayment, (payment is affected after travel, possibly in back office)
‘11’B : trippayment (payment is affected at the end of a trip, i.e at check out)
The payment scope refers to the application extent of the payment method
PaymentScopeCode ::= BIT STRING (SIZE(4)) ssss Payment Scope (4 bits) :
‘0001’B : Inter-Sector (Multi-purpose) International,
The currency's unique designation is defined by ISO 4217, utilizing the ISO numeric representation Additionally, this code can represent a company-specific token or a 'charging unit code' commonly used in freight.
'0xxx’H Currency in main units,
‘1xxx’H Currency in minor units of 10
'2xxx’H Currency in minor units of 100 ('cents'),
'3xxx’H Currency in minor units of 1000,
'4xxx’H Currency in 'major' units / 10,
'5xxx’H Currency in 'major' units / 100,
'6xxx’H Currency in 'major' units / 1000,
'7xxx’H Currency in 'major' units / 10000,
'8xxx’H Currency in 'major' units / 100000 xxx BCD representation of Currency as defined in ISO 4217
'9xxx’H Tokens : xxx Purse Provider specific coding
'Axxx’H Charging Unit Codes denoting quantification of the service provided
To identify the position of the passenger seat with respect to the direction of travel
The SeatPositionCode is an ENUMERATED type that defines various seating positions, including unspecified (0), facing the direction of travel (1), back to the direction of travel (2), and airline-specific fixed positions (3) Additionally, it includes relative positions such as facing right (4) and facing left (5), along with rfuCEN (6) and networkIdSpecific (7).
Indicates how the STR is loaded
STRLoadCode ::= ENUMERATED { unspecified (0), threshold-autoload (1), internal-autoload (2), load from another value source loaded-by-user (3), pre-selected-autoload (4), periodic-autoload (5), rfuCEN2 (6), rfuCEN3 (7)
Indicates if a contract can be used for an urban journey in addition to the principle journey
UrbanAddOnCode ::= ENUMERATED { unspecified (0), urban-at-origin (1), urban-at-destination (2), urban-at-both (3), interchange (4), rfuCEN1 (5), rfuCEN2 (6), rfuCEN3 (7)
Defines the validation model i.e CICO, CI-Destination, BIBO
ValidationModelCode ::= ENUMERATED { unspecified manual-preselection-immediately-validated manual-preselection-validation-required cico bibo cibo wiwo rfuCEN1
7 Transport and Travel Payment related data elements
Defines the accompanying persons, objects or animals under the contract
AccompaniedBy::= SEQUENCE { accompaniedByType ProfileCodeNetwork, accompaniedByNumber NumberOfCompanions
The reference for a central account
It indicates whether a deposit taken when the application was loaded is refundable without reference to the product owner
0 = non refundable without referral, 1 = refundable
The last date upon which an autoload facility may be used
The first date upon which an autoload facility may be used
A flag indicating whether auto-renew is enabled
Amount remaining e.g in a purse or a stored travel rights accumulator
A flag indicating that, under the contract, a companion is allowed to travel at the same fare as the person entitled to travel No other evidence is required for the companion
The cumulative count of CTA charge transactions
The running total of coupons remaining after the event (which is either additive or subtractive)
The accumulative number of individual rides making up the overall journey for the specific journey purpose
The accumulative number of journeys until reset
The accumulative number of journeys until reset Period is defined according to NetworkID
The number of coupons to be loaded during an autoload event
Number of coupons deducted at this event
Number of coupons loaded into the application
Sum of the fare values for a number of transactions
A journey counter, which is loaded with the number of journeys purchased upon ticket creation, and is decremented each time a journey is made
A flag indicating whether a deposit may be refunded
Destination is the designated end point of the journey under the contract The point in this context may be a zone, a bus-stop, a station, etc
Value Assignment: NetworkId specific value
Level for the actual calculation of the discount in the fare algorithm The data refers to a table held in the CAD
Value Assignment: NetworkId specific value
The 'Travel Dossier' maintained by the travel product retailer serves as an electronic record of various travel-related contracts, such as flights, train journeys, and hotel bookings, facilitating post-sale transactions.
Value Assignment: NetworkId specific value
The value deducted from a stored value or purse at check in (in a CICO environment) to ensure any payment in case of forgotten check out
The DynamicDiscount parameter is a dynamically calculated value that influences the final discount calculation for a specific product, taking into account factors such as the number of kilometers, rides, zones, and stops This parameter can also be combined with additional data, including the period and date, and is updated with each transaction The format for this parameter is defined as DynamicDiscount ::= OCTET STRING(SIZE(4)).
The date upon which a ticket or entitlement expires, expressed as an offset from a contract expiry date defined elsewhere
The amount of fare deducted
A flag indicating that an operator has issued a ticket without collecting all or part of the fare, at his own risk
The number of interchanges permitted between the first boarding point and the last alighting point of a single journey
Value Assignment: NetworkId specific value and unit
JourneyRun identifies the specific service which the customer is permitted to use by the product, e.g., a train number or trip number
Value Assignment: NetworkId specific value
Identifier for a public transport line
Amount for loading to stored value or to a credit account May be used for AutoloadAmount and AutotopupAmount
Identifies the holder within a loyalty scheme
Value Assignment: NetworkId specific value
An identifier for a loyalty scheme
Indicates that the sale price has been determined manually, rather than being calculated by the ticketing system
The maximum value of an account
The maximum number of charges to an account which may be made in a charge period MaxNumberOfCharges ::= Quantity
Give the maximum number of journeys allowed each day of the week
Maximum number of journeys permitted under the contract When the maximum number of journeys has been completed, the contract may no longer be used
The absolute minimum value of an account Below this no action will be possible
NotVia is a point through which the journey shall not pass In public transport this could be an interchange point
Value Assignment: NetworkId specific value
The number of accompanying persons, animals, objects
The number of concessionary adults in a party
The number of concessionary children in a party
The number of concessionary passengers in a party NumberOfConcessionaryPassengers ::= Quantity
The number of passbacks allowed until the anti-passback rule applies
Origin is the designated starting point of the journey under the contract The point in this context may be a zone, a bus-stop, a station, a toll plaza, etc
Value Assignment: NetworkId specific value
A flag indicating whether the accommodation has been overbooked
The discount or discounted amount as indicated by DiscountLevel
Number of minutes for which anti-passback applies following a card transaction
Identification of the means of payment used, e.g credit card number, warrant number, entitlement-Id, purse-Id, cash etc Used for controlling refunds
When the flag is set to one (1), the associated contract will take precedence over any other payment methods linked to the card However, this flag cannot be activated if another contract already has a similar flag set to one.
PaymentProvider is the identity of provider of the payment instrument which is being offered for payment PaymentProvider ::= NetworkSpecificCompanyId
General construct describing a method of payment, i.e the combination of transaction mode code, payment means code, payment mode code and payment scope code
Where tt is TransactionModeCode pp is PaymentModeCode mmmmm is PaymentMeansCode ssss is PaymentScopeCode
PeriodJourneys refers to the number of journeys permitted within a specific timeframe for each product While this period is typically set to one day, there is flexibility to extend it to other durations, such as a week or a month.
Data element which indicates a nominal monetary value
Price ::= SEQUENCE { priceAmount Amount, priceVATAmount Amount, pricePaymentUnit PaymentUnit
} priceAmount is the value of the price, the unit of which is specified in pricePaymentUnit The priceAmount is assumed to always include VAT
PriceVATAmount is the value of the tax pricePaymentUnit is the unit in which the price and the tax is expressed
This element indicates a max or min level of the price for a journey The number corresponds to the level in a specific amount of money in the front-office system
Static fixed parameter that refers to a table held within the CAD to determine the corresponding pricing rule PricingLevel ::= INT1
Value Assignment: NetworkId specific value
Date of loading or renewing the contract
A flag is used to indicate that a paper receipt has been issued for the contract sale, ensuring that the holder cannot print the same receipt multiple times or reclaim VAT more than once.
A flag indicating whether a receipt shall be printed, when appropriate, if the POST is capable of this ReceiptToPrintFlag ::= Flag
The identification of a reference for a reservation
Value Assignment: NetworkId specific value
Route is the reference to the allowed route, (including route variants,) to be used under the contract As an example, this may be a public transport route or a motorway link
Value Assignment: NetworkId specific value
RouteVariant is a qualifier defining the specific route variant allowed under the contract The route of which this is a variant referenced by the route
Value Assignment: NetworkId specific value
The alphanumeric reference of a seat
Value Assignment: NetworkId specific value
The numeric reference of a seat
A ticket indicates its usage on a specific service operator as part of a multi-operator journey Bit 0 is activated when the ticket is utilized on the first service operator's service.
1 on the second service operators service, and so on
A flag indicating that smoking is permitted in the allocated accommodation where 1 indicates smoking SmokingFlag ::= Flag
Identifies a specific instance of an STR contract The value is STR network specific and shall be unique within that context
Value Assignment: NetworkId specific value
Company that is responsible for the management of travel rights stored in the application
The value of a STR transaction is determined by its impact on the STR's worth; a transaction that enhances the value of STR will be recorded as positive, while one that diminishes its value will be noted as negative.
A tariff identifier, also known as a coding fare, is used for public transport trips to reference a specific fare This identifier is crucial when a pre-purchased ticket remains valid for a certain distance after a fare increase, as it refers to information in the CAD prior to the increase Each identifier is unique and specific to the transport network it pertains to.
Value Assignment: NetworkId specific value
The value of a threshold amount related to an account serving as a trigger for an action, e.g at which autoreload of the account takes place
A flag indicating whether a ticket shall be printed, when appropriate, if the POST is capable of this TicketToPrintFlag ::= Flag
A flag indicating whether a ticket may be transferred to a person other than the person to whom it was sold TicketTransferFlag ::= Flag
A ticket that is valid for multiple journey legs requires that each subsequent leg begins within a specified timeframe from the start of the first leg This timeframe is defined in 30-second intervals, including the duration of the preceding journey legs The countdown starts at the time of ticket validation, and any journey legs that begin after this period has elapsed will be considered a new journey.
The numeric reference of a train
Value Assignment: NetworkId specific value
For tickets that cover multiple journey legs, this element specifies the maximum permissible duration for an interruption between legs, as well as the maximum allowable transfer time measured in minutes from the end of the first leg to the start of the next.
A ticket that is valid for multiple journey legs allows for a transfer time between the start of one leg and the next, provided the subsequent leg begins within a specified timeframe from the first leg's start This transfer time is measured in minutes and begins counting from the moment of ticket validation, including the duration of any preceding journey legs If a journey leg starts after this transfer time has elapsed, it will be considered a new journey.
The identification of a travel service
Value Assignment: NetworkId specific value
The article outlines a system for tracking journeys on each day of the week, allowing for two applications: documenting actual trips taken or setting limits on the maximum number of trips allowed per day The structure for this data is defined as "TripsPerDayOfWeek," which consists of a set of eight integers, with the first integer representing Monday and the second integer representing Tuesday.
seventh INTS for Sunday eighth INTS for special days, network specific (such as public holidays)
Assumes max 15 trips per day The total size of the element is four bytes
The percentage of the VAT is expressed in value of 0,01
Via is a point through which the journey shall pass In public transport this could be an interchange point Via ::= LocationIdentifier
Value Assignment: NetworkId specific value
An identifier of a geographical area
Value Assignment: NetworkId specific value
In a star-based zonal system, the ZoneCount indicates the number of zones where a product is valid If ZoneCount is zero, the product is restricted to the home zone only The home zone can be defined using ZoneID, ZoneMap, or through implicit methods.
LoyaltyTypeCode
Indicates whether loyalty is held locally (on card) or on central account LoyaltyTypeCode ::= ENUMERATED { undefined oncard centralAccount
MultiProductTypeCode
Indicates the type of a multiple contract
MultiProductTypeCode ::= ENUMERATED{ stored-single-journey-legs stored-multi-leg-journeys, rfuCEN1 rfuCEN2 rfuCEN3 rfuCEN4 networkSpecific1 networkSpecific2
PaymentMeansCode
The means by which the payment is affected
PaymentMeansCode ::= BIT STRING (SIZE(5)) mmmm Payment means (5 bits) :
PaymentModeCode
The payment mode identifies the timing of actual money transfer (e.g ahead of or after the event)
PaymentModeCode ::= BIT STRING (SIZE(2)) pp Payment mode (2 bits) :
‘01’B : prepayment, (payment is affected in advance of travel)
‘10’B : postpayment, (payment is affected after travel, possibly in back office)
‘11’B : trippayment (payment is affected at the end of a trip, i.e at check out)
PaymentScopeCode
The payment scope refers to the application extent of the payment method
PaymentScopeCode ::= BIT STRING (SIZE(4)) ssss Payment Scope (4 bits) :
‘0001’B : Inter-Sector (Multi-purpose) International,
PaymentUnit
The designation of a currency is defined by ISO 4217, utilizing the ISO numeric representation Additionally, this code can represent a company-specific token or a 'charging unit code' commonly used in freight.
'0xxx’H Currency in main units,
‘1xxx’H Currency in minor units of 10
'2xxx’H Currency in minor units of 100 ('cents'),
'3xxx’H Currency in minor units of 1000,
'4xxx’H Currency in 'major' units / 10,
'5xxx’H Currency in 'major' units / 100,
'6xxx’H Currency in 'major' units / 1000,
'7xxx’H Currency in 'major' units / 10000,
'8xxx’H Currency in 'major' units / 100000 xxx BCD representation of Currency as defined in ISO 4217
'9xxx’H Tokens : xxx Purse Provider specific coding
'Axxx’H Charging Unit Codes denoting quantification of the service provided
SeatPositionCode
To identify the position of the passenger seat with respect to the direction of travel
The SeatPositionCode is an ENUMERATED type that defines various seating orientations, including unspecified (0), facing the direction of travel (1), back to the direction of travel (2), and airline (3) for fixed positions Additionally, it includes relative positions such as facing right (4) and facing left (5) in relation to the direction of travel, as well as rfuCEN (6) and networkIdSpecific (7).
STRLoadCode
Indicates how the STR is loaded
STRLoadCode ::= ENUMERATED { unspecified (0), threshold-autoload (1), internal-autoload (2), load from another value source loaded-by-user (3), pre-selected-autoload (4), periodic-autoload (5), rfuCEN2 (6), rfuCEN3 (7)
UrbanAddOnCode
Indicates if a contract can be used for an urban journey in addition to the principle journey
UrbanAddOnCode ::= ENUMERATED { unspecified (0), urban-at-origin (1), urban-at-destination (2), urban-at-both (3), interchange (4), rfuCEN1 (5), rfuCEN2 (6), rfuCEN3 (7)
ValidationModelCode
Defines the validation model i.e CICO, CI-Destination, BIBO
ValidationModelCode ::= ENUMERATED { unspecified manual-preselection-immediately-validated manual-preselection-validation-required cico bibo cibo wiwo rfuCEN1
7 Transport and Travel Payment related data elements
AccompaniedBy
Defines the accompanying persons, objects or animals under the contract
AccompaniedBy::= SEQUENCE { accompaniedByType ProfileCodeNetwork, accompaniedByNumber NumberOfCompanions
AccountNumber
The reference for a central account
AmountPaid
AppDepositRefundableFlag
It indicates whether a deposit taken when the application was loaded is refundable without reference to the product owner
0 = non refundable without referral, 1 = refundable
AutoloadEndDate
The last date upon which an autoload facility may be used
AutoloadStartDate
The first date upon which an autoload facility may be used
AutoRenewFlag
A flag indicating whether auto-renew is enabled
Balance
Amount remaining e.g in a purse or a stored travel rights accumulator
CompanionAllowedFlag
A flag indicating that, under the contract, a companion is allowed to travel at the same fare as the person entitled to travel No other evidence is required for the companion
CountOfCharges
The cumulative count of CTA charge transactions
CountOfCoupons
The running total of coupons remaining after the event (which is either additive or subtractive)
CountOfJourneyLegs
The accumulative number of individual rides making up the overall journey for the specific journey purpose
The accumulative number of journeys until reset
The accumulative number of journeys until reset Period is defined according to NetworkID
The number of coupons to be loaded during an autoload event
Number of coupons deducted at this event
Number of coupons loaded into the application
Sum of the fare values for a number of transactions
A journey counter, which is loaded with the number of journeys purchased upon ticket creation, and is decremented each time a journey is made
A flag indicating whether a deposit may be refunded
Destination is the designated end point of the journey under the contract The point in this context may be a zone, a bus-stop, a station, etc
Value Assignment: NetworkId specific value
Level for the actual calculation of the discount in the fare algorithm The data refers to a table held in the CAD
Value Assignment: NetworkId specific value
The 'Travel Dossier' maintained by the travel product retailer serves as an electronic record of various travel-related contracts, such as flights, train journeys, and hotel bookings, facilitating post-sale transactions.
Value Assignment: NetworkId specific value
The value deducted from a stored value or purse at check in (in a CICO environment) to ensure any payment in case of forgotten check out
The DynamicDiscount parameter is a dynamically calculated value that influences the final discount calculation for a specific product, taking into account factors such as the number of kilometers, rides, zones, and stops This parameter can also be combined with additional data, including the period and date, and is updated with each transaction The format for this parameter is defined as DynamicDiscount ::= OCTET STRING(SIZE(4)).
The date upon which a ticket or entitlement expires, expressed as an offset from a contract expiry date defined elsewhere
The amount of fare deducted
A flag indicating that an operator has issued a ticket without collecting all or part of the fare, at his own risk
The number of interchanges permitted between the first boarding point and the last alighting point of a single journey
Value Assignment: NetworkId specific value and unit
JourneyRun identifies the specific service which the customer is permitted to use by the product, e.g., a train number or trip number
Value Assignment: NetworkId specific value
Identifier for a public transport line
Amount for loading to stored value or to a credit account May be used for AutoloadAmount and AutotopupAmount
Identifies the holder within a loyalty scheme
Value Assignment: NetworkId specific value
An identifier for a loyalty scheme
Indicates that the sale price has been determined manually, rather than being calculated by the ticketing system
The maximum value of an account
The maximum number of charges to an account which may be made in a charge period MaxNumberOfCharges ::= Quantity
Give the maximum number of journeys allowed each day of the week
Maximum number of journeys permitted under the contract When the maximum number of journeys has been completed, the contract may no longer be used
The absolute minimum value of an account Below this no action will be possible
NotVia is a point through which the journey shall not pass In public transport this could be an interchange point
Value Assignment: NetworkId specific value
The number of accompanying persons, animals, objects
The number of concessionary adults in a party
The number of concessionary children in a party
The number of concessionary passengers in a party NumberOfConcessionaryPassengers ::= Quantity
The number of passbacks allowed until the anti-passback rule applies
Origin is the designated starting point of the journey under the contract The point in this context may be a zone, a bus-stop, a station, a toll plaza, etc
Value Assignment: NetworkId specific value
A flag indicating whether the accommodation has been overbooked
The discount or discounted amount as indicated by DiscountLevel
Number of minutes for which anti-passback applies following a card transaction
Identification of the means of payment used, e.g credit card number, warrant number, entitlement-Id, purse-Id, cash etc Used for controlling refunds
When the flag is set to one (1), the associated contract will take precedence over any other payment methods linked to the card However, this flag cannot be activated if another contract already has a similar flag set to one.
PaymentProvider is the identity of provider of the payment instrument which is being offered for payment PaymentProvider ::= NetworkSpecificCompanyId
General construct describing a method of payment, i.e the combination of transaction mode code, payment means code, payment mode code and payment scope code
Where tt is TransactionModeCode pp is PaymentModeCode mmmmm is PaymentMeansCode ssss is PaymentScopeCode
PeriodJourneys refers to the number of journeys permitted within a specific timeframe for each product While this period is typically set to one day, there is flexibility to accommodate other durations, such as a week or a month.
Data element which indicates a nominal monetary value
Price ::= SEQUENCE { priceAmount Amount, priceVATAmount Amount, pricePaymentUnit PaymentUnit
} priceAmount is the value of the price, the unit of which is specified in pricePaymentUnit The priceAmount is assumed to always include VAT
PriceVATAmount is the value of the tax pricePaymentUnit is the unit in which the price and the tax is expressed
This element indicates a max or min level of the price for a journey The number corresponds to the level in a specific amount of money in the front-office system
Static fixed parameter that refers to a table held within the CAD to determine the corresponding pricing rule PricingLevel ::= INT1
Value Assignment: NetworkId specific value
Date of loading or renewing the contract
A flag is used to indicate that a paper receipt has been issued for the contract sale, ensuring that the holder cannot print the same receipt multiple times or reclaim VAT more than once.
A flag indicating whether a receipt shall be printed, when appropriate, if the POST is capable of this ReceiptToPrintFlag ::= Flag
The identification of a reference for a reservation
Value Assignment: NetworkId specific value
Route is the reference to the allowed route, (including route variants,) to be used under the contract As an example, this may be a public transport route or a motorway link
Value Assignment: NetworkId specific value
RouteVariant is a qualifier defining the specific route variant allowed under the contract The route of which this is a variant referenced by the route
Value Assignment: NetworkId specific value
The alphanumeric reference of a seat
Value Assignment: NetworkId specific value
The numeric reference of a seat
A ticket is marked as used when it is applied to a specific service operator's service during a journey that involves multiple operators Bit 0 is activated when the ticket is utilized on the first service operator's service.
1 on the second service operators service, and so on
A flag indicating that smoking is permitted in the allocated accommodation where 1 indicates smoking SmokingFlag ::= Flag
Identifies a specific instance of an STR contract The value is STR network specific and shall be unique within that context
Value Assignment: NetworkId specific value
Company that is responsible for the management of travel rights stored in the application
The value of a STR transaction is determined by its impact on the STR's worth; a transaction that enhances the value of STR will be recorded as positive, while one that diminishes its value will be noted as negative.
A tariff identifier, also known as a coding fare, is used for public transport trips to reference a specific fare This identifier is crucial when a pre-purchased ticket remains valid for a certain distance after a fare increase, as it links to information in the CAD prior to the increase Each identifier is unique and specific to the transport network it pertains to.
Value Assignment: NetworkId specific value
The value of a threshold amount related to an account serving as a trigger for an action, e.g at which autoreload of the account takes place
A flag indicating whether a ticket shall be printed, when appropriate, if the POST is capable of this TicketToPrintFlag ::= Flag
A flag indicating whether a ticket may be transferred to a person other than the person to whom it was sold TicketTransferFlag ::= Flag
A ticket that is valid for multiple journey legs requires that each subsequent leg begins within a specified timeframe of the first leg's start This timeframe is defined in 30-second intervals, including the duration of previous journey legs The countdown begins at the time of ticket validation, and any journey legs that start after this period has elapsed will be considered a new journey.
The numeric reference of a train
Value Assignment: NetworkId specific value
For tickets that cover multiple journey legs, this element specifies the maximum duration allowed for interruptions or transfers between legs, measured in minutes.
A ticket that is valid for multiple journey legs allows for a transfer time between the start of one leg and the next, provided the subsequent leg begins within a specified timeframe This transfer time is measured in minutes and begins counting from the moment of ticket validation, including the duration of any preceding journey legs If a journey leg starts after this transfer time has elapsed, it will be considered a new journey.
The identification of a travel service
Value Assignment: NetworkId specific value
The system tracks the number of journeys for each day of the week, allowing for two applications: documenting actual trips taken on specific days or setting limits on the maximum number of journeys allowed each day The data structure, TripsPerDayOfWeek, is defined as a set of eight integers, with the first integer representing Monday and the second integer representing Tuesday.
seventh INTS for Sunday eighth INTS for special days, network specific (such as public holidays)
Assumes max 15 trips per day The total size of the element is four bytes
The percentage of the VAT is expressed in value of 0,01
Via is a point through which the journey shall pass In public transport this could be an interchange point Via ::= LocationIdentifier
Value Assignment: NetworkId specific value
An identifier of a geographical area
Value Assignment: NetworkId specific value
In a star-based zonal system, the ZoneCount indicates the number of zones where a product is valid, with a value of zero signifying that the product is restricted to the home zone only The home zone can be defined through ZoneID, ZoneMap, or by implication.
A bit mapped element consists of bits that correspond to specific zones, each of which can be detailed in a table within the CAD The first bit represents the least significant bit of the least significant byte, while the 24th bit represents the most significant bit of the most significant byte When a bit is set to one (1), it signifies that travel within the associated zone is allowed; conversely, a bit set to zero (0) indicates that travel is not permitted.
8 Data elements for low memory capacity ICs
Data elements intended for use in ICs where memory capacity is limited and where the size of data elements is critical
A flag indicating whether the contract applies to an adult or a child
A flag indicating the class of accommodation
A flag indicating EURO or the home currency
It indicates whether expiry time is 23:59 or some other time
ExpiryTimeIndicatorCode ::= ENUMERATED { expires-at-23-59 (0), expires-at-contract-provider-defined-time (1) }
A flag indicating whether data in a following location identifier element defines an origin or a destination Only used when there is no explicitly defined data element representing origin or destination
0 = location identifier defines an origin, 1 = location identifier defines a destination
Indicates whether a ticket is invalid at peak times
0 = valid at all times, 1 = valid off-peak only
A bitmap designed for specific product applications includes one-time programmable memory, where each bit signifies a validity item defined by the product owner, such as a journey When a validity item is utilized, the corresponding bit transitions from its initial state to a programmed state, indicating its usage.
A flag indicating whether a contract is valid on all days or on weekdays only
0 = valid on all days, 1 = valid on weekdays only
Shall be according to EN 1545-1:2005, Clause 9
CountOfJourneysPerPeriod
The accumulative number of journeys until reset Period is defined according to NetworkID
CouponsAutoload
The number of coupons to be loaded during an autoload event
CouponsDeducted
Number of coupons deducted at this event
CouponsLoaded
Number of coupons loaded into the application
CumulativeFare
Sum of the fare values for a number of transactions
DebitingAmount
DecrementedCountOfJourneys
A journey counter, which is loaded with the number of journeys purchased upon ticket creation, and is decremented each time a journey is made
Deposit
DepositRefundableFlag
A flag indicating whether a deposit may be refunded
Destination
Destination is the designated end point of the journey under the contract The point in this context may be a zone, a bus-stop, a station, etc
Value Assignment: NetworkId specific value.
DiscountLevel
Level for the actual calculation of the discount in the fare algorithm The data refers to a table held in the CAD
Value Assignment: NetworkId specific value.
DossierId
The 'Travel Dossier' maintained by the travel product retailer serves as an electronic record of various travel-related contracts, such as flights, train journeys, and hotel bookings, facilitating post-sale transactions.
Value Assignment: NetworkId specific value.
DownPayment
The value deducted from a stored value or purse at check in (in a CICO environment) to ensure any payment in case of forgotten check out
DynamicDiscount
The DynamicDiscount parameter is a dynamically calculated value that influences the final discount calculation for a specific product, taking into account factors such as the number of kilometers, rides, zones, and stops, as well as additional data like the period and date This parameter is updated with each transaction and is defined as an OCTET STRING of size 4.
ExpiryDateOffset
The date upon which a ticket or entitlement expires, expressed as an offset from a contract expiry date defined elsewhere.
FareDeducted
The amount of fare deducted
FareNotChargedFlag
A flag indicating that an operator has issued a ticket without collecting all or part of the fare, at his own risk
InterchangesAllowed
The number of interchanges permitted between the first boarding point and the last alighting point of a single journey
JourneyDistance
Value Assignment: NetworkId specific value and unit.
JourneyRunId
JourneyRun identifies the specific service which the customer is permitted to use by the product, e.g., a train number or trip number
Value Assignment: NetworkId specific value.
LineId
Identifier for a public transport line
LoadAmount
Amount for loading to stored value or to a credit account May be used for AutoloadAmount and AutotopupAmount
LoyaltyMembershipId
Identifies the holder within a loyalty scheme
Value Assignment: NetworkId specific value.
LoyaltyPoints
LoyaltySchemeId
An identifier for a loyalty scheme
ManualPricingFlag
Indicates that the sale price has been determined manually, rather than being calculated by the ticketing system
MaxAmountLimit
The maximum value of an account
MaxNumberOfCharges
The maximum number of charges to an account which may be made in a charge period MaxNumberOfCharges ::= Quantity
MaxTripsPerDayOfWeek
Give the maximum number of journeys allowed each day of the week
MaxValidJourneys
Maximum number of journeys permitted under the contract When the maximum number of journeys has been completed, the contract may no longer be used
MinAmountLimit
The absolute minimum value of an account Below this no action will be possible.
NotVia
NotVia is a point through which the journey shall not pass In public transport this could be an interchange point
Value Assignment: NetworkId specific value.
NumberOfAdults
NumberOfChildren
NumberOfCompanions
The number of accompanying persons, animals, objects
NumberOfConcessionaryAdults
The number of concessionary adults in a party
NumberOfConcessionaryChildren
The number of concessionary children in a party
NumberOfConcessionaryPassengers
The number of concessionary passengers in a party NumberOfConcessionaryPassengers ::= Quantity
NumberOfPassbacks
The number of passbacks allowed until the anti-passback rule applies
Origin
Origin is the designated starting point of the journey under the contract The point in this context may be a zone, a bus-stop, a station, a toll plaza, etc
Value Assignment: NetworkId specific value.
OverbookingIndicator
A flag indicating whether the accommodation has been overbooked
PartFareAmount
The discount or discounted amount as indicated by DiscountLevel
PassbackTime
Number of minutes for which anti-passback applies following a card transaction
PassengerTotal
PaymentMeansId
Identification of the means of payment used, e.g credit card number, warrant number, entitlement-Id, purse-Id, cash etc Used for controlling refunds
PaymentMeansPriorityFlag
When the flag is set to one (1), the associated contract will take precedence over any other payment methods linked to the card However, this flag cannot be activated if another contract already has a similar flag set to one.
PaymentProvider
PaymentProvider is the identity of provider of the payment instrument which is being offered for payment PaymentProvider ::= NetworkSpecificCompanyId
PayMethod
General construct describing a method of payment, i.e the combination of transaction mode code, payment means code, payment mode code and payment scope code
Where tt is TransactionModeCode pp is PaymentModeCode mmmmm is PaymentMeansCode ssss is PaymentScopeCode
PeriodJourneys
PeriodJourneys refers to the maximum number of journeys permitted within a specific timeframe, which varies by product Typically, this period is set to one day, but there is flexibility to accommodate other durations, such as a week or a month.
Price
Data element which indicates a nominal monetary value
Price ::= SEQUENCE { priceAmount Amount, priceVATAmount Amount, pricePaymentUnit PaymentUnit
} priceAmount is the value of the price, the unit of which is specified in pricePaymentUnit The priceAmount is assumed to always include VAT
PriceVATAmount is the value of the tax pricePaymentUnit is the unit in which the price and the tax is expressed.
PriceModificationLevel
This element indicates a max or min level of the price for a journey The number corresponds to the level in a specific amount of money in the front-office system
PricingLevel
Static fixed parameter that refers to a table held within the CAD to determine the corresponding pricing rule PricingLevel ::= INT1
ProductId
Value Assignment: NetworkId specific value.
ProductLoadDateStamp
Date of loading or renewing the contract
ReceiptPrintedFlag
The flag signifies that a paper receipt has been generated for the contract sale, ensuring that the holder cannot print the same receipt multiple times or reclaim VAT more than once.
ReceiptToPrintFlag
A flag indicating whether a receipt shall be printed, when appropriate, if the POST is capable of this ReceiptToPrintFlag ::= Flag
ReservationReferenceId
The identification of a reference for a reservation
Value Assignment: NetworkId specific value.
RouteId
Route is the reference to the allowed route, (including route variants,) to be used under the contract As an example, this may be a public transport route or a motorway link
Value Assignment: NetworkId specific value.
RouteVariantId
RouteVariant is a qualifier defining the specific route variant allowed under the contract The route of which this is a variant referenced by the route
Value Assignment: NetworkId specific value.
SeatAlphaId
The alphanumeric reference of a seat
Value Assignment: NetworkId specific value.
SeatNumber
The numeric reference of a seat
ServiceOperatorUsageIndicator
A ticket is marked as used when it is applied to a specific service operator's service during a journey involving multiple operators Bit 0 is activated when the ticket is utilized on the first service operator's service.
1 on the second service operators service, and so on
SmokingFlag
A flag indicating that smoking is permitted in the allocated accommodation where 1 indicates smoking SmokingFlag ::= Flag
STRIdentifier
Identifies a specific instance of an STR contract The value is STR network specific and shall be unique within that context
Value Assignment: NetworkId specific value.
STRProvider
Company that is responsible for the management of travel rights stored in the application
STRTransactionAmount
The value of a STR transaction is determined by its impact on the STR's worth; a transaction that enhances the value of STR will be recorded as positive, while a transaction that diminishes its value will be noted as negative.
TariffNumber
A tariff identifier, also known as a coding fare, is used for public transport trips to reference a specific fare This identifier is crucial when a pre-purchased ticket remains valid for a certain distance after a fare increase, as it refers to information in the CAD prior to the increase Each identifier is unique and specific to the transport network it pertains to.
Value Assignment: NetworkId specific value.
ThresholdAmount
The value of a threshold amount related to an account serving as a trigger for an action, e.g at which autoreload of the account takes place
TicketToPrintFlag
A flag indicating whether a ticket shall be printed, when appropriate, if the POST is capable of this TicketToPrintFlag ::= Flag
TicketTransferFlag
A flag indicating whether a ticket may be transferred to a person other than the person to whom it was sold TicketTransferFlag ::= Flag
A ticket that is valid for multiple journey legs requires that each subsequent leg begins within a specified time frame from the start of the first leg This time limit is defined in 30-second intervals, which includes the duration of the previous journey legs The countdown starts at the time of ticket validation, and any journey legs that begin after this time limit has been exceeded will be considered a new journey.
The numeric reference of a train
Value Assignment: NetworkId specific value.
TransferTimeLimitFS
For tickets that cover multiple journey legs, this element specifies the maximum permissible duration for an interruption between journeys, as well as the maximum allowable transfer time measured in minutes from the end of the first journey leg to the start of the next.
TransferTimeLimitSS
A ticket that is valid for multiple journey legs allows for a transfer time between the start of one leg and the next, provided the subsequent leg begins within a specified timeframe This transfer time is measured in minutes and begins counting from the moment of ticket validation, including the duration of any preceding journey legs If a journey leg starts after this transfer time has elapsed, it will be considered a new journey.
TravelServiceId
The identification of a travel service
Value Assignment: NetworkId specific value.
TripsPerDayOfWeek
The system tracks the number of journeys for each day of the week, allowing for two applications: documenting actual trips taken on specific days or setting limits on the maximum number of journeys allowed each day The data structure, TripsPerDayOfWeek, is defined as a set of eight integers, with the first integer representing Monday and the second integer representing Tuesday.
seventh INTS for Sunday eighth INTS for special days, network specific (such as public holidays)
Assumes max 15 trips per day The total size of the element is four bytes.
VATAmount
VATPercentage
The percentage of the VAT is expressed in value of 0,01
Via
Via is a point through which the journey shall pass In public transport this could be an interchange point Via ::= LocationIdentifier
Value Assignment: NetworkId specific value.
Zone
An identifier of a geographical area
Value Assignment: NetworkId specific value.
ZoneCount
In a star-based zonal system, the ZoneCount indicates the number of zones where a product is valid If ZoneCount is zero, the product is restricted to the home zone only The home zone can be defined using ZoneID, ZoneMap, or through implicit specification.
A bit mapped element consists of bits that correspond to specific zones, each of which can be detailed in a table within the CAD The first bit represents the least significant bit of the least significant byte, while the 24th bit represents the most significant bit of the most significant byte When a bit is set to one (1), it signifies that travel within the associated zone is allowed; conversely, a bit set to zero (0) indicates that travel is not permitted.
8 Data elements for low memory capacity ICs
Data elements intended for use in ICs where memory capacity is limited and where the size of data elements is critical
A flag indicating whether the contract applies to an adult or a child
A flag indicating the class of accommodation
A flag indicating EURO or the home currency
It indicates whether expiry time is 23:59 or some other time
ExpiryTimeIndicatorCode ::= ENUMERATED { expires-at-23-59 (0), expires-at-contract-provider-defined-time (1) }
A flag indicating whether data in a following location identifier element defines an origin or a destination Only used when there is no explicitly defined data element representing origin or destination
0 = location identifier defines an origin, 1 = location identifier defines a destination
Indicates whether a ticket is invalid at peak times
0 = valid at all times, 1 = valid off-peak only
A bitmap designed for specific product applications includes one-time programmable memory, where each bit signifies a validity item defined by the product owner, such as a journey When a validity item is utilized, the corresponding bit transitions from its initial state to a programmed state, indicating its usage.
A flag indicating whether a contract is valid on all days or on weekdays only
0 = valid on all days, 1 = valid on weekdays only
Shall be according to EN 1545-1:2005, Clause 9
Version 1.0 of ENV 1545-1:1998 and ENV 1545-2:1998 has preserved backwards compatibility wherever feasible It is recommended that implementers of these standards assess their implementations to ensure compatibility with the current European Standard.
The value ranges and value sizes defined shall be used in the TransportPayment module when this module is subject for implementation
The following object identifier and object descriptor values are assigned to identify and describe the ASN.1 module TransportPayment : iso(1) identifiedorg(3) cen.std(0162) 0001 1 EN 1545 02(01545)}
TransportPayment2 OBJECT IDENTIFIER ::= { EN 1545-2 abstractsyntax(1) transportPaymentl2
“EN 1545 ASN.1 Module for Transport Payment V2”
Pretty-printed by Asnp, the pretty-printer of France Telecom R&D
TransportPayment2 DEFINITIONS AUTOMATIC TAGS ::BEGIN
SignedAmount, Amount, ReferenceIdentifier, Length, INT1, INT2, INT3, INT4, INTS, INTM, INTP, ProfileCodeNetwork, IAI, ReferenceNumber, Flag, DateStamp, Counter, LocationIdentifier, Quantity,
NetworkSpecificCompanyId, UserActionCode, Percentage-2, LocationId, BitMap
AccommodationClassCode ::= ENUMERATED { unknown(0), first(1), second-standard-traveller(2), small(3), large(4), business(5), economy(6), club(7), enhanced-standard(8), premium(9), rfuCEN1(10), rfuCEN2(11), rfuCEN3(12), networkIdSpecific1(13), networkIdSpecific2(14), networkIdSpecific3(15)}
The AssistanceTypeCode is an ENUMERATED type that categorizes various forms of assistance, including unspecified (0), assistance for wheelchair users (1), visually impaired individuals (2), hearing impaired persons (3), and those with mobility impairments (4) It also includes support for persons accompanied by infants (5), unaccompanied minors (6), and individuals with mental handicaps (7) Additionally, there are reserved codes (rfuCEN1 to rfuCEN4) and specific network identifiers (networkIdSpecific1 to networkIdSpecific4) ranging from 8 to 15.
reduction-on-basis-of-a-kilometre-calculation (6),
reduction-dependant-on-the-used-mode-of-transport (7),
reduction-dependant-on-the-vehicle-class (8),
for-short-distance-bus-and-train-travel-up-to-50 km (9),
for-long-distance-train-travel (10),
for-long-distance-bus-travel (11),
JourneyTypeCode ::= ENUMERATED { unspecified(0), single(1), return(2), circular(3), rfuCEN1(4), rfuCEN2(5), networkIdSpecific1(6), networkIdSpecific2(7)}
LoyaltyTypeCode ::= ENUMERATED {undefined(0), oncard(1), centralAccount(2)} MultiProductTypeCode ::= ENUMERATED { stored-single-journey-legs(0), stored-multi-leg-journeys(1), rfuCEN1(2), rfuCEN2(3), rfuCEN3(4), rfuCEN4(5), networkSpecific1(6), networkSpecific2(7) } PaymentMeansCode ::= BIT STRING(SIZE (5)) PaymentModeCode ::= BIT
STRING(SIZE (2)) PaymentScopeCode ::= BIT STRING(SIZE (4)) PaymentUnit :: OCTET STRING(SIZE (2))
The SeatPositionCode is an ENUMERATED type that defines various seating orientations, including unspecified (0), facing the direction of travel (1), back to the direction of travel (2), and airline-specific positions (3) Additionally, it includes fixed positions such as facing right (4) and facing left (5), both relative to the direction of travel, as well as rfuCEN (6) and networkIdSpecific (7).
STRLoadCode ::= ENUMERATED { unspecified(0), threshold-autoload(1), internal-autoload(2), load from another value source loaded-by-user(3), pre-selected-autoload(4), periodic-autoload(5), rfuCEN2(6), rfuCEN3(7)}
UrbanAddOnCode ::= ENUMERATED { unspecified(0), urban-at-origin(1), urban-at-destination(2), urban-at- both(3), interchange(4), rfuCEN1 (5), rfuCEN2 (6), rfuCEN3 (7)}
ValidationModelCode ::= ENUMERATED { unspecified(0), manual-preselection-immediately-validated(1), manual- preselection-validation-required(2), cico(3), bibo(4), cibo(5), wiwo(6), rfuCEN1(7)}
AccompaniedBy ::= SEQUENCE { accompaniedByType ProfileCodeNetwork, accompaniedByNumber NumberOfCompanions}
Balance ::= SignedAmount CompanionAllowedFlag ::= Flag CountOfCharges :: Counter CountOfCoupons ::= Counter CountOfJourneyLegs ::= Counter
CouponsAutoload ::= Quantity CouponsDeducted ::= Quantity CouponsLoaded :: Quantity CumulativeFare ::= Amount DebitingAmount ::= Amount
FareNotChargedFlag ::= Flag InterchangesAllowed ::= Quantity JourneyDistance ::= Length JourneyRunId ::= ReferenceIdentifier LineId ::ReferenceIdentifier LoadAmount ::= Amount
MaxTripsPerDayOfWeek ::= TripsPerDayOfWeek MaxValidJourneys ::= Quantity MinAmountLimit ::= SignedAmount
NotVia ::= LocationIdentifier NumberOfAdults ::= Quantity NumberOfChildren ::= Quantity NumberOfCompanions ::= Quantity NumberOfConcessionaryAdults :: Quantity NumberOfConcessionaryChildren ::= Quantity
NumberOfConcessionaryPassengers ::= Quantity NumberOfPassbacks ::= Quantity Origin ::= LocationIdentifier OverbookingIndicator ::= Flag PartFareAmount ::= Amount PassbackTime ::= Quantity PassengerTotal ::= Quantity
PaymentMeansId ::= ReferenceIdentifier PaymentMeansPriorityFlag ::= Flag PaymentProvider ::= NetworkSpecificCompanyId Paymethod ::= BIT STRING(SIZE (13))
Price ::= SEQUENCE { priceAmount Amount, priceVATAmount Amount, pricePaymentUnit PaymentUnit}
TicketToPrintFlag ::= Flag TicketTransferFlag ::= Flag TimeAllowed ::Quantity TrainNumber ::= ReferenceNumber
TravelServiceId ::= ReferenceIdentifier TripsPerDayOfWeek ::= SET SIZE (8)
ExpiryTimeIndicatorCode ::= ENUMERATED { expires-at-23-59(0), expires-at-contract-provider-defined-time(1)}
LocationTypeFlag ::= Flag OffPeakOnlyFlag ::= Flag ValidityItem ::= BitMap WeekdayValidityFlag ::= Flag END
EN 1545-2 OBJECT IDENTIFIER ::= { iso(1) identifiedorg(3) cen.std(0162) 0001 1 EN 1545 02(01545)} TransportPayment2 OBJECT IDENTIFIER ::= {
“EN 1545 ASN.1 Module for Transport Payment V2”
The following assignments of tags are provided
ReferenceElement or type Tag # Tag spec Tag encoding