Skip to content

Fulfillment Domain

Manage picking shipping pickup returns and exchanges.


At a Glance

Count
Business Objects 8
Capabilities 4
Processes 9
Events 42
APIs 7
Validation Rules 9

Object Relationships

erDiagram
    DELIVERY_SLOT }o--|| FULFILLMENT_ORDER : "belongs-to"
    FULFILLMENT_ORDER ||..|| SHIPMENT : "results-in"
    PICKING_TASK }o--|| FULFILLMENT_ORDER : "belongs-to"
    SHIPMENT_LINE }o--|| SHIPMENT : "belongs-to"
    SHIPMENT }o--|| FULFILLMENT_ORDER : "derives-from"
    SHIPMENT ||--o{ SHIPMENT_LINE : "contains"

Business Objects

Object Classification Description
Delivery Slot delivery-slot entity A time-bounded window during which a customer's order can be delivered to a nominated addr…
Exchange exchange aggregate-root Exchange request and execution record for replacing returned merchandise with alternative …
Fulfillment Order fulfillment-order aggregate-root Fulfillment-oriented grouping derived from an order for execution.
Picking Task picking-task aggregate-root An instruction to locate and collect specific items from a location to fulfil an order.
Return return aggregate-root Return request and execution record for merchandise or order value moving back from a cust…
Service Order service-order aggregate-root Customer commitment for repair, installation, maintenance, or other service associated wit…
Shipment shipment aggregate-root Fulfillment movement or collection unit used to complete customer delivery or pickup.
Shipment Line shipment-line entity Line-level item entry within a shipment.

Capabilities

Capability Archetype Outcome
Returns Management returns-management management Customer returns can be requested, authorised, received, inspected and processed…
Exchange Management exchange-management management Product exchanges can be requested, authorised and processed within the return a…
Service Order Management service-order-management management Service and repair commitments can be created, scheduled, fulfilled, and tracked…
Fulfillment Execution fulfillment-execution operational Orders can be picked, packed, shipped, delivered and collected through the physi…

Events

Created (8):
ReturnRequested ExchangeRequested RefundCreated ReturnCreated ShipmentCreated RefundInitiated PickingTaskCreated ServiceOrderCreated

Transitioned (32):
PickingStarted PickingCompleted ShipmentPacked ShipmentDispatched ShipmentDelivered ReturnAuthorized ReturnReceived ReturnInspected ReturnAccepted ReturnApproved ReturnRejected ReturnDispatched ReturnRefunded ReturnExchanged ExchangeAuthorized ExchangeCompleted AddressValidated FulfillmentOrderDispatched DeliverySlotReserved DeliverySlotConfirmed DeliverySlotReleased DeliverySlotExpired RefundCancelled ExchangeValidated ExchangeRefused ExchangeStarted ExchangeBalanceSettled ExchangeCompleted ExchangeCancelled PickingTaskCompleted ServiceOrderScheduled ServiceOrderCompleted

Updated (2):
ExchangeBalanceRequired ShipmentLabelGenerated

Processes

  • BOPIS bopisA customer can place an order online and collect it from a physical store on the
  • Endless Aisle endless-aisleA store associate can sell items not physically present in-store and fulfil them
  • Ship From Store ship-from-storeStore stock can be used to pick, pack and ship online orders directly to the cus
  • Ship To Store ship-to-storeWarehouse or supplier stock can be transferred to a store and made available for
  • Reserve and Collect reserve-and-collectCustomers can reserve items online and collect them in store without full paymen
  • BORIS borisA customer can return an online order at any physical store and receive a refund
  • Return Anywhere return-anywhereCustomers can return items to any store or channel regardless of the original pu
  • Exchange Anywhere exchange-anywhereCustomers can exchange items at any store regardless of the original purchase ch
  • Service and Repair Management service-and-repair-managementA service or repair commitment associated with a customer order is created, sche

APIs

Endpoint Method Service Capability
/fulfillment/orders/{id} GET track-order fulfillment-execution
/fulfillment/orders/{id}/dispatch POST ship-order fulfillment-execution
/returns POST request-return returns-management
/picking-orders POST generate-picking fulfillment-execution
/picking-orders/{id}/status PUT confirm-picking fulfillment-execution
/shipments/{id}/tracking GET track-order fulfillment-execution
/shipments/{id}/label POST ship-order fulfillment-execution

Applications

  • SIM sim (system of record)
  • WMS wms (system of record)
  • FMS fms (system of record)
  • POS pos (system of engagement)
  • Associate Workspace associate-workspace (system of engagement)
  • Service Management System service-management-system (system of record)
  • Carrier Platform carrier-platform (platform)

Validation Rules

Rule Type Applies To Severity
bopis-requires-store-inventory pre-condition bopis invariant
bopis-requires-channel pre-condition bopis invariant
ship-from-store-requires-routed-order pre-condition ship-from-store invariant
ship-to-store-requires-routed-order pre-condition ship-to-store invariant
reserve-and-collect-requires-reservation pre-condition reserve-and-collect invariant
boris-requires-order-with-items pre-condition boris invariant
return-anywhere-requires-return-window pre-condition return-anywhere constraint
exchange-anywhere-requires-closed-order pre-condition exchange-anywhere invariant
endless-aisle-requires-active-channel pre-condition endless-aisle invariant

Semantic Constraints

Constraint Type Rule
fulfillment-order-belongs-to-order association A Fulfillment Order must be derived from exactly one Order. Fulfillmen…
shipment-references-address association A Shipment must have exactly one delivery Address. Fulfillment without…
shipment-has-lines association A Shipment must contain at least one Shipment Line. An empty shipment …
picking-task-belongs-to-fulfillment-order association A Picking Task must belong to exactly one Fulfillment Order.
return-belongs-to-order association A Return must reference the original Order it relates to.
exchange-belongs-to-order association An Exchange must reference the original Order it is replacing.
shipment-in-fulfillment-domain domain-containment The Shipment Business Object is owned by the Fulfillment domain.
return-refund-requires-inspection lifecycle-gate A return cannot be refunded without inspection. Inspection determines …
return-cannot-reopen-rejected lifecycle-gate A rejected return cannot be re-approved in the same return lifecycle. …

← Back to Domain Catalog