Receiving stock
Receiving is the most-frequent operator action on POs in flight. This page covers the two ways to receive, what changes in Shopify, how to record discrepancies the right way, and how to print labels for the receiving station.
On this page
Section titled “On this page”- Two ways to receive
- The receive dialog
- Receiving from a shipment
- What happens to inventory
- Fulfillment mode changes the receive behavior
- The Receipts sub-tab
- Discrepancies on receipt
- Recording short shipments and refusals the right way
- Labels for the receiving station
- Automatic status changes
- Bulk auto-receive from the list
- Partial receive across several orders
- See also
Two ways to receive
Section titled “Two ways to receive”- Receive Manually — opens a dialog with one row per line; enter what arrived per line and confirm. Use for partial receipts, multi-day arrivals, or when you want operator control. This records the receipt in Logistified first. Shopify on-hand is updated only if Auto-sync is enabled, or when you later click Sync to Shopify.
- Quick Complete — a single action that receives every confirmed quantity in full, syncs warehouse receipts to Shopify, and marks the PO Completed. Use when everything arrived exactly as confirmed and you want one click to close it out. A confirmation dialog summarizes exactly what’s about to happen — full receive, Shopify sync (or a note that sync is blocked, if that preference is on), and the Completed status — before it runs.
A third button — Sync to Shopify — appears separately on the actions menu once the order is Partially Received or Received (and on a Completed order that still has unsynced lines). It is not offered while the order is only In Progress. Click it to push the current warehouse receipts to Shopify after a manual receive. This is the same sync step that runs automatically when Auto-sync is enabled.
The receive dialog
Section titled “The receive dialog”Opens via Receive Manually as the Receive Quantities dialog. Every line appears as a row with five columns — Product, SKU, Accepted, Rejected, and Total:
- Accepted and Rejected are the two quantity inputs — units you’re accepting into stock, and units you’re rejecting. Each input has an All shortcut that fills in the line’s remaining pending quantity, and shows any previously recorded amount underneath (prev. received / prev. rejected), so you only ever type this delivery’s numbers.
- Total shows how many units have been processed against the confirmed quantity. Hover it for a Quantity Breakdown card listing Ordered, Confirmed, Received, Pending, Rejected, and Cancelled — including any overage.
- SKU shows the shop SKU, falls back to the supplier SKU when the shop SKU is empty, and shows an em dash (—) when there’s neither.
Along the bottom: Accept All Pending fills the Accepted input on every line that still has pending units, in one click. Tick Print Labels to print labels for the accepted units as part of confirming (see Labels for the receiving station below). Confirm Receiving saves the receipt — it stays disabled until at least one quantity is entered. If your entries exceed a line’s confirmed quantity, an Over-Receipt / Over-Reject Notice appears listing the affected lines; the receipt is still allowed (see Discrepancies on receipt below).
Each confirmed receipt advances the line’s received quantities and, depending on whether other lines are outstanding, may transition the PO (see Automatic status changes below).
Unsaved entries are never lost. Whatever you’ve typed — including scan counts from Scan Items — is saved automatically while the dialog is open. Closing it by accident (Escape, clicking outside, or the ×) doesn’t discard your progress: reopen the dialog and it restores what you had, with a notice offering to discard it if you’d rather start fresh. Cancel is the one close that asks first — Keep draft keeps your entries for next time, Discard draft throws them away. Confirming the receipt clears the saved progress. (One exception: when the dialog opens prefilled from a shipment, this autosave is off — see Receiving from a shipment below.)
Scan Items turns each successful scan into a received-quantity count for that line. With the scan field empty, press Enter to add one more unit to whichever item you last scanned, or Backspace/Delete to remove one — both without leaving the scan field, so a scanner gun can keep firing. Removing the last unit un-scans the item entirely. A hint under the scan field shows these two shortcuts whenever there’s a last-scanned item to adjust.
Search, sort, and group a large receive table
Section titled “Search, sort, and group a large receive table”On a PO with many lines, the receive table can be searched, every column sorted, and rows grouped by vendor:
- Search — type a product title, variant title, SKU, or supplier SKU into the search box. The placeholder only mentions product, variant, and SKU, but the supplier SKU is matched too. Multiple words all have to match somewhere on the row, in any order, so “blue widget” finds “Widget / Blue” regardless of which field holds which word. A count beside the box reads Showing 3 of 12 items while a search is narrowing the list (just 12 items otherwise), and an × inside the box clears it.
- Group by — a dropdown next to the search box, offering None or Vendor. Grouped by vendor, each group gets its own header row with the vendor name and how many visible items it holds; lines with no vendor on record are collected into a No vendor group at the end. Groups always list alphabetically, and whatever sort is active still applies to the rows inside each group.
- Sort — click a column header to sort ascending, click again for descending, and a third time to drop the sort and return to the order’s own line-item order. The header row stays pinned while the table scrolls, so the controls remain reachable on a long PO.
- Product, SKU, and Total each offer more than one reading — use the small arrow next to the header to choose. Product can sort by Product title or Variant title; SKU can sort by SKU shown (whatever the column displays), Shop SKU, or Supplier SKU; Total can sort by Completion (how complete the line is), Outstanding (units still to arrive), or Overall (the full confirmed quantity). Picking a different reading starts it ascending; a checkmark in the menu and the header’s hover tooltip both show which reading is active.
- Hovering a product’s name shows a tooltip with the product title, variant title, and SKU together — handy when a long name is wrapped across several lines. Hovering the SKU cell shows the full SKU.
Two things to know:
- Sorting by quantities is a snapshot. Sorting by Accepted, Rejected, or Total won’t re-order rows underneath you as you type — click the header again to re-sort with the new numbers.
- Search, sort, and grouping reset each time the dialog opens — to whatever you’ve saved under Preferences → Dialog group and sort defaults, or to the order’s own line-item order if you haven’t set one. You can still change any of the three inside the dialog; it just won’t be remembered for next time unless you update the preference.
Search, sort, and grouping only change what’s visible. Every line you’ve entered a quantity for still saves when you click Confirm Receiving, and Accept All Pending still fills every pending line — whether or not a search or group is currently hiding it.
Receiving from a shipment
Section titled “Receiving from a shipment”If you’re tracking shipments on the order, each shipment with line items assigned shows its own Receive button while the order is in a receiving status — until that shipment is marked Delivered. It opens the same receive dialog, prefilled with the shipment’s quantities capped at what’s still receivable per line, so you don’t re-type quantities you already recorded on the shipment. Adjust anything that differed from what actually arrived, then confirm as normal. Confirming the receipt also marks the shipment Delivered; if that status update fails, the receipt itself still goes through.
Two differences from a plain manual receive:
- The prefill is capped by confirmed quantities. “Still receivable” means confirmed minus what’s already received, rejected, or cancelled — on an order whose lines haven’t been confirmed yet, the prefill comes up empty. Confirm quantities first.
- No autosave in this mode. Closing the prefilled dialog discards your adjustments. Clicking Cancel asks you to confirm first; pressing Escape or using the × closes without asking.
What happens to inventory
Section titled “What happens to inventory”Receiving affects three inventory numbers in different ways:
- Logistified received quantity updates when you save the receipt.
- Shopify on-hand updates only through Quick Complete, Auto-sync, or Sync to Shopify.
- Shopify incoming is reconciled when Logistified syncs with Shopify. Until then, Shopify may still show the earlier incoming amount even though the receipt is already recorded in Logistified.
| Event | Logistified record | Shopify effect |
|---|---|---|
| PO moves to Sent | Ordered quantity is now expected from the supplier. | Incoming is pushed, if incoming tracking is enabled. On-hand unchanged. |
| Lines confirmed | Confirmed, cancelled, or rejected quantities are saved. | Incoming is reconciled to the remaining expected quantity. |
| Line received via Receive Manually | Received quantity is saved locally. | No on-hand push unless Auto-sync is on. Incoming is reconciled when Auto-sync or manual Sync to Shopify runs. |
| Line received via Quick Complete | Confirmed quantities are received in full. | On-hand is pushed and incoming is reconciled as part of the completion flow. |
| PO cancelled / line cancelled | Outstanding quantities are closed out. | Pending incoming is rolled back, if incoming tracking is enabled. |
| PO Reopened (from Completed) | The PO returns to the appropriate receiving status. | Outstanding incoming is pushed again if there are still units expected. |
The difference between Receive Manually and Quick Complete is whether the Shopify sync happens as part of the action. The Auto-sync to Shopify on receiving preference makes Receive Manually run the same Shopify sync step after every save.
If Shopify’s incoming doesn’t match what Logistified shows, run Incoming reconciliation. Drift is usually caused by a transient sync failure.
The inventory effects table above describes the Deliver to warehouse fulfillment mode — the default and most common. Lines on other fulfillment modes behave differently; see below.
Fulfillment mode changes the receive behavior
Section titled “Fulfillment mode changes the receive behavior”Each line item carries a fulfillment mode. The receive step does different things depending on the mode:
| Line mode | Where the receipt lands | Shopify on-hand pushed? |
|---|---|---|
| Deliver to warehouse | Warehouse stock at the PO’s destination location. | Yes — via Quick Complete, Auto-sync, or manual Sync to Shopify, when the destination is a Shopify-backed location. |
| Hold at supplier | Buyer-owned supplier-held stock position. | No. Shopify on-hand is not updated. To bring this stock into a warehouse later, create a Supplier Stock Release. |
| Warehouse consignment | Warehouse stock at the PO’s destination location, plus a supplier-owned consignment stock position. | Yes — consignment lines take part in the on-hand sync exactly like warehouse-delivery lines. Only supplier-held lines are held back. |
Mixed-mode POs are supported: a single PO can have warehouse-delivery lines, supplier-held lines, and consignment lines side by side. Each line follows its own fulfillment mode when you receive it.
The one exception is a PO delivered to another supplier: every line on it is Hold at supplier, and the mode can’t be changed per line — the receiving supplier holds the whole order.
The Receipts sub-tab
Section titled “The Receipts sub-tab”Switch the line-item table to its Receipts tab and each line collapses to one summary row — last receipt date, net quantity received, a progress bar, an overall sync state, and the receipt count. Click that count to expand the line into one row per receipt. Each receipt row shows:
- The date the receipt was booked
- Quantity received — a reversal (unreceive) shows as a negative quantity
- A fulfillment-mode badge, shown only when that receipt’s mode differs from the line’s own mode
- Shopify sync status — synced, pending, syncing…, sync failed, cleared, reversed, or not needed (supplier-held lines)
Use this view to audit when each receipt was booked and whether it has reached Shopify.
Discrepancies on receipt
Section titled “Discrepancies on receipt”- Under-receive. Enter the actual quantity. The remainder stays as pending — you can receive more later, or close out the difference by cancelling the missing quantity (see below).
- Over-receive. Enter what actually arrived, even if it is more than the confirmed quantity. Logistified allows the receipt and flags the line as over-received so you can review the supplier invoice, cost, and follow-up decision. If the extra units should become part of the commercial order, adjust the confirmed quantity in Bulk Edit too.
Recording short shipments and refusals the right way
Section titled “Recording short shipments and refusals the right way”The cleanest way to close out a discrepancy is on the order side, not the receive side. Two operator-driven quantities exist for exactly this:
- Qty Cancelled — set during the confirm flow or via Bulk Edit. Use when you decide not to take the rest of an order — the supplier delayed, you don’t need it any more, you found it cheaper elsewhere.
- Qty Rejected — set during the confirm flow. Use when the supplier refused to ship the line — out of stock, MOQ not met, etc.
Both quantities subtract from “pending,” so once you’ve cancelled or rejected the difference, the PO can complete cleanly without artificially under-received lines lingering.
Labels for the receiving station
Section titled “Labels for the receiving station”Print per-line labels for the boxes you’re receiving — barcode, SKU, variant title, quantity. From the PO Actions menu → Print Labels. The dialog supports:
- PDF with two layout modes — Simple (rule-based, ships out of the box) and Designer (Beta) (template-based, defined in label-printing settings).
- CSV / XLSX export of the same label data — one row per SKU (aggregated) or one row per label (expanded). Useful when feeding a label printer or warehouse system from a flat file.
The label sheet format is configured at Settings → Label Printing — see also Exports → Label sheet PDFs.
Useful for warehouses where receiving is barcode-scan driven — labels go on the boxes, the receiver scans them in.
Automatic status changes
Section titled “Automatic status changes”- Receiving the first line → PO moves to Partially Received.
- Receiving the last line (full receipt) → PO moves to Received.
- Received POs can still be corrected with Receive Manually, Unreceive Quantities, or Bulk Edit for received quantities.
- Marking Completed is an operator choice — you don’t have to. You can stay at Received indefinitely if that’s useful (e.g., before invoicing closes the loop).
- Completed and Cancelled POs are locked. Reopen first if you need to continue working a Completed PO.
- From Completed, you can always come back via Reopen Order — Logistified picks the right target status (Received / Partially Received / In Progress) based on what was actually received.
Bulk auto-receive from the list
Section titled “Bulk auto-receive from the list”Receiving isn’t limited to one order at a time. On the purchase orders list, select one or more orders, open the selection Actions menu, and choose Auto-receive. Logistified plays each selected order forward — one at a time — without you opening every order’s detail page. Useful for a delivery that covers many POs at once.
The first step asks what arrived:
- Full receive — receive all remaining quantities on every eligible order. Use this when the delivery matches what you ordered.
- Partial receive — build one receipt for exactly what turned up, spread across the selected orders. Use this for a truck carrying part of several orders. See Partial receive across several orders below.
Full receive
Section titled “Full receive”Logistified plays each selected order forward to Received, or all the way to Completed if you choose that option.
The dialog checks every selected order as soon as it opens and shows three counts — how many are ready, how many will be skipped, and how many are rejected — plus the specific reason next to any order that can’t run. Two options apply to the whole run and update every order’s preview instantly when you change them:
- End state — Receive only (stop at Received / Partially Received) or Receive and complete (also complete each order, the same end state as Quick Complete).
- Update Shopify inventory — pushes on-hand to Shopify for each order as it’s received, the same push Auto-sync or Sync to Shopify perform. It starts on or off based on your Auto-sync to Shopify on receiving preference, and is locked off with a warning if Block sync to Shopify is on.
Nothing is sent to any order until you click Run.
Why an order is skipped or rejected
Section titled “Why an order is skipped or rejected”- Skipped — the order is already fully received; there’s nothing left for auto-receive to do.
- Rejected — the order fails one or more checks. Every problem is shown at once, so you can fix everything before trying again:
- Not yet Confirmed (still Draft, Sent, or Partially Confirmed), or on hold, disputed, or cancelled.
- Marked Confirmed overall, but has lines the supplier never actually confirmed a quantity for.
- Missing a location or a supplier.
- Nothing left to receive — no lines, or every unit already rejected or cancelled.
- A receiving discrepancy that Logistified’s normal validation would also refuse.
- With Update Shopify inventory on: a line Logistified can’t identify in Shopify well enough to push safely, or an order that already has a Shopify sync in progress.
A rejected order is left completely untouched — auto-receive never partially processes an order it has flagged.
Running, stopping, and results
Section titled “Running, stopping, and results”Orders are processed one at a time, so a problem with one never blocks the rest. Each order lands in one of these outcomes:
- Received / Completed — succeeded cleanly.
- Needs attention — the receipt itself went through, but a follow-up step (such as the Shopify push) failed; the summary explains what to check.
- Failed — the order couldn’t be processed; the summary explains why and what status it was left at.
- Skipped — already fully received.
- Rejected — failed validation; nothing was changed on that order.
You can click Stop after current order partway through a run — the order in progress finishes normally, and every order after it is left untouched and marked Not run so you can pick up later. Closing the dialog is blocked while a run is in progress.
When the run finishes, a summary reports how many orders landed in each outcome, and the list refreshes to show every order’s current status.
Partial receive across several orders
Section titled “Partial receive across several orders”Choose Partial receive on the first step when only part of the delivery arrived, or when one delivery covers several orders. Logistified reads what’s still outstanding on each selected order, then you build a single receipt three ways — you can mix all three:
- Scan — scan a barcode or SKU with your usual scanner. Each scan adds one unit. Press Enter on an empty box to add another unit of the last item you scanned.
- Browse lines — search the selected orders’ lines and type quantities straight into the table.
- Upload CSV/XLSX — upload a count sheet. Each row needs a SKU or barcode and a quantity. A PO number column is optional: include it and the row goes straight to that order; leave it out and Logistified works out which order the item belongs to.
An order that can’t take part — not confirmed yet, on hold, missing a location or supplier, nothing left to receive — is listed with the reason before you start, so you know what the receipt can and can’t cover.
When an item could belong to several selected orders, the app asks you to pick. Those scans are held in a short “needs a purchase order” list with a button per order showing how many units it still has room for — one click assigns them. Nothing is counted for that item until you pick, and you can’t move on to the review step while anything is still waiting. If the same item appears on several lines of the same order, Logistified fills them in order automatically and never asks.
Nothing is ever over-received. Quantities are capped at what each line still has outstanding: typed and uploaded quantities are trimmed to fit (uploaded rows say so), and a scan of an item where every selected order is already fully received is refused with a message rather than counted. A code that isn’t on any of the selected orders is refused too.
The Review step shows each order with the units and lines it will receive and the status it will land on. Two things to check there:
- Complete after receiving — a per-order checkbox that only appears when this receipt would leave that order fully received. It’s off by default; tick it to finish the order off in the same run. Orders that will only be partially received don’t get the checkbox — partial orders can’t be completed.
- Update Shopify inventory — the same switch as a full auto-receive run, with the same preference defaults and the same lock when Block sync to Shopify is on.
Nothing is received until you press the Receive button on the review step. Up to that point you’re only building a list, and closing the dialog asks before discarding it. The receipt is then applied one order at a time — with the same Stop after current order control — and the finished summary lists every order’s outcome, including any whose quantities were trimmed because someone else received against them while you were counting.
See also
Section titled “See also”- Dropship POs — the “Mark Delivered” relabeling and why nothing syncs to Shopify.
- Deliver to another supplier — receiving at a second supplier, and what to do with the stock afterwards.
- Shipments — tracking deliveries and receiving straight from one.
- Line items & costs → Fulfillment mode per line — the three modes and where the receipt lands for each.
- Supplier Stock Releases — how to pull supplier-held stock into a warehouse after receipt.
- Lifecycle & statuses — the receipt-driven transitions.
- Preferences — Auto-sync to Shopify on receiving, label export format, incoming inventory tracking, and the dialog group/sort defaults.
- Side effects & integrations — Shopify push details.
- Inventory → Incoming reconciliation — fixing drift.
- Exports → Label sheet PDFs — Simple vs Designer modes + CSV/XLSX export.
- Exports → Bulk export — the other selection Actions menu item.
- Guides → Receive inventory — end-to-end walkthrough.