ParcelPilot
Help

Warehouse guide — Receive, inspect & complete returns

This guide is for warehouse / ops users processing returns once goods physically arrive.

Important:

  • A return only changes inventory when you run Complete & apply.
  • Before that point, statuses and quantities are informational / operational.
  • Completed is reached only after inventory posting succeeds.

Where returns come from

You can process returns that were:

  • registered by the client as an Expected return (status Awaiting arrival)
  • created internally using Process Customer Return (used when the warehouse is initiating the return without a pre-return)

Step-by-step (recommended flow)

  1. Find the return in Returns.
  2. Use Mark as Arrived when the parcel is physically received.
  3. Open the return and click Edit.
  4. Update the status as the return progresses:
    • ArrivedInspected when inspection is complete.
  5. For each line:
    • confirm Item

    • enter Qty received (what physically arrived)

    • set Condition / Reason

    • choose Disposition (restock / quarantine / scrap)

    • if the disposition requires it, select Warehouse and optionally Location

      • only warehouses assigned to the client are available
      • historical returns can still show an older warehouse value for audit clarity, but changing it must satisfy the current client warehouse assignments
    • add photos/attachments if helpful

  6. When everything is correct, run Complete & apply from the Returns list or return record.

Mark as Arrived is intentionally separate from Complete & apply:

  • it stamps the physical arrival event
  • it does not move inventory
  • it keeps pre-arrival returns out of the processing queue until the parcel actually reaches the warehouse

If the action is blocked, read the posting-state message before retrying. Returns V1.5 refuses unsafe automatic posting instead of guessing.

If a historical return is already believed to be correct from an older manual process, an administrator can resolve it with Mark as Legacy Reconciled instead of forcing a stock movement.

Dispositions (what they mean operationally)

  • RESTOCK: item becomes available inventory in the chosen (or auto-selected) location.
  • HOLD / QUARANTINE: item is received into a quarantine-style status/location (not available).
  • SCRAP: records disposal; does not add stock back.

Location notes:

  • If Location is blank for restock/quarantine, the system will try to auto-place into a configured RETURNS / QUARANTINE area for that warehouse.
  • If no suitable location exists, you must pick a location before completion.

Serialised items (if applicable)

For serial-tracked items (or items that require serials for allocation), serial entry is enforced on completion:

  • Enter/paste serials (one per line) on the return line.
  • Qty received must match the number of serials.
  • Duplicate serials within the same return are rejected.

Common exceptions (how to handle)

Partial return (less received than expected)

  • Set Qty received to what arrived.
  • Leave Qty expected as-is (it records what was expected).

Over-return (more received than expected)

  • The system will not post more than the remaining shipped-minus-already-posted quantity.
  • If more physical units arrived than can be proven returnable, stop and escalate for review.

Wrong item returned

  • Add a new line for the correct SKU and set Qty received.
  • Set disposition appropriately (often quarantine) if it needs investigation.

Requires review / blocked posting

Automatic posting is intentionally blocked for cases such as:

  • merged orders
  • bundle-parent lines
  • missing or mismatched order-line links
  • serials that were not actually shipped on that order line

When that happens, the return moves to Requires review instead of forcing a stock change.

Legacy reconciled (historical admin resolution)

Use Mark as Legacy Reconciled only when all of the following are true:

  • the return predates Returns V1.5 or another historical process handled the stock outcome
  • you have reviewed the record and believe inventory is already correct
  • no further inventory movement should ever be made from this return

The action requires:

  • a reconciliation note
  • explicit confirmation that no stock movement should occur
  • the authenticated operator/admin identity, timestamp, and audit evidence

After that:

  • Complete & apply is hidden
  • the return is stock-affecting-field locked just like a posted return
  • the return no longer appears in the unresolved Requires review queue
  • the return still remains visibly different from a canonical Posted return

If the administrative classification was wrong, use Revert Legacy Reconciled. That only sends the record back to Requires review. It does not post inventory.

Complete & apply (creates stock movements)

Use Complete & apply when:

  • items have physically arrived
  • quantities/serials are correct
  • disposition is decided for each received unit

This step:

  • creates a durable posting attempt for audit and retry safety
  • validates shipped quantity and serial eligibility before mutation
  • creates inventory movement ledger entries (inventory adjustments)
  • updates/creates inventory units for restock/quarantine
  • marks the return Completed only after the posting transaction succeeds

If a return is already posted, a repeat click does not post stock twice.

After posting

Posted returns are inventory-complete records.

  • You can still update Notes.
  • You cannot change stock-affecting fields, lines, status, or delete the return.
  • The same immutability rule also applies to Legacy reconciled returns.

Notifications (client emails)

Client notifications are designed to be sent after inspection (not on arrival).

See: Notifications — enabling and timing

Related