Home » NOVA Offer » NOVA Offer Data Types
ch.voev.nova.offer.datatypes
)Types / Enumerations:
Checkout parameters are used to define which additional information have to be provided by clients during the checkout process. These information do not have an impact on the price. Typically they have to be provided by the customer and contain details that e.g. are used on the "printed" ticket.
Type Details | Details |
---|---|
Abstract | true |
Properties / Associations
Name | Type | Multiplicity | Constraints | Description |
---|---|---|---|---|
multiplicity | CheckoutParameterMultiplicity | 1..1 | Multiplicity of the checkout parameter. |
Code for identifying a checkout parameter.
Type Details | Details |
---|---|
Alias | VerkaufsParameterCode |
Properties / Associations
Name | Type | Multiplicity | Constraints | Description |
---|---|---|---|---|
code | String | 1..1 | Code for identifying a checkout parameter. |
Type can be used to group a list of checkout parameter e.g. in case that exactly one out of a list parameters needs to be provided.
Type Details | Details |
---|---|
Parent Class | CheckoutParameter |
Properties / Associations
Name | Type | Multiplicity | Constraints | Description |
---|---|---|---|---|
groupingType | GroupingType | 1..1 | ||
checkoutParameters | CheckoutParameter | 1..* | @Size(min=2, max=UNLIMITED) | List of templates that belong to this group. Please be aware that currently there are no recursive structured checkout parameters, but this might happen in the future without prior notice. |
Type represents the ID of an offer.
Type Details | Details |
---|---|
Alias | AngebotsID |
Properties / Associations
Name | Type | Multiplicity | Constraints | Description |
---|---|---|---|---|
id | String | 1..1 | @Size(min=0, max=32) |
An offer selection represents the selection of one or more offers for exactly one passenger.
Properties / Associations
Name | Type | Multiplicity | Constraints | Description |
---|---|---|---|---|
offerIDs | OfferID | 1..* | List of offers that should be booked for a passenger. All selected offers must belong to the same offer lineup. | |
passengerID | ExternalReferenceID | 1..1 | ID of the passenger for which this offer selection is. |
Type contains all the information that are common for offers and bookable items. They define the business subject.
Properties / Associations
Name | Type | Multiplicity | Constraints | Description |
---|---|---|---|---|
salesPrice | Price | 1..1 | Price the customer has to pay for this offer. | |
validFrom | java.time.OffsetDateTime | 1..1 | Start data-time from which on the subject is valid for usage. | |
validUntil | java.time.OffsetDateTime | 1..1 | End data-time until which the subject is valid for usage. Date-time is not included. | |
validityDuration | Duration | 1..1 | Validity duration of the subject. | |
referenceDate | java.time.LocalDate | 0..1 | Reference date that was used during the offer calculation. The reference date is the "magic date" that has to be used for lookups for versioned objects. Due to that the reference date also has to be used by subsequent steps e.g. during the checkout process in case of lookups for versioned objects. Note to NOVA integrators: * From a NOVA client perspective the reference date should only be relevant in very rare cases. For all common cases NOVA will already return the ID of the version of an versioned object. | |
productNumber | ProductNumber | 1..1 | Number of the product on which this subject is based on. | |
productVariantID | ProductVariantID | 0..1 | ID of the product variant on which this subject is based. | |
productName | LocalizedString | 1..1 | Customer-friendly name of the product. | |
productVariantName | LocalizedString | 0..1 | Customer-friendly name of the product variant. | |
subjectDescription | LocalizedString | 1..1 | Customer-friendly description of the subject. | |
subjectDetail | LocalizedString | 0..1 | Customer-friendly details about the subject. | |
product | Product | 1..1 | Product on which the pricing subject is based on. | |
salesClient | NOVASalesClientInfo | 1..1 | NOVA Sales Client for which the pricing subject was created. | |
pricingSubjectType | PricingSubjectType | 1..1 | Categorization of the pricing subject. |
Type is used for checkout parameters that are used to gather additional information from NOVA clients.
The checkout parameter here is just a proxy for the full featured checkout parameter definition inside NOVA master data. Using the checkoutParameterDefinitionID
NOVA clients can lookup all information about the checkout parameter.
Type Details | Details |
---|---|
Alias | AngebotsVerkaufsParameterType |
Parent Class | CheckoutParameter |
Properties / Associations
Name | Type | Multiplicity | Constraints | Description |
---|---|---|---|---|
code | CheckoutParameterCode | 1..1 | Code of the checkout parameter. The code is only provided for debugging purposes. Please do not use the code to lookup the checkout parameter inside master data as this way its correct version cold not be resolved (use checkoutParameterDefinitionID instead). | |
checkoutParameterDefinition | CheckoutParameterDefinition | 1..1 | The checkout parameter definition inside NOVA master data. | |
defaultValue | String | 0..1 | Default value for the checkout parameter. This value will be used if none is provided during the checkout process. |
Enumeration defines the multiplicity of a checkout parameter. This information needs to be processed by client in order that it knows which information needs to be sent when creating a booking from an offer.
Name | Description |
---|---|
REQUIRED | Literal for required checkout parameters. |
OPTIONAL | Literal for optional checkout parameters. |
Enumeration defines the supported types of checkout parameters.
Please be aware that this type is a so called extensible enum. This means that additional literals might be added in the future and that this is considered to be a non-breaking / SemVer compliant change.
Name | Description |
---|---|
ADDRESS | |
BOOLEAN | |
COUNTRY_CODE | |
CUSTOMER_IDENTIFICATION | Checkout parameter is used to identify a customer by its TKID. Matching checkout parameter value type is CustomerIdentificationCheckoutParameterValue . |
DECIMAL | |
EMAIL | |
INTEGER | |
LANGUAGE_CODE | |
LICENSE_PLATE | |
LOCAL_DATE | |
LOCAL_DATETIME | |
LOCAL_TIME | |
PERSONALIZATION | Literal for checkout parameter that is used to gather information about a customer. Matching checkout parameter value type is PersonalizationCheckoutParameterValue . |
PHONE_NUMBER | |
TEXT | |
UNKNOWN | Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice. |
Enumeration defines all the stages of a checkout process in NOVA.
Name | Description |
---|---|
CREATE_BOOKING | A booking is created. This is the first step within the checkout process. |
FULFILLMENT | The fulfillment is used to issue all required documents (e.g. E-Ticket) for a bookable item. |
ISSUE_BOOKING | Within this process stage a booking and all its bookable items will be issued. After that, if required, the fulfillment (e.g. creation of PDF) can be done. |
CONFIRM_BOOKING | A booking is confirmed. This is the final step in the checkout process. As soon as a booking is confirmed it can not be canceled. If this is required then the refund process must be used. |
CANCEL_BOOKING |
Enumeration defines the logical operators that can be used to group checkout parameters.
Please also consider the multiplicity of a checkout parameter. If a checkout parameter has multiplicity OPTIONAL
then it is also valid to provide none.
Name | Description |
---|---|
AND | Literal for logical operator AND . AND means that all checkout parameters of a group have to be provided. |
XOR | Literal for logical operator XOR . XOR means that one checkout parameters of a group have to be provided. |
Enumeration defines the possible ways how a bookable item can be issued. The IssuingType
is not the same as the FulfillmentType
. However, the issuing type limits the possible fulfillment types.
Please be aware that this type is a so called extensible enum. This means that additional literals might be added in the future and that this is considered to be a non-breaking / SemVer compliant change.
Name | Description |
---|---|
PHYSICAL | Enum literal for physical issuing of tickets (aka printed on paper) |
DIGITAL | Enum literal for a digital issuing. In this case the customer is not really know. However, in order to reduce risk of misuse some identification criteria are connected with digital issuing. Most common case of digital issuing is classic PDF-based tickets. |
ACCOUNT | Enum literal for a account-based issuing. This means that the bookable item will be linked with an account. Here, it is important to understand that account-based ticketing does not necessarily means that a customer needs to be identified. NOVA also supports anonymous accounts. This kind of issuing should be used whenever a bookable item is sold to a customer that is logged in. Issuing type ACCOUNT also still allows to handout classic travel documents (PDF, Mail with QR code etc.) to the customer if this is still a requirement. |
UNKNOWN | Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice. |
Enumeration defines the types of passengers that are know to NOVA.
Please be aware that this type is a so called extensible enum. This means that additional literals might be added in the future and that this is considered to be a non-breaking / SemVer compliant change.
Name | Description |
---|---|
PERSON | |
DOG | |
BIKE | |
UNKNOWN | Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice. |
Type defines the pricing domains that are provided by NOVA.
Please be aware that this type is a so called extensible enum. This means that additional literals might be added in the future and that this is considered to be a non-breaking / SemVer compliant change.
Name | Description |
---|---|
PUBLIC_TRANSPORT | Pricing domain for public transport. |
PARKING | Pricing domain for parking of vehicles. |
RESERVATION | Pricing domain for public transport reservations. |
UNKNOWN | Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice. |
The pricing subject type serves as categorization of a pricing subjects. This might help clients within a sales process to implement a step by step sales process where different types of offers (grouped by their pricing subject) are sold in different steps.
Please be aware that this type is a so called extensible enum. This means that additional literals might be added in the future and that this is considered to be a non-breaking / SemVer compliant change.
Name | Description |
---|---|
PUBLIC_TRANSPORT | Literal for public transport tickets. |
PARKING | Literal for parking tickets. |
RESERVATION | Literal for reservations. |
ANCILLARY | Literal for ancillaries. |
UNKNOWN | Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice. |