Auto allocate
The auto allocation setting could be configured on by customer. If no customer is selected it will apply to all customers setup under the account.
Allocation process
First the system will check which accessible locations (regardless if there is inventory). It checks if it is a future order. If it is not a future order, which means the Ship at is todays date, it will try to allocate the order.
If it is a future order, it will check if a location meets the SLA, taking in account the SLA days, Working days and Holidays. If it cannot find a location within the SLA, the order will remain pending. If it finds a location that meets the SLA, the system will try to allocate the order.
Based on the settings Backorder allowed, it will allocate (if inventory is available) else it will cancel the order(line).
INFO! Only if there is no stock available at all for the ordered product, the order line (item) will be updated to state backordered (if configured). If there is inventory, but not in a pickable bin, the state of the order line (item) is updated to pending.
SLA and auto allocation
For future orders the SLA Date is called ship at and order posting date/time is called allocated at.
Ship At
In order to correctly calculate a ship at (SLA date/time), for sales orders during auto allocation, please take the following into account:
Cutoff time and Pickup time
Ship at is only calculated and updated after a sales order has been allocated, the allocated date is used as the basis. If the order is allocated after the [Admin] >[Settings > [Shipping] > [Cutoff time], (defaults to 13:00), the next business day is used as a basis. The time is set to [Admin] > [Settings] > [carrier] > [Pickup time], (defaults to 17:00).
SLA days
When an order has a ship earliest on / ship latest on, then we will not auto allocate it unless ship earliest on / ship latest on minus the [Admin] > [Setting] > [Shipping] > [Sla days] (business days) is earlier or equal to todays date.
Ship earliest on
If ship earliest on is not specified, then we will default ship earliest on to todays date.
Holidays
[Holidays], configured through [Admin] > [Carriers & Services], do not count as SLA days.
Working days
[Working days], configured through [Admin] > [Settings] > [Internationalization],(default Monday to Friday). Non-working days do not count as SLA days.
Location
If there is any location that is selectable for the order and can be used within the SLA (regardless of inventory) auto allocation will be done, if there is no inventory items will be backordered. If there are no locations selectable for the order that can be used within the SLA auto allocation will not be done and the order will remain in pending.
Manual allocation
Orders could also be allocated manually, but this means that it will ignore the rules configured and sets a ship at date using todays date.
Partial allocation
When partial allocation is disabled and there is not enough inventory to allocate the entire order it will remain in pending.
Unallocate
On unallocate the ship at will be removed, only if all order line items are pending or backordered. In all other cases we will leave it as is. On subsequent allocations it will be overwritten.