Manage incoming shipments in OmniOrders tied to purchase orders. View packing details, box assignments, expected quantities, and full delivery information.
---
title: PO Shipments
description: Manage incoming shipments in OmniOrders tied to purchase orders. View packing details, box assignments, expected quantities, and full delivery information.
---
PO Shipments help you receive and track inventory coming from suppliers. Manage shipping details, assign products to boxes, set packing configurations, and monitor delivery progress for each purchase order shipment.
<SupademoEmbed demoId="cmkd5fsdl035zqm442b65tf95" />
:::tip[Quick Access]
Access shipments from the purchase order details page, or navigate to `/purchase-order/shipments/:shipmentId/:id`.
:::
## Why Manage PO Shipments?
**PO Shipments let you track exactly which products are arriving, when, and in what packaging configuration. Record BOL numbers and delivery dates, monitor real-time receiving progress, and handle partial deliveries or split shipments โ ensuring every unit ordered is accounted for when it arrives.**
<CardGrid>
<IconCard title="Track Deliveries" icon="truck">
Monitor incoming shipments with BOL numbers, delivery dates, and real-time status updates.
</IconCard>
<IconCard title="Organize Packing" icon="package">
Define how products are packed using boxes, units, and custom packing configurations for accurate receiving.
</IconCard>
<IconCard title="Update Locations" icon="map-pin">
Change shipping and receiving locations, contact details, and delivery addresses as needed.
</IconCard>
<IconCard title="Generate ASNs" icon="file-text">
Create Advanced Shipping Notices (ASNs) for warehouse integration and streamlined receiving processes.
</IconCard>
</CardGrid>
## Shipment Information
### Ship From and Ship To
Each shipment displays shipping and receiving details:
<SupademoEmbed demoId="cmkd6evg603wtqm44l32x7pnm" />
**Ship From** (Supplier Information):
- Supplier name
- Contact email and phone
- Contact person name
- Complete shipping address
**Ship To** (Fulfillment Location):
- Location name and selection dropdown
- Contact email and phone
- Contact person name
- Receiving address
:::note[Editing Information]
Click the pencil icon next to "Ship From" or "Ship To" to edit contact and address details. Edits are disabled once the shipment status changes to "in transit".
:::
### Shipment Details
Key information displayed for each shipment:
- **PO Number**: The purchase order this shipment belongs to
- **BOL Number**: Bill of Lading number for tracking (editable before in transit)
- **EST. Delivery**: Expected delivery date (editable before in transit)
- **Status**: Current shipment status with visual indicator
## Managing Products and Quantities
### Product List
The shipment displays all products with:
- **Product Name and SKU**: Item identification
- **Quantity**: Total quantity ordered
- **Unassigned**: Units not yet assigned to boxes (color-coded):
- ๐ด Red: Positive number (units need assignment)
- ๐ข Green: Zero (all units assigned)
- ๐ก Yellow: Negative (over-assigned, needs correction)
### Unassigned Items
**Add Unassigned Items**: Button to add products not yet included in the shipment
**Return Unassigned**: Click "Unassign" button at the bottom of the Unassigned column to remove items from the shipment
**Add to New Shipment**: Create a new shipment from the current purchase order and move products there
## Packing Details
Configure how products are packed for shipping:
<SupademoEmbed demoId="cmkd7ki2x05jwqm44d0xa4hem" />
### Packing Options
For each product, choose a packing configuration:
- **Individual Units**: Pack items individually without containers
- **Custom Packing**: Select from available packing templates for your products
**Actions**:
- โ **Plus Icon**: Add a new packing configuration
- โ๏ธ **Edit Icon**: Modify existing packing details (disabled for individual units)
- **ADD PACK LINE**: Add additional packing lines for the same product
### Boxes
Set the number of boxes for each product line:
- Use the number input with โ/โ buttons to adjust box quantities
- Boxes are disabled when using "Individual Units" packing
- **Total Boxes** counter displays at the bottom
### Units
Configure unit assignments:
- **Units Column** (yellow background): Specify units per box
- Units are only editable when using "Individual Units" packing
- Use the โ icon to set all units to 1
- Use the ๐ icon to reset all unit values
**Action Buttons**:
- **Assign Units**: Manually assign units to boxes with packing information dialog
- **Auto Assign**: Automatically distribute units across boxes
## Advanced Features
<CardGrid>
<IconCard title="Edit ASNs" icon="edit">
Generate or modify Advanced Shipping Notices for warehouse systems and receiving automation.
</IconCard>
<IconCard title="Split Shipment" icon="split">
Divide products into multiple shipments for staggered deliveries or different locations.
</IconCard>
<IconCard title="Auto Assign" icon="bolt">
Automatically distribute unassigned units across boxes based on packing configurations.
</IconCard>
<IconCard title="Packing Information" icon="package-open">
View and edit detailed box dimensions, weights, package IDs, and ASN numbers.
</IconCard>
</CardGrid>
## In Transit View
Once a shipment is marked "in transit", the view changes to display receiving progress:
<SupademoEmbed demoId="cmkd82c180617qm44eun4hzat" />
**Box Details Table**:
- **#**: Box number
- **Package**: Package ID
- **Dimension**: Length x Width x Height
- **Weight**: Box weight
- **ASN**: Advanced Shipping Notice number
- **Items**: Product list with progress bars showing received/expected quantities
### Understanding Progress Bars
Each item shows a **progress bar** and **quantity fraction** (e.g., `15/20`):
- **Green progress bar**: Indicates receiving progress visually
- **15** = Quantity received so far
- **20** = Total quantity expected
- **Progress percentage**: Calculated as (received รท expected) ร 100
**Example Scenarios**:
- `0/100` with 0% progress: Nothing received yet
- `50/100` with 50% progress: Half received (partial delivery)
- `100/100` with 100% progress: Fully received (complete)
### How Receiving Updates
The progress bars update automatically based on your fulfillment location type:
**Local Locations**:
- Use the **Process** button to manually enter received quantities
- Progress updates as you process each box
- See [Process PO Shipments](/purchase-orders/process-shipments/) for the receiving workflow
**External Warehouses**:
- Warehouse receives items and updates their system
- Progress syncs automatically via API/webhook
- No manual entry needed in OmniOrders
## Shipment Workflow
<SupademoEmbed demoId="cmkd9oa4o087xqm44nj15a072" />
<Steps>
1. **Access Shipment**
Open the purchase order and click on a shipment number to view details.
2. **Review Shipping Information**
Verify Ship From (supplier) and Ship To (location) details. Edit if needed using the pencil icons.
3. **Set Shipment Details**
Enter BOL Number and estimated delivery date.
4. **Configure Packing**
For each product:
- Select packing type (Individual Units or custom template)
- Set number of boxes
- Specify units per box (for individual packing)
5. **Assign All Units**
Ensure the "Unassigned" column shows ๐ข green zeros for all products. Use Auto Assign if needed.
6. **Generate ASNs**
Click "Edit ASNs" to create Advanced Shipping Notices for warehouse receiving systems.
7. **Update Status**
Once shipped, update the shipment status to "in transit" to lock the configuration and begin tracking.
</Steps>
## ๐ก Best Practices
<CardGrid>
<IconCard title="Complete Info Early" icon="clock">
Enter BOL numbers and delivery dates as soon as you receive them from the supplier.
</IconCard>
<IconCard title="Verify Packing" icon="check-circle">
Double-check packing configurations match actual supplier packaging to avoid receiving discrepancies.
</IconCard>
<IconCard title="Use Auto Assign" icon="zap">
For simple shipments with uniform packing, use Auto Assign to quickly distribute units to boxes.
</IconCard>
<IconCard title="Monitor Unassigned" icon="alert-circle">
Keep the Unassigned column at zero before finalizing. Red or yellow values indicate issues that need fixing.
</IconCard>
</CardGrid>
## Common Scenarios
### Splitting a Shipment
If your supplier will deliver in multiple shipments:
1. Click "Add to new shipment"
2. Select products and quantities to move
3. The system creates a new shipment with those items
4. Original shipment updates to reflect the split
### Editing Packing After Setup
- **Before "in transit"**: Click edit icons to modify packing details
- **After "in transit"**: Contact support to make changes, or process corrections during receiving
### Handling Over-Assignment
If you see negative values in Unassigned (yellow):
1. Reduce the number of boxes or units
2. Check packing configurations for errors
3. Ensure box quantities match the ordered quantity
## Troubleshooting
**Can't edit shipment details**:
- Check if status is "in transit" - editing is locked at this stage
- Verify you have permission to modify shipments
**Unassigned column shows red/yellow**:
- Red (positive): You haven't assigned all units to boxes yet
- Yellow (negative): You've over-assigned - reduce boxes or units
- Use Auto Assign to quickly balance assignments
**Auto Assign not working**:
- Ensure at least one packing configuration is selected
- Check that all products have valid packing options
- Verify unassigned quantities exist
**Can't generate ASN**:
- Confirm all boxes have packing details
- Ensure box dimensions and weights are set
- Check that no products have unassigned units
## Shipment Status Overview
Shipments progress through these status stages:
- **Draft**: Shipment created but not finalized
- **Open**: Shipment confirmed, ready for packing setup
- **In Transit**: Shipment sent to fulfillment location, receiving can begin
- **Processing**: Actively receiving items (local locations only)
- **Completed**: All items fully received
- **Discrepancy**: Received quantities don't match expected (requires attention)
The status indicator appears in the shipment header with color coding for quick identification.
## Related Links
**Next Steps**:
- [Purchase Orders Overview](/purchase-orders/overview/) - Manage all purchase orders
- [Creating Purchase Orders](/purchase-orders/creating/) - Set up new purchase orders
- [Process PO Shipments](/purchase-orders/process-shipments/) - Receive inventory at local locations
- [Fulfillment Locations](/inventory/locations/) - Configure receiving locations