Skip to main content

Store fulfillment BPM

There are two ways to ship orders at NewStore:

During store fulfillment, a store 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 store happens in the integration layer. See Integrating a fulfillment provider .

The lifecycle of the fulfillment_request entity during store 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 store. When this happens, the fulfillment_request.assigned event is emitted.

Accepting the fulfillment request​

The fulfillment request is assigned to an associate in the store. If the associate accepts the request, the store fulfillment process starts. If the associate declines the request, the request is then assigned to another associate in the store.

Once the store fulfillment process starts, it can either

succeed or fail .

Store fulfillment (success)​

Once the fulfillment request has been accepted, the associate can start picking selecting the items specified in the order and pack them for shipment.

In parallel, NewStore Omnichannel Cloud books the shipment and requests the shipping provider for shipping and in-store pickup labels. Once the labels have been received, the associate prints the relevant documents and labels required for shipping, and marks the packing process as complete in NewStore Associate App.

The fulfillment_request.items_ready_for_handover event is emitted and the shipment phase starts.

Store fulfillment (failure)​

If there is no inventory in the store for the items in the order (mispick), or if items are damaged (mispack), the order cannot be fulfilled by the store.

The fulfillment_request.items_failed event is emitted.

Shipping the order​

Once the items have been packed and the order is marked as completed in Associate App, they can be shipped from the store. During packing, the invoice.created event is emitted when relevant documents and labels to be sent with the shipment are ready for printing.

For in-store pickup orders, the items are handed over the customer in the store. For orders that must be shipped, the associate hands it over to the shipping provider.

Once the order is shipped from the store or handed over to the customer, the fulfillment_request.items_completed event is emitted.

NewStore Omnichannel Cloud requests for a confirmation of the handover from the shipping provider, and more details of the order and shipment can be viewed in NewStore Omnichannel Manager. See Monitoring orders .

Related topics