Pick, pack and ship Modified on Thu, 15 Oct at 10:05 AM
A Fulfillment document is the record of physically shipping part or all of an order from one source. Each fulfilment moves through four stages — Order → Pick → Pack → Ship — and each stage is authorised separately, so the person who picks doesn't need to be the person who packs or books the carrier. One sale can have many fulfilments: one per ship-from location, one per shipment, or one per vendor for dropship lines.
A fulfilment sourced from a dropship vendor skips Pick, Pack and Ship and has a single Vendor Confirmation stage instead.
Before you start
- The order must be Authorized and contain stock items. Otherwise the Fulfillments tab shows Fulfillments become available once the order is authorized and contains stock items.
- Sale — Fulfilment full access (
SaleFulfillmentFA) to create and edit, and to authorise Pick, Pack and Ship (including vendor confirmation). Authorising the Order stage, and every undo, also needs Authorize/Undo Sale Fulfillment/Return (SaleFulfillmentReturnLifecycle).✏ Updated after Confluence cross-check (15 Oct 2026): Used the permission's on-screen name.✏ Updated after backend review (15 Oct 2026): Pick, Pack and Ship need only full access. Lifecycle permission is only for the Order stage and undos. - An authorised Fulfillment Plan if you want to prefill lines from the plan. You can also build a fulfilment manually.
Stage 1 — Order: what to ship and from where
1. Create the fulfilment
Open the sale, click Fulfillments in the side navigation, then New fulfillment. (If none exist, the empty state also offers Open the Fulfillment Workbench for bulk generation — see Using the Fulfillment Workbench.)
The editor opens at … / Fulfillments / New Fulfillment on the Order stage tab, status Draft.
2. Fill in the Fulfillment details
- Ship From — required. Select one location or one vendor (type at least three characters to search vendors). You can't enter lines until this is set: Please select a Ship From location or vendor before entering products.
- Fulfillment Date, Ship By, Planned Delivery Date, Service Level — as needed.
- Shipping / Fulfillment Address — Ship To Company, Ship To Contact, Address, Carrier, Shipping Method, Shipping Instructions. These default from the sale's shipping details and can be edited per fulfilment.
- Add fulfillment note — an internal note on this document.
3. Add the lines
Above the lines grid:
- Prefill by Fulfillment Plan — pulls in every plan line allocated to the selected Ship From source, with its remaining quantity. If nothing is left for that source you'll see No products with remaining quantity for this location. Check the Fulfillment Plan allocation. (or the vendor equivalent).
- Prefill by Invoice — pick an invoice in the Select invoice dialog and click Prefill to ship what was invoiced.
- Add Line — add products one at a time. The Available column shows stock at the source for location fulfilments.
Set the quantity and UOM on each line. Kit components can be expanded under their parent with Show kit components.
4. Authorise the fulfilment order
Click Authorize Fulfillment. VentryHub checks that:
- exactly one Ship From location or vendor is selected (Select exactly one Ship From location or vendor before authorizing the fulfillment order.),
- there is at least one product (Add at least one product before authorizing the fulfillment order.),
- every non-empty line has a product, UOM and positive quantity.
On success the status becomes Authorized and — for a location fulfilment — the Pick, Pack and Ship stage tabs appear, with the editor moving to Pick. Lines and Ship From are now locked; Ship By, Planned Delivery Date, carrier and shipping details stay editable until shipped.
A customer on credit hold may leave the document at On Credit Hold (banner This fulfillment is on credit hold); Release On Hold is available to users with the override permission.
Stage 2 — Pick
- In Pick Details, set Pick Date (required) and optionally Picked By (select a user or type a name) and a Note.
- Build the pick lines using any combination of:
- Autopick — VentryHub fills the pick lines from available stock, choosing bins automatically. If stock is short it reports Not enough stock to auto-pick: with the products; if stock sits only in bins that don't allow picking, Some stock could not be auto-picked due to bin AllowPicking settings:.
- Scan — opens Scan Product to Pick. Select a Bin, then scan or type a Barcode / SKU. Each successful scan adds a pick line (Added). If nothing matches: No pickable stock matched the scan in the selected bin.
- Add Row — add a line manually: choose the product, the Bin (or Unbinned stock), the Batch / SN where the product is batch- or serial-tracked, and the Picked quantity and UOM.
- Use Flat View / Group Batches/Serials to switch how batch lines display. For serial-tracked products with auto-generated numbers, click Enter serial numbers.
- Click Authorize Pick.
Pick authorisation is strict: the picked quantity for every product must equal the fulfilment order quantity (Picked quantity for ‹product› must match order quantity. Required: X, picked: Y.), batch/serial selections must be complete and not exceed available stock, and no product may be picked that isn't on the order. Fix the highlighted fields and try again.
On success the status becomes Picked and the editor moves to Pack.
Stage 3 — Pack
- Set Pack Date (required) and optionally Add pack note.
- Click Add Package. For each package fill in Package details:
- Basic package info — Package Name (required, unique within the fulfilment), Package Type, Carrier, Shipping Method.
- Tracking — Tracking Number, Tracking URL (must be a valid URL).
- Measurements — Length, Width, Height, Dimension Unit, Weight, Weight Unit.
- Fill Package Contents with Prefill Remaining (puts everything not yet packed into this package), Scan (barcode / SKU of a picked product), or Add Line. Clear empties the package.
- Repeat for additional packages. Remove Package deletes one; if that would leave picked items unpacked you're asked Delete package — Deleting this package will leave some picked products unpacked. Continue?
- Click Authorize Pack.
Every picked quantity must be packed exactly once: no package may be empty, nothing may be over- or under-packed, and nothing may be packed that wasn't picked.
On success the status becomes Packed and the editor moves to Ship.
Stage 4 — Ship
- In Ship Details, set Ship Date (required — Ship date is required.).
- Review the packages grid. Carrier, Shipping Method, Tracking Number and Tracking URL can still be updated here per package.
- Click Authorize Ship.
At least one package must exist (At least one package is required before shipping.). On success the status becomes Shipped.
Vendor fulfilments — Vendor Confirmation
For a fulfilment whose Ship From is a vendor, authorising the Order stage opens the Vendor Confirmation tab instead of Pick/Pack/Ship. Record what the vendor tells you — Vendor Ship Date (required), Vendor Reference, Carrier, Shipping Method, Tracking Number, Tracking URL, Confirmation Note — and click Authorize Confirmation. The fulfilment moves straight to Shipped. Vendor Ship Date can't be blank (Vendor ship date is required.). To correct the details afterwards, use Undo Confirmation, which returns the fulfilment to Authorized.
The dropship purchase order is raised when you authorise the vendor fulfilment's Order stage. Authorising the confirmation doesn't change that purchase order. It checks that the purchase order includes every product on the fulfilment (Drop-ship purchase order is missing one or more products from the sale fulfillment order.), then records the goods as shipped by the vendor and awaiting the vendor's bill.
Undoing a stage
Each stage can be rolled back from the ⋮ menu: Undo Ship (back to Packed), Undo Pack (back to Picked — so you can edit packages again), Undo Pick (back to Authorized), Undo Fulfillment (back to Draft), and Undo Confirmation for vendor fulfilments. Undoing an earlier stage while later ones are complete rolls them all back: the confirmation dialog adds Later stages are undone first.
Void Fulfillment cancels the document permanently (Sale Fulfillment Void permission). This voids the fulfillment order. This action cannot be undone.
What happens next
- Authorising Pick reserves the picked stock in its bins; nothing is posted yet. Authorising Ship removes the stock from inventory, posts cost of goods sold and revenue, and marks the lines fulfilled. ✏ Updated after backend review (15 Oct 2026): Stock and cost of goods sold post at Ship, not Pick.
- The sale's fulfilment status rolls up to Partially Fulfilled or Fulfilled; the Financials tab on the fulfilment shows the postings once it's shipped. ✏ Updated after full article audit (15 Oct 2026): Corrected. Fulfilment postings exist only after Ship.
- Shipped goods can be invoiced with Prefill by Fulfillment — see Issuing an invoice from a sale order.
- Returns against shipped goods are handled through a credit note — see Issuing a credit note.
See also
- Planning fulfilment
- Using the Fulfillment Workbench
- Issuing an invoice from a sale order
- Fulfilment settings — carriers, service levels, package types (link pending: admin article)
Articles in this section
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article