Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Overview

Order Hopping refers to re-splitting and routing the items of a sub-order that a fulfilment location is not able to fulfil due to some reason.

Scope

...

of Work

  1. Hopping of Orders among Increff-managed Fulfillment Systems (SFS,USP and WMS) for the orders that are routed and Split by Increff Omni.

  2. Capturing and considering the store holidays, opening and closing time in Routing, Splitting and Hopping of Orders. 

  3. Accept / Reject Orders at SKU Qty level in SFS for an Order.

  4. Auto Hopping the orders after a certain time threshold Maximum Acceptance Time(MAT) for non-responsive stores.

Trigger Points

Following are the trigger points when hopping of an order is expected to happen:

  • Order not getting accepted by the store initially.

  • Rejection during picking/packing in stores.

  • At the scheduled closure of the store.

Terminology

Store Schedule

Store schedule is a predefined time window defined by the Stores in SFS when the Stores are open and operational. Increff SFS always considers the Store schedule before doing the Hopping of a Splitted or routed order to ensure that the Sub Order which needs to hopped should not reach to a non-operational store.

...

7

...

00:00

...

  • Daily Store Schedule- This Store Schedule will be defined with the Opening and Closing time of the store for all 7 days of the week.

    • For example:

...

Day of the Week

...

Opening Time

...

Closing Time

...

1

...

10:00

...

19:00

...

2

...

10:00

...

19:00

...

4

...

10:00

...

19:00

    • Image Added
  • Ad-Hoc Store Schedule- This Store Schedule will be defined with the Opening and Closing of the store for the occasions like National holidays or Extended Store Operation time due to some festive season.

    • For example:

Date

Opening Time

Closing Time

26-01-2023

10:00

19:00

15-08-2023

10:00

19:00

31-12-2023

00:00

00:00

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#FFF0B3

 Note:

  1. If Daily schedule is not defined on any day, the store scheduled is marked as Unscheduled for that day.

  2. The Store Schedule needs to be defined by Store initially or else the Ad-Hoc Schedule will also not be considered even if it is defined for that day.

  3. If the Store is marked as Closed in Store schedule screen or if the current time has passed from the Store Closing time defined in store

...

  1. schedule, then the store will be marked as OFFLINE and the store will not be eligible to get new orders.

  2. Ad-Hoc store schedule will take precedence over daily store schedule

...

  1. every time.

...

MAT - Maximum Acceptance Time

MAT is the maximum time that can be taken by a store to Accept / Reject the order, after which Auto-Hopping Logic of a Sub Order will be triggered. Note:

  • The time will be taken in Seconds hours from SFS UI. 

  • The time will be stored at the Store level masters in SFS as every store can have a different MAT.

...

Maximum Acceptance Time consideration on Active time of Stores 

MAT consideration will be on Active time of stores. SFS will be computing that if a store is eligible to fulfil Sub Order or not with help of RequiredBy Time (SLA) of a Sub Order.

Please keep note of below mentioned things related to Order allocation to a Store location and Hopping process to other store

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#FFF0B3

Note:

Active Hrs and Store Allocation

  • Active Hrs are defined as the Total time where the store is operational

...

  • If Active Hrs

...

  • of store is greater than MAT configured, then store is eligible to take orders

...

  • or otherwise not. 

...

Order Hopping will Happen in below cases

  • If the Active Hrs of store between the Current Time and Order Creation Time is more than MAT configured

  • If anytime the Active Hrs of Store between Order Creation Time and Required By Time (SLA) is less than the MAT configured

  • For Example: For a store S1 with the configured MAT as 4 hours and Store schedule is set from 8AM-8PM. If an order is created at 10PM on Day 1 and allocated to Store S1 will be hopped to another store in case if it is not Accepted/Rejected untill 12PM on Day 2

Acceptance Status 

Every Sub Order in OMS will have a new status field known as Acceptance Status. Following can be the possible values of Acceptance Status:

  1. REQUESTED - The location has been requested to fulfill the sub-order.

  2. ACCEPTED - The location has ACCEPTED to fulfill the entire sub-order. In the case of WMS, an order moves to this status on ORDER_ACK.

  3. REJECTED - The location has REJECTED to fulfill the entire order

  4. PARTIALLY_ACCEPTED - The location has accepted to fulfill one or more qty Qty but not all the qty Qty of the SKU line item of sub-order.

  5. AUTO_REJECTED -  The store did not accept to fulfill the sub-order within the MAT time and sub-order got auto-hopped by OMS.

...

Spit Threshold Breached Status

  • In Outward Orders section, there is a new status SPLIT_THRESHOLD_BREACHED added.

  • If an Outward order is retried 20 times to be hopped to various fulfillment locations but either all locations are disabled or all stores are not eligible for hopping(due to MAT breach or store being non-operational) with Splitting Allowed in CIMS, then the status of Outward Order will be marked as SPLIT_THRESHOLD_BREACHED.

(Screenshots Required of Outward order screen)

Info
  1. For Sub Orders being fulfilled from  WMS, 

    1. Sub Order Acceptance will be AUTO. This means WMS need not give the explicit acceptance for a the Sub Order to OMS. 

    2. WMS ORDER_ACK will be treated as an Acceptance by itself in OMS. On ORDER_ACK the Sub Order Accept Status will move to ACCEPTED.

  2. For Sub Orders being fulfilled from SFS, 

    1. Sub Order Acceptance will be MANUAL. This means SFS need to give explicit acceptance/rejection for the Sub Order to OMS within the expected MAT

Order Acceptance/Rejection Workflow

Order Acceptance/Rejection when Increff Omni does the Splitting / Routing

When Increff OMS does the Splitting and Routing:

  • INCREFF OMS doesn’t need to communicate the acceptance and rejection to the Order sourcechannel.

  • If Accept Acceptance Status is PARTIALLY_REJECTED/REJECTED when:

    • If The Sub Order Fulfillment Type is BLOCK_COMPLETE, the Sub Order moves to is in the UNFULFILLABLE state on rejection.

    • The Sub Order will be is tried to hop to some other fulfilment fulfillment location.

    • The qty’s Qty remaining that INCREFF OMS is not able to hop at in the end is still is associated with the original Sub Order and Sub Order remains in UNFULFILLABLE status.

  • If Sub Order Fulfillment Type is SINGLE_SHIPMENT_PARTIAL, the Sub Order will be allowed to process and whatever is not fulfilled from location gets Seller cancelled automatically as per the usual workflow.

  • Auto Seller cancellation does not happen in this case and in the case of Unfulfillable quantity of order line item even after hopping, the quantity can be seller cancelled from OMS UI if required manuallyIn this scenario, automatic seller cancellation does not occur. Additionally, even after hopping, if the quantity of an order line item remains unfulfillable, the seller can manually cancel the quantity from the OMS UI if necessary.

Info

In OMS Search Orders Screen,

  • User can view the Hopped Qty in SKU line item details for any order.

  • User can also view the Accept and Reject Qty in Fulfillment Items details for any order.

...

Image Added

Order Acceptance/Rejection when Channel does the Splitting / Routing

When Channel/Marketplace does the Splitting and Routing:

  • INCREFF OMS needs to communicate the acceptance and rejection to the Order source (Channel/Marketplace).

  • For Sub Orders to be fulfilled by WMS,:

    • Acceptance will not be communicated to the Channel/Marketplace.

    • Acceptance between WMS and OMS happens implicitly during Order ACK

  • For Sub Orders to be fulfilled by Store,:

    • Acceptance and Rejection will be communicated to the Channel explicitly through Order Notification API.

    • Acceptance and Rejection will always be communicated to the channel Channel on the Outward Order level.

Acceptance and Rejection of Sub Orders in SFS

Acceptance and Rejection of a sub-order can happen at 3 places in SFS:

  • Operator Checks checks if the inventory is available or not and accepts or rejects Accepts/Rejects the order before picking.

  • During Picking process

  • During Packing process

Acceptance and Rejection Flow before Picking

Below mentioned workflow carries out in SFS.

  1. Outward Order gets created in OMS.

  2. Sub Orders get created in OMS after splitting of Outward Orders.

  3. Sub Orders get synced to SFS.

  4. SFS Accepts / Rejects the Sub Order. In order to acceptAccept/rejectReject, user can follow below mentioned steps.

    1. Go to Accept Orders under Inventory & Order section in Increff SFS. (Screenshot of Accept orders screen is required)

    2. User can apply different filters like:

      1. From Date

      ,
      1. /To Date

      ,
      1. Channel

      ,
      1. Status (ACCEPTED, REJECTED, PARTIALLY_ACCEPTED

      ,
      1. )

      2. Sort By (Order ID, ORDER_TIME,REQUIRED_TIME)

      ,
      1. Sort Order (Ascending/Descending)

      ,
      1. Page Size to check all the orders which needs to be Accepted/Rejected by Store.

    3. All Orders which are eligible for Acceptance / Rejectance to be Accepted / Rejected for that Store will be displayed with the Order Status next to it.

    4. Click on Accept button which will displayopen an overlaying screen having +/- Sign buttons at top right and SKU details on right side of the screen and Accept button at bottom of screen.

    5. Enter the Qty you want to Accept and Click on Accept button at botttomthe bottom. If Qty entered is 0, then the complete order will be considered as Rejected

  5. Available Inventory gets allocated to Sub Order which is Accepted by store in OMS.

  6. QTP is reduced for the qty’s Qty being rejected in OMS and deallocation happens accordingly.

  7. Following The following cases happen afterwardsafterward:

    1. If OMS is splitting routing source source:

      1. Quantity Qty that is getting rejected also gets increased in REJECTED inventory bucket to underexpose under-expose the inventory for OMS Hopping logic so that two stores do not get stuck in an infinite loop for hopping the same sub orders again and again.

      2. Seller Cancellation won’t be allowed from OMS UI until the Sub Order is in UNFULFILLABLE status.

      3. Rejection will lead to a hopping trigger , but not auto Auto seller cancellation.

      4. Acceptance and Rejection are not communicated to the channel.

    2. If OMS is not splitting and routing source:

      1. Rejection done by the store will lead to Auto seller cancellation.

      2. Acceptance and Rejection are not communicated to channel.

      3. Seller Cancellation won’t be allowed from OMS UI until the Sub Order is in UNFULFILLABLE status.

      4. Accept/Reject notification trigger should come from the store first before the order has moved to UNFULFILLABLE status.

  8. OMS communicates to CIMS the current Accepted Quantity, Rejected Quantity, Seller Cancelled Quantity, and Customer Cancelled Quantity to CIMS.

Image Added

Acceptance and Rejection Flow during Picking

During Picking process of Accepted Orders,

  • If the store can fulfil a SKU in an order, the SKU can be picked.

    • Picked SKU’s can be rejected after picking till completing the order.

  • Like wise, if the store can't fulfil a SKU in an order, the SKU can be rejected.

    • Rejected SKU’s cannot be picked if AUTO_HOP flag is ON, since they are hopped to a different store.

    • Rejected SKU’s can be picked if AUTO_HOP flag is OFF before order packing is completed.

  • Virtual Combo’s must be picked/rejected together.

...

Acceptance and Rejection Flow during Packing

During Packing process of Accepted Orders, store can reject the order if store doesn't want to do fulfill the order and the order status will be marked as REJECTED.

(Screenshots required)

Defining MAT (Maximum Acceptance Time) in SFS

In Configurations screen of SFS a new tab MAT is added to define the Maximum Acceptance Time by the store to accept Accept/Reject any order which is being hopped by Channel or Increff system.

...

  • Warning time is the time which will inform the Store operator that the MAT is about to breach.

  • Once Warning time has crossed, a warning sign will start appearing for the orders in Accept Orders screen of SFS.

...

Steps to be followed to define

...

Maximum Acceptance Time are listed below

  1. Go to Configurations Screen under Sundry section in SFS.

  2. Navigate to MAT tab (Screenshot required).

  3. User can define the values of MAT and Warning time which will be considered for all orders which are in REQUESTED status in Accept Orders screen

Note
  1. Warning time should always be defined less than or equal to MAT

  2. Once MAT is breached, the Order status will be marked as MAT_BREACHED, the same can be checked in Search Order Screen in SFS.

...

Location Level Splitting Configuration in CIMS

In CIMS, Now for any fulfillment location a user can enable/disable the location to be eligible for
Splitting-Routing of an Outward order by changing Splitting Allowed value in CIMS Client Channel pair for any that fulfillment location.

Steps to be followed to Enable/Disable Splitting

  1. Go to View Client/Channel.

  2. Select a channel for which the fulfillment location Splitting Allowed should be changed.

  3. Go to Associated Locations section for this channel (Screenshot required).

    Image Added
  4. Select Edit Location button on the right side of any fulfillment location (Screenshot required).

    Image Added
  5. Select YES in Splitting Allowed value if the fulfillment location is eligible for Splitting or else select FALSE (Screenshot required).

  6. Click on Update to save the changes for that fulfillment location.

Note

If a Fulfillment Location is marked with Splitting allowed as FALSE but there was some free inventory available in the fulfillment location but later on if the Splitting Allowed flag is marked as YES then the Outward Orders needs to be retried manually from Search Orders screen to be marked as ACCEPTED

Things to be noted after Sprint 70 release changes

Note
  • Creation of UOM Definition that contains an SKU which is already a part of Virtual SKU definition will not be supported if any splittable Open Outward order is present in Omni system from Sprint 70 onwards

  • For any Outward Order that needs to be splitted by INCREFF OMS and contains a Virtual Combo SKU whose child SKUs are also part of some UOM definition will move to FAILED order state in CIMS as the case is not supported from Sprint 70 onwards.

...