Commerce Domain
Manage basket checkout and commercial interaction.
At a Glance
|
Count |
| Business Objects |
7 |
| Capabilities |
5 |
| Processes |
16 |
| Events |
34 |
| APIs |
6 |
| Validation Rules |
12 |
Object Relationships
erDiagram
BASKET_LINE }o--|| BASKET : "belongs-to"
BASKET ||--o{ BASKET_LINE : "contains"
CATALOGUE ||--o{ PRODUCT : "contains"
CATALOGUE }o..o{ CHANNEL : "references"
CHANNEL ||--o{ CATALOGUE : "contains"
CHANNEL ||..o{ BASKET : "creates"
PRODUCT }o--|| CATALOGUE : "belongs-to"
PRODUCT }o..o{ BASKET_LINE : "references"
SUBSCRIPTION ||--o{ BASKET : "contains"
Business Objects
| Object |
Classification |
Description |
⬡ Basket basket |
aggregate-root |
Commerce container holding intended purchases before order creation. |
◈ Basket Line basket-line |
entity |
Line-level item entry within a basket. |
⬡ Catalogue catalogue |
aggregate-root |
Curated collection of products made available for sale in one or more channels. Controls p… |
◈ Channel channel |
entity |
A defined commerce touchpoint through which customers can discover, select, and purchase p… |
◈ Product product |
entity |
Sellable item defined by a SKU. The atomic unit of commerce — referenced by every basket l… |
⬡ Receipt receipt |
aggregate-root |
Customer-facing transaction proof created from a completed sale, payment, return, or excha… |
⬡ Subscription subscription |
aggregate-root |
A recurring purchase agreement between a customer and the retailer, automatically generati… |
Capabilities
| Capability |
Archetype |
Outcome |
Catalogue Management catalogue-management |
management |
Product catalogues can be created, enriched, published, and scoped to channels s… |
Channel Management channel-management |
management |
Commerce channels can be configured, activated, and assigned catalogues and pric… |
Subscription Management subscription-management |
management |
Customers can create, manage, pause and cancel recurring purchase subscriptions … |
Basket Management basket-management |
operational |
Customers can build, modify and calculate a basket of intended purchases before … |
Checkout checkout |
operational |
A basket can be converted into a confirmed order by applying promotions, totals … |
Events
Created (4):
BasketCreated ProductCreated SubscriptionCreated BasketLineAdded
Transitioned (21):
BasketCheckedOut BasketCheckoutStarted BasketAbandoned BasketMerged ProductActivated ProductDeactivated CataloguePublished CatalogueArchived ChannelActivated ChannelDeactivated SubscriptionActivated SubscriptionRenewed SubscriptionPaused SubscriptionCancelled SubscriptionExpired CataloguePublished CatalogueUnpublished CatalogueArchived CatalogueRetired CheckoutStarted CheckoutCancelled
Updated (8):
BasketUpdated ProductUpdated CatalogueUpdated ChannelUpdated ProductSearchPerformed CatalogueSubmitted CatalogueApproved CatalogueRejected
Calculated (1):
BasketCalculated
Processes
- Checkout
checkout — A confirmed order is created with payment authorised, promotions applied and loy
- BOPIS
bopis — A customer can place an order online and collect it from a physical store on the
- Endless Aisle
endless-aisle — A store associate can sell items not physically present in-store and fulfil them
- Clienteling Sale
clienteling-sale — A store associate can complete a personalised assisted sale using customer histo
- Voucher Redemption
voucher-redemption — A customer can redeem a gift voucher or store credit as full or partial payment
- Reserve and Collect
reserve-and-collect — Customers can reserve items online and collect them in store without full paymen
- Self-Checkout
self-checkout — A customer can scan, bag, and pay for items independently at a self-service term
- Scan and Go
scan-and-go — Customer completes payment on their device or at an exit terminal without queuin
- Price List Update
price-list-update — A new price list is published and effective prices are propagated to all active
- Promotional Campaign Launch
promotional-campaign-launch — A promotional campaign is activated across targeted customer segments and channe
- Subscription Renewal
subscription-renewal — A subscription is renewed automatically, a new order is generated, payment is ca
- Catalogue Publish
catalogue-publish — A product catalogue update is validated, enriched with media assets, and publish
- Store Day Open
store-day-open — A store trading day is opened with cash float confirmed, staff tasks assigned, a
- Customer Consent Update
customer-consent-update — A customer's marketing and data-processing consent preferences are updated acros
- Loss Prevention Case Handling
loss-prevention-case-handling — An item or transaction anomaly is triaged and resolved with policy-controlled in
- Retail Media Attribution
retail-media-attribution — A sponsored offer is activated for eligible audiences and has its approved close
APIs
Applications
- POS
pos (system of engagement)
- eCommerce Platform
ecommerce-platform (system of engagement)
- Clienteling App
clienteling-app (system of engagement)
- Associate Workspace
associate-workspace (system of engagement)
Validation Rules
| Rule |
Type |
Applies To |
Severity |
checkout-requires-active-basket |
pre-condition |
checkout |
invariant |
checkout-requires-active-product |
pre-condition |
checkout |
invariant |
bopis-requires-store-inventory |
pre-condition |
bopis |
invariant |
bopis-requires-channel |
pre-condition |
bopis |
invariant |
reserve-and-collect-requires-reservation |
pre-condition |
reserve-and-collect |
invariant |
voucher-redemption-requires-valid-voucher |
pre-condition |
voucher-redemption |
invariant |
endless-aisle-requires-active-channel |
pre-condition |
endless-aisle |
invariant |
self-checkout-requires-active-terminal |
pre-condition |
self-checkout |
invariant |
loss-prevention-intervention-requires-policy |
pre-condition |
loss-prevention-case-handling |
invariant |
retail-media-requires-consent-aware-audience |
pre-condition |
retail-media-attribution |
invariant |
checkout-creates-order |
post-condition |
checkout |
invariant |
checkout-clears-basket |
post-condition |
checkout |
invariant |
Semantic Constraints
| Constraint |
Type |
Rule |
basket-may-have-lines |
association |
A Basket may contain zero or more Basket Lines. An empty basket is val… |
basket-line-references-product |
association |
Every Basket Line must reference exactly one Product. |
catalogue-must-have-products |
association |
A published Catalogue must contain at least one active Product. |
channel-must-have-catalogue |
association |
An active Channel must have at least one Catalogue assigned. A channel… |
product-owned-by-ecommerce-platform |
ownership |
Product catalogue management is typically owned by the eCommerce Platf… |
product-in-commerce-domain |
domain-containment |
The Product Business Object is owned by the Commerce domain. |
channel-in-commerce-domain |
domain-containment |
The Channel Business Object is owned by the Commerce domain. |
basket-cannot-convert-abandoned |
lifecycle-gate |
An abandoned basket cannot be directly converted to an order. It must … |
← Back to Domain Catalog