Submit Walmart Fulfillment
POST/api/walmart/:integrationInstance/fulfillments/:salesOrderFulfillment/submit
Submit a single completed fulfillment's shipment confirmation (carrier, tracking number, shipped lines) to Walmart.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
There are three outcomes, not two:
- 200 — the shipment was transmitted and the fulfillment is marked as submitted.
- 409 — the fulfillment was not eligible, so nothing was sent to Walmart at all. The
reasonfield says which check excluded it:already_submitted(it was sent before — re-sending would notify the buyer twice),ship_date_outside_walmart_window(Walmart only accepts a ship date within one month either side of today, so this can never be sent),not_fulfilled,pickup,order_cancelled,not_for_this_integration, ornot_found. This is not a failure to retry; the request was correct and the fulfillment simply cannot be submitted. - 422 — submission was attempted and Walmart rejected it.
A 409 never re-transmits an already-submitted shipment, so retrying it cannot notify a buyer twice.
Request
Responses
- 200
- 401
- 403
- 404
- 409
- 422
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Conflict
Response Headers
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.