Ship With Walmart is a carrier program that allows 🇺🇸 US-based ShipStation merchants to access pre-negotiated FedEx and USPS shipping rates directly for their Walmart orders. Operating similarly to the ShipStation Wallet model, Walmart manages the underlying carrier accounts while you benefit from their discounted rates. Rather than being an independent carrier network, Ship With Walmart seamlessly integrates these existing carrier services into your account to simplify fulfilling your Walmart orders.
API Code: ship_with_walmart
Connection Requirements:
-
🇺🇸 A US-based ShipStation account
-
An active Walmart seller account with Ship With Walmart enabled
-
Client ID from developer.walmart.com
-
Client Secret from developer.walmart.com
Shipping Requirements:
-
Domestic (US) shipments only
-
Order originating from your Walmart Order Source Connection
To connect your Ship With Walmart account to ShipStation:
-
Select Add Carrier .
-
Select Ship With Walmart and click Connect.
-
Enter your Ship With Walmart Client ID and Client Secret, and choose an Account Nickname for you to identify the carrier account in ShipStation.
-
Click Connect.
The ShipStation integration with Ship with Walmart supports the following standard features:
|
Feature |
Supported? |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Void Labels |
|
|
|
|
|
|
Ship with Walmart Domestic Services
|
Service Name |
API Code |
|---|---|
|
FedEx 1Day Freight |
|
|
FedEx 2Day |
|
|
FedEx 2Day Freight |
|
|
FedEx Express Saver |
|
|
FedEx US Ground |
|
|
FedEx Home Delivery |
|
|
FedEx Ground Economy |
|
|
USPS Priority Mail |
|
|
USPS Ground Advantage |
|
Ship with Walmart Package Types
|
Service Name |
API Code |
|---|---|
|
Custom Package |
|
|
FedEx Pak |
|
|
FedEx Envelope |
|
|
Priority Mail Flat Rate Envelope |
|
|
Priority Mail Flat Rate Padded Envelope |
|
|
Priority Mail Flat Rate Legal Envelope |
|
|
Priority Mail Small Flat Rate Box |
|
|
Priority Mail Medium Flat Rate Box (top-loading) |
|
|
Priority Mail Medium Flat Rate Box (side-loading) |
|
|
Priority Mail Large Flat Rate Box |
|
Ship with Walmart Confirmation Types
|
Confirmation Type |
Description |
|---|---|
|
None ( |
No Confirmation Required |
|
Signature ( |
Signature required → triggers carrier's |
The ShipStation integration with Ship with Walmart allows for the following additional features:
|
Feature |
Description |
|---|---|
|
Estimated Rates |
Rate response breaks out three components: base shipping rate, insurance cost, and signature cost |
|
Void Labels |
Merchants can void a label any time up until it's marked as shipped. Once shipped, the label can't be voided. Corrections go through Walmart's adjustments process. Unused Label RefundsMerchants are charged for a label when the order is marked Shipped. If the label is unused, it will be refunded through refunds/adjustments. Refunds can take 14–30 days to appear. |
|
Dangerous Goods |
Shipping of Dangerous Goods (DG) is supported via packages[].products.dangerous_goods[], mapped to the Hazmat flag (set true only when the array is non-empty). This works end-to-end on the backend today, but limited-quantity DG shipments aren't fully supported yet, since ShipStation has no UI field for packages.dangerous_goods_package_info.regulation_level (a platform gap, not a carrier limitation) |
|
Built-in Carrier Insurance ("Seller Protection") |
Every shipment includes $100 in automatic coverage. Additional coverage up to $500 can be purchased for an extra fee. |
-
The ShipStation integration with Ship with Walmart does not support third-party billing.
-
Domestic shipments only. Ship with Walmart supports domestic shipping (US origin and US delivery) only.
-
Tracking. ShipStation provides a tracking number and direct carrier link (FedEx/USPS), but status updates and live event feeds are currently not supported via the Walmart API.
-
The required
purchaseOrderIdfield must contain Walmart's purchase order identifier (mapped fromsales_orders.order_id ), not a general reference number. -
Sandbox only returns mocked Create Label responses. Because the Sandbox environment returns a fixed tracking number for all shipments, end-to-end label creation and voiding cannot be fully tested there.
Use a real, cooperating seller account in Production to validate the full flow.
-
Label Messages. Walmart labels already print the SKU number. Standard Label Message fields are currently unavailable.
Here are some common issues, potential causes, and troubleshooting tips.
Known Issues
|
Issue |
Details |
|---|---|
|
Sandbox tracking number is static |
The Sandbox Create Label call returns the same tracking number for every shipment created, and the Download Label method returns a 404 ("Request Not Found") for that tracking number — full label/tracking validation isn't possible in Sandbox. |
|
No live tracking |
See Tracking Details above. |
|
Limited-quantity dangerous goods not supported |
ShipStation has no field to pass |
Partner-Specific Errors
|
Error |
What it means |
What to do |
|---|---|---|
|
404 "Request Not Found, Please correct the request!" on |
Occurs in Sandbox when trying to download a label for the mocked/static tracking number returned by Create Label. |
Known Sandbox limitation — not expected in Production. If seen in Production, escalate to Walmart. |
|
Bad Request on Get Rate ( |
Caused by a missing or invalid |
Confirm current field/date-format requirements with Walmart. As of roughly April 2026 this field was made optional in Sandbox. |
|
Generic 400: "The request body is either missing or required fields are not passed." |
A vague error returned by the Walmart production API. Historically seen when the required |
An internal validation was added to catch a null |