Domain is part of the generic checkout process of NOVA.
This domain does not have its on business logic. Instead it defines the API for so called checkout actions and validations which will be called by NOVA's booking implementation in order to trigger domain specific actions through a generic interface.
| NOVA Checkout Data Types | NOVA Checkout Service Model |
|---|---|
| - Checkout Data Types - Domain - Checkout Data Types - OpenAPI | - Checkout Service Model - Checkout Service Model - OpenAPI |
| Artifact | Icon | Maturity Level | since |
|---|---|---|---|
| NOVA Checkout Data Types | 🐔 | Crazy Chicken | |
| NOVA Checkout Service Model | 🐔 | Crazy Chicken |
| Artifact | Outgoing Dependencies | Incoming Dependencies |
|---|---|---|
| NOVA Checkout Data Types | - NOVA Common Data Types | - NOVA Booking Master Data - NOVA Offer Store Service Model - NOVA Checkout Service Model |
| NOVA Checkout Service Model | - NOVA Booking Data Types - NOVA Booking Service Model - NOVA Checkout Data Types - NOVA Common Data Types - NOVA Customer Data Types - NOVA Offer Data Types - NOVA System Problem |
This service defines a generic interface for actions that need to be executed during the checkout process.
The generic NOVA checkout process distinguishes between so called checkout validation and checkout actions. As the name implies, checkout validations describe a business validation that needs to be executed within the checkout process. Its result is rather simple: successful or not.
In addition there are also so called checkout actions. They are used for actions that need to be executed during the checkout process e.g. do some booking in external reservation systems or trigger a SwissPass card production. The result of a checkout action can also modify subject information and domain specific extensions of a bookable item e.g. the concrete seat number is assigned during the checkout process.
Purpose of this interface is to provide an generic API so that the checkout process implemented by NOVA Booking won't be "polluted" with business logic from other domains, does not need to know anything about external resources and can be dynamically extended.
| REST Path / Operation | Description |
|---|---|
/internal/checkout/{resource}:book [POST] book(CheckoutResourceKey, CheckoutActionRequest, SalesContext, IdempotencyHeader) | Operation will be called when a new booking is created. |
/internal/checkout/{resource}:issue [POST] issue(CheckoutResourceKey, CheckoutActionRequest, SalesContext, IdempotencyHeader) | Operation will be called when a booking is issued. |
/internal/checkout/{resource}:fulfill [POST] fulfill(CheckoutResourceKey, CheckoutActionRequest, SalesContext, IdempotencyHeader) | Operation will be called when a booking is fulfilled. |
/internal/checkout/{resource}:confirm [POST] confirm(CheckoutResourceKey, CheckoutActionRequest, SalesContext, IdempotencyHeader) | Operation will be called when a booking is confirmed. |
/internal/checkout/{resource}:cancel [POST] cancel(CheckoutResourceKey, CheckoutActionRequest, SalesContext, IdempotencyHeader) | Operation will be called when a booking is canceled. |
This service defines a generic interface for checkout validations that need to be done during the checkout process.
The generic NOVA checkout process distinguishes between so called checkout validation and checkout actions. As the name implies, checkout validations describe a business validation that needs to be executed within the checkout process. Its result is rather simple: successful or not.
For further details about please refer to CheckoutValidationService.
Purpose of this interface is to provide an generic API so that the checkout process implemented by NOVA Booking won't be "polluted" with business logic from other domains, does not need to know anything about external resources and can be dynamically extended.
| REST Path / Operation | Description |
|---|---|
/internal/checkout/{resource}:validate [POST] validate(CheckoutResourceKey, CheckoutValidationRequest, SalesContext) | Operation is called to execute a checkout validation using the passed input parameters. |
No breaking changes planned.
ch.voev.nova.checkout.datatypesch.voev.nova.checkout.servicemodelCheckoutActionService| Operation | Parameter | Description | Deprecated since | Planned to be removed |
|---|---|---|---|---|
fulfill(CheckoutResourceKey, CheckoutActionRequest, SalesContext, IdempotencyHeader) | Operation will be replaced by issues(...)` in the future. So please switch to that operation instead. | 3.0 | PI 2025-04 |
| Type | Attribute | Description | Deprecated since | Planned to be removed |
|---|---|---|---|---|
CheckoutActionExecutionInfo | ||||
updatedDomainExtension | Please use updatedDomainExtensions instead. | 2.6.0 | PI 23 | |
CheckoutActionPayload | ||||
domainExtension | Please use domainExtensions instead. | 2.6.0 | PI 23 | |
CheckoutValidationPayload | ||||
domainExtension | Please use domainExtensions instead. | 2.6.0 | PI 23 |