capabilities:
# ── Customer ────────────────────────────────────────────────────────────────
- id: customer-identity
name: Customer Identity
domain: customer
classification: engagement
description: >
Establishes, verifies, and maintains a singular, persistent identity for each
customer across all touchpoints and channels. Provides the identity resolution
foundation on which personalisation, loyalty, consent management, and cross-channel
continuity depend. Includes registration, authentication, deduplication, and identity
merging workflows.
actors: [customer, store-associate, system]
outcome: Customers can be registered, authenticated and uniquely resolved across channels.
services: [register-customer, authenticate-customer, search-customer, merge-customer]
- id: customer-profile
name: Customer Profile
domain: customer
classification: engagement
description: >
Maintains and serves the authoritative, unified record of a customer's personal
data, contact information, communication preferences, and behavioural attributes.
Acts as the single source of truth for customer data consumed by personalisation,
CRM, clienteling, and loyalty capabilities.
actors: [customer, store-associate, marketing-manager, system]
outcome: Customer profile, preferences and contact data can be retrieved and maintained.
services: [retrieve-customer-profile, update-customer-profile, manage-customer-preferences]
- id: customer-consent
name: Customer Consent
domain: customer
classification: management
description: >
Records, maintains, and enforces the customer's explicit consent for data
processing, marketing communications, and data sharing, in compliance with GDPR
and equivalent regulations. Provides consent state to all downstream capabilities
that depend on lawful data processing grounds.
actors: [customer, compliance-officer, system]
outcome: Customer consent records can be created, updated and revoked in compliance with regulations.
services: [record-consent, update-consent, revoke-consent]
- id: customer-segmentation
name: Customer Segmentation
domain: customer
classification: intelligence
description: >
Classifies customers into named segments based on behavioural, transactional,
demographic, and lifecycle attributes. Segments are computed, assigned, and
propagated to marketing, promotions, pricing, and personalisation capabilities
to enable targeted and relevant customer experiences.
actors: [marketing-manager, data-analyst, system]
outcome: Customers can be segmented based on behaviour and attributes for targeting and personalisation.
services: [calculate-segment, assign-segment, retrieve-segment]
- id: clienteling
name: Clienteling
domain: customer
classification: engagement
description: >
Equips store associates with contextual customer intelligence — purchase history,
preferences, open orders, loyalty status, and wish-lists — at the point of
interaction. Enables associates to deliver proactive, personalised service in
physical stores and clienteling sessions, bridging digital and physical customer
relationships.
actors: [store-associate, customer]
outcome: Store associates can access customer history and record personalised interactions.
services: [retrieve-customer-history, create-clienteling-session, record-clienteling-interaction]
# ── Commerce ────────────────────────────────────────────────────────────────
- id: basket-management
name: Basket Management
domain: commerce
classification: operational
description: >
Manages the customer's pre-purchase selection across all channels. Handles basket
creation, item addition and removal, quantity adjustment, real-time price and
promotion recalculation, and basket persistence (saved, abandoned, merged).
Provides the consistent basket state that checkout, promotions, and inventory
reservation capabilities consume.
actors: [customer, store-associate, system]
outcome: Customers can build, modify and calculate a basket of intended purchases before checkout.
services: [create-basket, add-basket-item, remove-basket-item, calculate-basket, checkout-basket]
- id: checkout
name: Checkout
domain: commerce
classification: operational
description: >
Converts a confirmed basket into a placed order by orchestrating totals calculation,
promotion application, fulfilment option selection, payment authorisation, and
order creation. Represents the critical transaction boundary in the commerce flow;
checkout outcome is an authorised payment and a confirmed order record.
actors: [customer, store-associate, system]
outcome: A basket can be converted into a confirmed order by applying promotions, totals and payment authorisation.
services: [checkout-basket, calculate-totals, apply-promotions, authorize-payment]
# ── Order ───────────────────────────────────────────────────────────────────
- id: order-management
name: Order Management
domain: order
classification: management
description: >
Maintains the authoritative lifecycle of every customer order from creation through
closure. Manages order states (created, confirmed, in-fulfilment, shipped, delivered,
closed, cancelled), supports modification and cancellation within policy constraints,
and provides the order record that fulfilment, payment capture, and customer service
capabilities depend upon.
actors: [customer, customer-service-agent, system]
outcome: Orders can be created, validated, confirmed, modified, tracked and closed through their full lifecycle.
services: [create-order, validate-order, confirm-order, modify-order, cancel-order, track-order, close-order]
- id: order-orchestration
name: Order Orchestration
domain: order
classification: intelligence
description: >
Determines the optimal fulfilment strategy for each order by evaluating inventory
availability, proximity, cost, and service-level constraints across all fulfilment
nodes (DC, stores, drop-ship suppliers). Splits multi-line orders, routes lines to
nodes, and reassigns when exceptions arise — enabling unified commerce scenarios
such as Ship-from-Store and Endless Aisle.
actors: [system, operations-manager]
outcome: Orders can be split, routed and reassigned to optimal fulfilment locations based on inventory and constraints.
services: [split-order, route-order, reassign-fulfillment-location]
# ── Inventory ───────────────────────────────────────────────────────────────
- id: inventory-visibility
name: Inventory Visibility
domain: inventory
classification: intelligence
description: >
Provides a real-time, unified view of available-to-promise (ATP) stock across all
locations (DCs, stores, suppliers). Aggregates physical stock from WMS and store
inventory systems, applies reservation and safety-stock buffers, and exposes
queryable ATP to commerce, order orchestration, and clienteling capabilities.
actors: [system, operations-manager, store-associate]
outcome: Available-to-promise stock can be calculated and queried by location, SKU and channel in real time.
services: [check-availability, calculate-atp, retrieve-location-stock]
- id: inventory-reservation
name: Inventory Reservation
domain: inventory
classification: management
description: >
Manages soft and hard inventory reservations to prevent overselling during the
order and fulfilment lifecycle. Reserves stock at basket or checkout, confirms
reservations on order placement, releases on cancellation, and expires stale
reservations. Critical for click-and-collect, BOPIS, and Endless Aisle scenarios.
actors: [system]
outcome: Inventory can be soft-reserved, confirmed and released across the order and fulfilment lifecycle.
services: [reserve-inventory, confirm-reservation, release-reservation, expire-reservation]
- id: inventory-allocation
name: Inventory Allocation
domain: inventory
classification: management
description: >
Converts soft reservations into hard, node-specific inventory commitments bound
to a specific fulfilment location and order line. Manages reallocation when a
node is unable to fulfil and releases committed stock on order cancellation.
Operates downstream of order orchestration and upstream of fulfilment execution.
actors: [system, operations-manager]
outcome: Inventory can be hard-allocated, reallocated and released to fulfil specific order commitments.
services: [allocate-inventory, reallocate-inventory, release-allocation]
- id: store-inventory
name: Store Inventory
domain: inventory
classification: management
description: >
Manages the physical stock ledger within individual store locations. Handles
stock adjustments (sales, receipts, damages, write-offs), cycle and full counts,
inter-store transfers, and receiving of replenishment shipments. Provides the
store-level stock accuracy on which inventory visibility and allocation depend.
actors: [store-associate, store-manager, system]
outcome: Physical store stock levels can be adjusted, counted and transferred between locations.
services: [adjust-inventory, count-inventory, transfer-inventory]
# ── Fulfillment ─────────────────────────────────────────────────────────────
- id: fulfillment-execution
name: Fulfillment Execution
domain: fulfillment
classification: operational
description: >
Executes the physical or digital steps required to fulfil an order commitment:
pick, pack, label, dispatch, track, deliver, and collect. Supports warehouse-based,
store-based, and drop-ship fulfilment models. Provides fulfilment status events
that order management and customer-facing tracking surfaces consume.
actors: [warehouse-associate, store-associate, carrier, system]
outcome: Orders can be picked, packed, shipped, delivered and collected through the physical fulfilment chain.
services: [generate-picking, confirm-picking, pack-shipment, ship-order, deliver-order, collect-order]
- id: returns-management
name: Returns Management
domain: fulfillment
classification: management
description: >
Manages the end-to-end reverse logistics flow: return request, merchant
authorisation, customer shipping or in-store drop-off, physical receipt,
condition inspection, restock or disposal decision, and refund or store-credit
issuance. Supports in-store, courier, and drop-point return methods.
actors: [customer, store-associate, warehouse-associate, customer-service-agent, system]
outcome: Customer returns can be requested, authorised, received, inspected and processed to completion.
services: [request-return, authorize-return, receive-return, inspect-return, process-return]
- id: exchange-management
name: Exchange Management
domain: fulfillment
classification: management
description: >
Enables customers to exchange a purchased product for a different size, colour,
or item within the return flow. Orchestrates the linked return authorisation and
replacement order creation, managing inventory reservation for the exchange item
and ensuring correct payment delta handling (additional charge or refund).
actors: [customer, store-associate, customer-service-agent, system]
outcome: Product exchanges can be requested, authorised and processed within the return and fulfilment flow.
services: [request-exchange, authorize-exchange, process-exchange]
# ── Pricing ─────────────────────────────────────────────────────────────────
- id: pricing
name: Pricing
domain: pricing
classification: intelligence
description: >
Determines and applies the effective selling price for each product at the time
of basket calculation or checkout. Evaluates price lists by channel and customer
segment, applies markdown schedules, and ensures consistent pricing across
touchpoints. Provides the price inputs that promotions, basket management, and
checkout capabilities consume.
actors: [pricing-manager, system]
outcome: Selling price can be determined and applied based on price lists, rules and markdown schedules.
services: [retrieve-price, calculate-price, apply-price-list, calculate-markdown]
# ── Promotion ───────────────────────────────────────────────────────────────
- id: promotions
name: Promotions
domain: promotion
classification: operational
description: >
Evaluates and applies promotional discounts — percentage off, BOGOF, multi-buy,
basket threshold, and loyalty-linked offers — at the basket or order level.
Manages coupon validation and redemption. Exposes promotion eligibility to basket
management and checkout and records redemption events for analytics and loyalty
integration.
actors: [customer, marketing-manager, system]
outcome: Promotions and coupons can be evaluated and applied to a basket or order to deliver discounts.
services: [evaluate-promotions, validate-coupon, redeem-coupon]
- id: voucher-management
name: Voucher Management
domain: promotion
classification: management
description: >
Issues, validates, and redeems gift vouchers, e-gift cards, and store credits.
Manages voucher balance, partial redemption, and expiry. Operates as a payment
instrument alternative within the checkout flow and supports both digital and
physical voucher formats across all channels.
actors: [customer, store-associate, customer-service-agent, system]
outcome: Gift vouchers and store credits can be issued, validated, redeemed and cancelled.
services: [issue-voucher, validate-voucher, redeem-voucher, cancel-voucher]
# ── Loyalty ─────────────────────────────────────────────────────────────────
- id: loyalty
name: Loyalty
domain: loyalty
classification: engagement
description: >
Manages the transactional layer of the loyalty programme: member enrolment,
points accrual on purchase, points redemption at checkout, benefit calculation,
and tier upgrade evaluation. Provides real-time loyalty status to basket management,
checkout, and clienteling capabilities so that members receive the correct benefits
at every touchpoint.
actors: [customer, store-associate, system]
outcome: Members can be enrolled, earn points and benefits, and redeem rewards across channels.
services: [enroll-member, calculate-points, issue-points, redeem-points, calculate-benefits]
- id: loyalty-management
name: Loyalty Management
domain: loyalty
classification: management
description: >
Provides the programme configuration layer for the loyalty capability: defines
tier thresholds, accrual and redemption rates, earn rules by product category or
channel, member lifecycle policies (expiry, re-activation, merge), and the rewards
catalogue. Enables commercial and CRM teams to evolve the programme without
engineering intervention.
actors: [loyalty-manager, marketing-manager, system]
outcome: The loyalty programme configuration, tier definitions, accrual rules, and member lifecycle are managed.
services: [manage-loyalty-tiers, manage-accrual-rules, manage-member-lifecycle, manage-loyalty-catalogue]
# ── Payment ─────────────────────────────────────────────────────────────────
- id: payment-processing
name: Payment Processing
domain: payment
classification: operational
description: >
Processes all payment instrument types (card, digital wallet, BNPL, voucher,
loyalty points) in an acquirer- and PSP-agnostic manner. Handles authorisation,
capture, void, and refund operations, enforcing PCI-DSS scope boundaries.
Provides a normalised payment event stream that order management, loyalty, and
finance capabilities consume.
actors: [customer, store-associate, system, payment-provider]
outcome: Payments can be authorised, captured, voided and refunded independently of payment provider.
services: [authorize-payment, capture-payment, void-payment, refund-payment, settle-payment]
# ── Store ───────────────────────────────────────────────────────────────────
- id: store-operations
name: Store Operations
domain: store
classification: management
description: >
Governs the daily operational lifecycle of a physical store location: opening and
closing procedures, cash management, trading-day reconciliation, staff task
assignment and completion tracking, and appointment scheduling. Provides the
operational context that store inventory, fulfilment execution, and clienteling
capabilities require.
actors: [store-manager, store-associate, system]
outcome: Store trading days can be opened and closed and daily operational tasks can be assigned and completed.
services: [open-store-day, close-store-day, assign-store-task, complete-store-task]
# ── Catalogue ────────────────────────────────────────────────────────────────
- id: catalogue-management
name: Catalogue Management
domain: commerce
classification: management
description: >
Manages the full lifecycle of the product catalogue: product creation and
enrichment (descriptions, media, attributes, variants), assortment scoping by
channel or region, publication and unpublication workflows, and catalogue
versioning. Provides the product data foundation consumed by basket management,
pricing, promotions, and inventory capabilities.
actors: [merchandiser, product-manager, system]
outcome: Product catalogues can be created, enriched, published, and scoped to channels so that customers see the correct assortment per touchpoint.
services: [create-product, update-product, publish-catalogue, unpublish-catalogue, assign-catalogue-to-channel]
# ── Channel ──────────────────────────────────────────────────────────────────
- id: channel-management
name: Channel Management
domain: commerce
classification: management
description: >
Defines and manages commerce channels (in-store, eCommerce, mobile app,
marketplace, kiosk) and their configuration: catalogue scope, price list
assignment, fulfilment options, payment methods, and operational hours.
Enables channel-specific trading rules without duplicating product or pricing
data across touchpoints.
actors: [channel-manager, operations-manager, system]
outcome: Commerce channels can be configured, activated, and assigned catalogues and price lists so that each touchpoint operates with the correct assortment and pricing rules.
services: [create-channel, activate-channel, deactivate-channel, assign-catalogue-to-channel, assign-price-list-to-channel]
# ── Commerce (Subscription) ─────────────────────────────────────────────────
- id: subscription-management
name: Subscription Management
domain: commerce
classification: management
description: >
Enables customers to subscribe to recurring product deliveries at a defined
frequency (weekly, monthly) with automatic order generation, payment capture,
and fulfilment scheduling. Manages the subscription lifecycle: activation, pause,
skip, modification, and cancellation. Supports physical goods subscriptions as
well as digital access and membership plans.
actors: [customer, system, customer-service-agent]
outcome: Customers can create, manage, pause and cancel recurring purchase subscriptions that automatically generate orders at a defined frequency.
services: [create-subscription, activate-subscription, pause-subscription, cancel-subscription, renew-subscription]
# ── Tier 2 AI-enabled Store Extensions ─────────────────────────────────────
- id: guided-selling
name: Guided Selling
domain: customer
classification: engagement
description: >
Assists store associates and customers with context-aware product discovery,
comparison, and next-best-action recommendations. Uses customer consented
profile data, product knowledge, and current availability while preserving
associate judgement and the customer's ability to decline a recommendation.
actors: [customer, store-associate, system]
outcome: Associates can deliver explainable, context-aware recommendations that improve the assisted selling experience.
services: [generate-recommendation, record-recommendation-response]
- id: decision-intelligence
name: Decision Intelligence
domain: customer
classification: intelligence
description: >
Produces governed recommendations and automations for commerce workflows.
Records purpose, evidence, policy, confidence, human approval or override,
and execution outcome so that automated decisions remain auditable and do
not become the system of record for customer, order, payment, or inventory data.
actors: [store-associate, store-manager, operations-manager, system]
outcome: Material automated decisions can be proposed, reviewed, overridden, executed, and audited.
services: [propose-decision, approve-decision, override-decision, execute-decision]
- id: social-intelligence
name: Social Intelligence
domain: customer
classification: intelligence
description: >
Produces governed, aggregated insights from consented customer feedback and
social interactions. Keeps source evidence and purpose separate from the
customer master record and exposes insights for service and experience improvement.
actors: [marketing-manager, customer-service-agent, data-analyst, system]
outcome: Consent-aware sentiment and engagement insights can inform customer experience decisions without becoming customer source data.
services: [produce-sentiment-insight]
- id: automated-item-identification
name: Automated Item Identification
domain: inventory
classification: intelligence
description: >
Identifies items and detects identification anomalies at retail touchpoints
using hardware- and provider-agnostic methods such as barcode, RFID, or
computer vision. Supplies evidence to inventory and loss-prevention workflows
without making technology-specific implementation claims.
actors: [customer, store-associate, system]
outcome: Items and identification anomalies can be resolved in real time at store touchpoints.
services: [identify-item, detect-identification-anomaly]
- id: service-order-management
name: Service Order Management
domain: fulfillment
classification: management
description: >
Manages service, repair, installation, and maintenance commitments associated
with a customer order. Coordinates eligibility, scheduling, execution status,
customer communication, and final completion across physical and digital channels.
actors: [customer, store-associate, customer-service-agent, operations-manager, system]
outcome: Service and repair commitments can be created, scheduled, fulfilled, and tracked alongside product orders.
services: [create-service-order, schedule-service-order, complete-service-order]
- id: retail-media-management
name: Retail Media Management
domain: promotion
classification: intelligence
description: >
Manages sponsored offers and closed-loop attribution across approved retail
touchpoints. Enforces audience eligibility and consent before an offer is
served, and records exposure and conversion separately from core promotion
calculation and pricing decisions.
actors: [marketing-manager, data-analyst, system]
outcome: Sponsored offers can be activated, served, and attributed using consent-aware first-party commerce signals.
services: [activate-sponsored-offer, record-sponsored-offer-exposure, attribute-sponsored-offer]
- id: loss-prevention
name: Loss Prevention
domain: store
classification: management
description: >
Detects, triages, investigates, and resolves transaction and item-handling
anomalies that may result in retail loss. It separates a detection signal from
a case outcome, applies authorised intervention policy, and records false
positives to protect legitimate customer journeys.
actors: [store-associate, store-manager, operations-manager, system]
outcome: Potential retail loss events can be investigated and resolved with auditable, proportionate intervention.
services: [detect-transaction-anomaly, open-loss-prevention-case, resolve-loss-prevention-case]