Home » NOVA Customer » NOVA Customer Data Types

NOVA Customer Data Types (Package ch.voev.nova.customer.datatypes)

Types / Enumerations:


Types

CKM

Customer-friendly identifier for customers. The CKM e.g. is printed on the SwissPass card.

CKM is represented here including separator and check digit (e.g. 118-089-376-0).


Properties / Associations

Name Type Multiplicity Constraints Description
value String 1..1 @Size(min=13, max=13)


Type is used to provide links to a customer with a certain role.


Properties / Associations

Name Type Multiplicity Constraints Description
customerRoleType CustomerRoleType 1..1 Type of the customer role.
customerID TKID 1..1 ID of customer that has the role.
customerInfo PartnerInfo 0..1


CustomerLinkDomainExtension

NOVA Domain extension to connect information about customers with objects from other domains.


Type Details Details
Parent Class DomainExtension


Properties / Associations

Name Type Multiplicity Constraints Description
customerLinks CustomerLink 0..*


Email

Data type is used to have a strong typing for emails instead of just strings.


Properties / Associations

Name Type Multiplicity Constraints Description
value String 1..1 @Email


LegalEntityInfo


Type Details Details
Parent Class PartnerInfo


Properties / Associations

Name Type Multiplicity Constraints Description
name String 1..1
additionalName String 0..1
contactPersonFirstName String 0..1
contactPersonFamilyName String 0..1


PartnerInfo


Type Details Details
Abstract true


Properties / Associations

Name Type Multiplicity Constraints Description
communicationLanguage LanguageCode 1..1 Preferred communication language of the partner.


PersonInfo

Type defines a light weighted representation of persons. So, it only contains its very basic data.


Type Details Details
Parent Class PartnerInfo


Properties / Associations

Name Type Multiplicity Constraints Description
familyName String 1..1 Family name of the person.
firstName String 1..1 First name of the person.
dateOfBirth java.time.LocalDate 0..1 Date of birth of the person.
title String 0..1
gender Gender 0..1


PersonalizationDomainExtension

NOVA Domain extension to connect personalization data with objects from other domains.


Type Details Details
Parent Class DomainExtension


Properties / Associations

Name Type Multiplicity Constraints Description
personalizationInfo PersonalizationInfo 1..1


PersonalizationInfo

Type represents personalization data that is used to identify a customer. Main purpose of personalization data is to be able to identify a customer in a organizational process e.g. during ticket authorization check.

Personalization data is not suitable to a identify a customer in fully automated processes.


Properties / Associations

Name Type Multiplicity Constraints Description
familyName String 1..1 Family name of the person.
firstName String 1..1 First name of the person.
dateOfBirth java.time.LocalDate 1..1 Date of birth of the person.


TKID

Type is used as a technical identification for customers. TKID objects are also intended to be used by external systems to reference NOVA Customers from the outside world.

NOVA will guarantee that the TKID of a customer will also be usable for lookups. However in cases where multiple customer entities are merged it might happen that there is more than one TKID for a customer.


Properties / Associations

Name Type Multiplicity Constraints Description
id String 1..1 @Size(min=0, max=36)



Enumerations

CommunicationType

Literals

Name Description
EMAIL
MOBILE_PHONE
LANDLINE_PHONE
UNKNOWN Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice.

CustomerDataElementType

Enumeration defines all the customer data elements.

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.

Literals

Name Description
POST_OFFICE_BOX
LANGUAGE Literal for language of a partner.
NAME Literal for name of a partner.
GENDER Literal for gender of a partner.
DATE_OF_BIRTH Literal for date of birth of a partner.
POSTAL_ADDRESS Literal for postal address of a partner.
LANDLINE_PHONE Literal for landline phone number of a partner.
EMAIL Literal for email of a partner.
MOBILE_PHONE Literal for mobile phone number of a partner.
UNKNOWN Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice.

CustomerRoleType

Enumeration defines the different roles that a customer might have.

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.

Literals

Name Description
BUYER Customer that bought an item e.g. a ticket
PASSENGER Customer that is allowed to use a ticket as passenger.
CONTRACT_OWNER Customer that is the owner of a contract.
PARENT
CONTACT_PERSON
FELLOW_PASSENGER
UNKNOWN Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice.

DataQualityCheck

Literals

Name Description
LANDLINE_PHONE_CHECK
MOBILE_PHONE_CHECK
EMAIL_CHECK
ADDRESS_CHECK
DUPLICATES_CHECK
BIRTHDATE_CHECK
UNKNOWN Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice.

DataQualityLevel

Enumeration defines the data quality levels that are known 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.

Literals

Name Description
INVALID We found out that the data is invalid. So it's better not used for any processes.
NOT_CHECKED Data was not checked at all.
NOT_CHECKED_EXTERNAL_SERVICE_NOT_AVAILABLE Data was not checked as an external service that was supposed to do the check was not available.
ENFORCED Data was not checked as an update was enforced by a client.
FORMAT_VALIDATED Data was checked using simple format validation.
REGEX_VALIDATED An regular expression was used to validated the data
CH_REGISTER_VALIDATED Applied for postal addresses using a service from Swiss Post.
DELIVERY_CHECKED This quality level is intended to be used for data elements that are used for communication like phone numbers or email addresses. For such cases it means that a delivery was successful.
TWO_FACTOR_USAGE Data is used fore 2 factor authentication.
MANUAL_ID_CHECK Data was checked using a manual ID check.
DIGITAL_ID_CHECK Data was checked using a digital ID check.
UNKNOWN Please be aware that this enum is an extensible enum. This means that new literals can be introduced without prior notice.

Gender

Enumeration defines the genders as they are supported by NOVA. Currently there are no rules in Switzerland in general about nonbinary persons.

For further details please check: https://www.admin.ch/gov/de/start/dokumentation/medienmitteilungen.msg-id-92335.html

However, as direct neighbor countries of Switzerland already have nonbinary gender, it is also prepared on NOVA side.

Literals

Name Description
FEMALE Literal for female persons.
MALE Literal for male persons.
NONBINARY Literal for persons with nonbinary gender. Currently this gender is not actively used on NOVA. As it is expected to be supported in the future it is available already today to avoid breaking changes in the future.
UNDEFINED Literal for case that gender is undefined / unknown.

PartnerType

Enumeration defines all types of partners.

Literals

Name Description
PERSON Literal for partners of type Person.
LEGAL_ENTITY Literal for partners of type LegalEntity.