Bulk Shipments
Generate hundreds of FedEx labels for a release in one job, with retry and error handling for failed shipments.
For most releases you don't want to click through 200 fulfillments one at a time. Bulk shipments generate every shippable fulfillment's label in a single background job.
For a typical release, a single bulk shipment job replaces an afternoon of manual label generation. Use it whenever you have 10+ fulfillments ready.
Prerequisites
Bulk shipments require:
- A connected carrier
Most commonly FedEx. See Shipping with FedEx.
- Origin address & default package
Configured under Settings → Organization → Shipping.
- Fulfillments ready to ship
Status PROCESSING, payment COMPLETED, valid shipping address.
Running a bulk shipment
Open the release Fulfillments tab
Or filter the global Fulfillments page to the release you want.
Filter to ship-ready fulfillments
Status: PROCESSING. Method: SHIPPING. Payment: COMPLETED. The toolbar shows the count of fulfillments matching.
Click Bulk Create Shipments
A confirmation modal shows how many shipments will be created and the estimated total cost (based on calculated rates).
Confirm
The
BULK_CREATE_SHIPMENTSbackground job kicks off. You can leave the page — progress is tracked under Activity Logs.Download the label PDF
When the job completes, a single multi-page PDF is available with every label, ready to print on label paper. Each fulfillment's tracking number is saved automatically.
What happens during the job
Bulk shipment progress
Spring 2026 Reds · 128 fulfillments queued
| Step | Count | Status |
|---|---|---|
| Validate addresses | 128 | DONE |
| Request labels from FedEx | 124 / 128 | PROCESSING |
| Save tracking numbers | 124 / 128 | PROCESSING |
| Combine PDFs | 0 | PENDING |
Handling errors
Some shipments may fail to generate a label (bad address, weight over carrier limit, wine to a non-shipping state). The job continues with the rest and reports failures at the end.
| Error type | Resolution |
|---|---|
| Invalid address | Update the contact address and retry the individual fulfillment. |
| No DOB | Adult-signature requires DOB. Add it to the contact and retry. |
| Restricted state | State doesn't allow direct wine shipping. Move to pickup or refund. |
| Weight exceeded | Adjust package settings or split into multiple boxes. |
| Carrier API error | Transient. Click Retry — the job re-runs only the failed shipments. |
Retrying failures
After the bulk job, the failures appear in the Outstanding Issues tab on the release. Each row links to the affected fulfillment so you can fix and retry.
For bulk retry of carrier API errors, click Retry failed at the top of
the Issues tab. This re-runs BULK_CREATE_SHIPMENTS but only for the
failed fulfillments.
Printing the labels
The combined PDF is sized for standard 4×6 label paper. Most warehouses use a Zebra thermal printer — set your browser print dialog to "Actual size" to avoid scaling.
For ZPL-native printers, change the label format under shipping settings to
ZPL and the bulk job will produce a .zpl file instead of a PDF.
Activity log entries
Each bulk job writes activity log entries you can audit:
BULK_CREATE_SHIPMENTS started(with release ID and fulfillment count)BULK_CREATE_SHIPMENTS progress(every 25 shipments)BULK_CREATE_SHIPMENTS completed(with success and failure counts)
Filter the activity log by Type: BACKGROUND_JOB and the release name to find the run history.