DC fulfillment BPM
There are two ways to ship orders at NewStore:
- DC or warehouse fulfillment
- Store fulfillment
During DC fulfillment, a DC or warehouse ships the order according to a fulfillment request sent by NewStore. See About order fulfillment for more details about the fulfillment process. The sending of fulfillment requests, and the receiving of the responses from the DC happens in the integration layer. See Integrating a fulfillment provider
The lifecycle of the fulfillment_request
entity during DC fulfillment
is represented by the diagram below using the BPMN notation ..
This diagram refers to events that are emitted as part of the event stream. See the entity model and the webhook.
Click here to download the BPMN image
Sending a fulfillment request
The fulfillment process begins when NewStore Omnichannel Cloud sends a
fulfillment request to a DC. When this happens, the
fulfillment_request.assigned
event is emitted.
Accepting the fulfillment request
If the DC accepts the request, no events are emitted from the platform.
When the DC starts shipping the item(s) of the request, the
fulfillment_request.items_completed
event is emitted.
Once NewStore receives confirmation from the DC that the items have been
shipped, the invoice.created
event is emitted.
Rejecting the fulfillment request
The DC may be unable to fulfill the order. This can happen immediately
after it received the fulfillment request or after it accepted the
fulfillment request. In both situations, the
fulfillment_request.items_failed
is emitted.
For orders fulfilled by a DC
, when an item is rejected in a
fulfillment request, the status of the item changes
to On Hold
in NewStore Omnichannel Manager. However, the rejected item
is processed in NewStore Omnichannel Cloud only after all the other
items in the fulfillment request have been processed.
Related topics