How Auto Allocation Works

Auto Allocation is a popular benefit for Zenventory users with larger warehouses who take advantage of our sub-location mapping features.  By using automation to determine which specific item stock locations to assign for customer orders as they arrive, and applying these recommendations as a directive for the picking crew, we can effectively reduce the decision-making burden on warehouse personnel.  This saves time and creates an easier work flow for order fulfillment at scale.

But it is important to understand the logic behind Auto Allocation, to be sure it is a good fit based on your preferred level of automation and the type of products you store.  How it works when you enable "Auto Allocate" in your system settings:

Step 1:  Zenventory chooses a warehouse to allocate product from  (for users with multiple warehouses)

  • If the customer order is imported to Zenventory with a "Ship-From" warehouse name assigned by an external system or by an automation rule, and that warehouse name matches one of your warehouses in the system, we'll automatically allocate stock from the designated warehouse named in the order.  This functionality can be very useful for companies that ship product from different warehouses depending on the geography of their customer's "Ship To" address.
  • If there is no "Ship-From" warehouse specified by the order, the user's system settings will instead be used to determine which warehouse(s) to draw stock from by default.
  • Once a customer order is allocated to a specific warehouse, it will show up in the "Ready to Pick" or "Ready to Ship" screen of the designated warehouse, since those steps are always warehouse-specific.
  • If the item has all stock in a single sub-location within the warehouse, and the item is not perishable, simple First-In/First-Out (FIFO) allocation logic will apply.

Step 2:  Zenventory chooses a specific batch of stock to fulfill the requested items  (for warehouses that are broken down into sub-locations)

  • Zenventory will allocate stock using the following order of priority:  Expiration date if the item is perishable (FEFO), lot number (ascending A-Z), location name (ascending A-Z), and finally stock quantity (prioritizing lowest stock quantity locations before higher stock quantity locations).
  • If no single location can provide the necessary quantity for an ordered item, Zenventory will intelligently divide up the allocation using the rules above.


What about products that have lot numbers?

  • If a product has been configured for tracking lot numbers, Zenventory will automatically select which lot to pull from for each order based on the logic above, and will display the selected lot number on the pick list.  This is true whether using a printed paper pick list, the paperless electronic version available at, or on the Zen Mobile app for Android.  It is then up to the user to pull items from the lot number specified in order to maintain accuracy in the lot number tracking.

What about products with unique serial numbers?

  • For products that have unique serial numbers tracked by Zenventory, the serial must always be scanned or entered by the user during the Picking step; they are not assigned in advance by the allocation process.  A user will be able to scan any serial number available from the specified location during Picking, and Zenventory will then log that serial number out of the system.

What about perishable goods?

  • If the items ordered are perishable and have expiration dates logged in Zenventory, the system will compare expiration dates when selecting which stock to allocate from within a location.  While this will typically correlate to a First-In First-Out (FIFO) outcome, it is important to note that Zenventory will prioritize an earlier expiration date over the date an item was received.

What if I need to disable auto-allocation on a specific location?

  • If you need to designate locations that are not intended for regular picking activity such as locations that serve only to replenish picking locations or areas where returned stock is stored, then you can choose to remove those locations from the auto-allocation process. By default, every location has the 'Allow Auto-Allocation' switch turned on. To turn this off, navigate to Admin > Warehouses > modify the desired location > switch off the 'Allow Auto-Allocation' switch.