Packing Instructions
Packing Instructions allow additional information to be attached to an order regarding how it should be packed as well as PDF documents which should be printed and inserted/affixed to an order during packing. A Packing Instruction can apply to the whole Order or to one specific Shipment, and it can carry a document type and reference number so that documents such as a Bill of Lading are easy to identify. Some examples where this feature may be useful would include:
- Bill of Lading for LTL or other pre-paid shipping label
- Box content information for FBA shipments to Amazon
- Customs documents such as a Commercial Invoice, to be printed or uploaded to the carrier
- Customized promotional material (order-specific)
- Instructions regarding which size box to use
- Instructions regarding special handling of items (e.g. "Do not stack")
Packing Instructions can be added via the Admin or Client UI during order creation or after, as well as through the API. Users need the Packing Instructions permission under Sales > Orders > Actions in their role to change them.
Add Packing Instructions
From the Order page when creating a new Order click the Add button on the Packing Instructions header, or from an existing order click Edit in the Packing Instructions section.

Then proceed to fill the form fields. You may click Add multiple times to add additional Packing Instructions as needed.
Instruction Kind
The Instruction Kind tells ShipStream what the instruction is, and changes the label of the reference field below it. The reference is shown to the packer and in the order history, so use the number printed on the document.
| Instruction Kind | Reference field | Notes |
|---|---|---|
| Custom | Note | A free-form message to the packer. This is the kind used by Packing Instructions created before this feature existed. |
| Shipping Label | Tracking Number | Used as the default Primary Tracking Number (PRO Number for freight) when the Shipment is shipped offline. |
| Bill of Lading | BOL Number | Used as the default Alternate Tracking Number when the Shipment is shipped offline. |
| Amazon FBA | Shipment ID | The Amazon FBA Shipment ID the document belongs to. |
| Certificate of Origin | COO Number | A customs document. |
| Commercial Invoice | Reference Number | A customs document. |
| NAFTA/USMCA | Reference Number | A customs document. |
Presentation
Each Packing Instruction will have a note or reference which will be displayed to the packer in a modal notification requiring a confirmation from the packer. The Packing Instruction Presentation determines which Shipment and Package it applies to, the timing of this notification and how many confirmations are required to satisfy the Packing Instruction.
- First Shipment - once per Order (the first package of the first shipment)
- Every Shipment - once per Shipment (the first package of each shipment)
- Every Package - each package of each shipment
- Specific Shipment - once, for the one Shipment you choose from the list
The Specific Shipment choices are listed by their position in the Order and Shipment number, such as "Shipment 1 of 2 (#1100000117)". Use it for documents that belong to only one Shipment of a split Order, such as the Bill of Lading for one pallet shipment. Only Shipments that have not yet shipped can be chosen, and you can add a Packing Instruction to a Shipment even after it has been packed.
Concurrent Changes
If another user changes the Packing Instructions while you are editing, your save is rejected. Unsaved Packing Instruction Changes shows your changes above a form containing the current values. Review both, enter any changes you still need, and save again. Select any attached files again before saving.

Changing an Instruction After It Is Confirmed
Changing the Instruction Kind, reference, file, Presentation, assigned Shipment, Target Printer or print orientation of a Packing Instruction is a material change, and the packer must confirm the new version before packing can finish. Confirmations of the previous version remain in the order history marked as superseded. Changes made after a packer has opened the instructions are detected, and the packer is asked to reload and confirm again so that nobody confirms an instruction they have not seen.
Print Jobs
If a File is added, the "Target Printer" specified will determine which printer type the print job will be sent to. The "Presentation" will also determine how many copies of the file to send to the printer depending on how many shipments or packages are used to complete the order.
The Packing Instructions section of the Order page lists each instruction with its Presentation, Target Printer, Copies printed, and the Print and Confirm buttons. Copies counts prints of the current instruction version. The Confirmed At column shows each confirmation with how it was made (for example, manual confirmation), whether it is still active, and the Shipment it applies to. Repeated package confirmations are grouped when their recorded confirmation details match.

Downloading a document does not count as confirming that it was printed. An instruction is only confirmed when someone clicks Confirm or confirms it while packing.
Uploading Documents to the Carrier
Instead of printing a customs document, you can have ShipStream send it electronically to the carrier along with the shipping label by choosing Carrier API Upload as the Target Printer. This is available only for Commercial Invoice, Certificate of Origin and NAFTA/USMCA instructions, and only for international shipments on FedEx REST shipping methods. Multi-package shipments and dangerous goods shipments are supported. A Packing Instruction that requires a carrier upload cannot be shipped offline, because there is no label purchase to attach it to.
For a First Shipment upload, the Confirmed At column shows First Shipment upload pending until the carrier has accepted the document and First Shipment upload complete afterwards. Carrier API Upload cannot be changed once the Order has been packed.
Once the carrier has accepted a document, its receipt is saved and the instruction becomes read-only so that the file the carrier received always matches the one on record. To stop it being sent again, edit the instruction and select Retire future carrier uploads; the original receipts stay in the order history. To send a different document, add a new Packing Instruction. A replacement instruction has its own Shipment assignment and its own confirmation.
Scanner UI
The Packing Instruction Note will be presented to the packer in the Scanner UI the appropriate number of times based on the Presentation option, and only for the Shipment and Package being packed. If a file was attached, the user may tap Print to immediately print the document to the selected printer based on the Target Printer type.
The user must then tap either Confirm to acknowledge the instruction was followed or Skip to dismiss the dialog without confirming.


Confirmations and packing progress are saved as the packer works, so reloading the page or losing the connection does not lose confirmed instructions or scanned items.
The timestamp at which the user finished packing will be recorded and visible on the order page.
For offline shipping, a Shipping Label instruction can supply the primary Tracking Number (PRO Number for freight), and a BOL Number instruction can supply the alternate number. When tracking is still required after packing, select Complete Shipment. Saved numbers and their descriptions appear in the tracking form; enter the missing number and review the existing number before completing the Shipment. Manually entered values, including a deliberately cleared field, take precedence over instruction defaults.
If the instructions change while the packer is on the tracking form, ShipStream asks them to review the numbers again without discarding anything they scanned or typed.
An instruction assigned to Specific Shipment supplies defaults only to that Shipment. An instruction that applies to the whole Order supplies PRO and BOL defaults only when the Order has a single eligible Shipment; when it has several, the form explains that you should assign PRO/BOL instructions to the intended Shipment or enter the numbers manually.

Packing Instruction Recovery
Instructions can change while a packer is buying a shipping label, for example when someone edits an instruction from the Admin UI at that moment. ShipStream never discards a label that was already purchased. Instead, it keeps the saved packages, tracking numbers and label documents, marks the Shipment as being in Packing Instruction Recovery, and stops packing from continuing until the current instructions have been dealt with. In the Scanner UI, the packer is taken to the Packing Instruction Recovery page automatically.
There are three ways to resolve a Shipment in recovery:
- Reuse the saved label. Review the current Packing Instructions and confirm each one. Packing then completes using the saved label with no second purchase.
- Cancel the label with the carrier. For carriers where ShipStream can verify the cancellation, packing can start again only after the carrier has confirmed the cancellation of every saved label. If a cancellation is not yet confirmed, recovery stays active and you can retry the check.
- Retire the saved labels. An authorized operator can retire the labels when the carrier cannot verify a cancellation.
Reviewing and Reusing the Saved Label
Open the Order page and, on the Shipment, click Review instructions and reuse saved label.

The Packing Instruction Recovery page shows the saved label (packages, tracking numbers and documents you can download or print again) and the current Packing Instructions that apply to this Shipment. Check every instruction and click Confirm and complete packing.

If the instructions change again while you are on the page, ShipStream asks you to reload and confirm the current version. After recovery completes in Pack & Load mode, Scanner returns to manifest loading. If a post-packing automation notification fails, Scanner shows a warning; the shipment remains packed. If an Order-wide instruction is being held back because another Shipment is still in recovery, the same warning explains why.
Cancelling the Saved Label with the Carrier
When the carrier supports verified cancellation, the Shipment shows Cancel saved labels with carrier. Click it and confirm the prompt. Once the carrier has confirmed every cancellation, ShipStream returns the Shipment to packing and the old labels must be discarded. If the carrier reports that it could not complete the cancellation, or ShipStream could not reach the carrier, recovery remains active and the message explains what to do next, such as retrying or contacting carrier support. If the carrier account settings were changed since the label was purchased, restore them before cancelling.
Retiring Saved Labels
Use Retire saved labels only when the goods are still in the warehouse and every printed label has been removed from use. Retiring does not cancel the labels with the carrier and does not guarantee a refund, so packing again may be charged twice.
To retire a label, complete the Retire saved labels form on the Packing Instruction Recovery page:
- Enter the Reason.
- Enter a Carrier or support reference, such as the number of a support case you opened with the carrier.
- Confirm that the goods are physically in the warehouse, that the printed labels have been removed, and that you accept that both the original and replacement labels may be charged.
- Click Retire saved labels and return to packing.
The Shipment returns to packing, and the order history records who retired the labels, the reason, the support reference and their acknowledgements. The saved label identities and the cancellation results that were received remain on record. Saved labels cannot be retired once the goods have shipped.
This action is available only to roles with Retire Saved Labels Without Carrier Cancellation, found under Sales > Shipments > Actions in the role resources.
Finding Shipments in Recovery
The Shipments grid has two filters to help the floor find work that is waiting:

- Packing Instruction Recovery - set to Yes to list the Shipments in recovery that need a decision.
- Unconfirmed Instructions - set to Yes to list Shipments with a Packing Instruction that still needs to be printed or confirmed. The filter is applied before the grid is paged, so the page count, totals and exports match the filtered list.
Printing and Packing Slips
The Print Dialog can include Shipments in recovery in a batch, so a printed set of documents is not held up by one Shipment. Printing does not confirm their instructions; the instructions for those Shipments are confirmed only on the Packing Instruction Recovery page.
If the instructions or packages changed after the documents were generated, ShipStream asks you to regenerate them before printing or downloading, so you never print a stale document.
Scripts
Packing Instructions can also be attached to orders through the API and using a Before Create Order Script with the order.options.instructions field.