Request a delivery defect report

Use this report to identify late or missing deliveries that drive customer contacts. It lists order lines with promised dates, actual delivery dates, and shipment details so you can find regional or carrier hotspots and fix root causes.

Endpoint

POST https://marketplace.walmartapis.com/v3/reports/reportRequests?reportType=DELIVERY_DEFECT&reportVersion=v1

The request body is optional. When the request is accepted, the API returns a requestId you can use to track status and download the file.

Sample request

POST https://marketplace.walmartapis.com/v3/reports/reportRequests?reportType=DELIVERY_DEFECT&reportVersion=v1
Authorization: Bearer <access_token>
WM_QOS.CORRELATION_ID: <guid>
WM_SVC.NAME: Walmart Marketplace
Accept: application/json
Content-Type: application/json {}

Sample request with filters

Use rowFilters to scope the report to a specific time window, carrier, or region.

POST https://marketplace.walmartapis.com/v3/reports/reportRequests?reportType=DELIVERY_DEFECT&reportVersion=v1
Authorization: Bearer <access_token>
WM_QOS.CORRELATION_ID: <guid>
WM_SVC.NAME: Walmart Marketplace
Accept: application/json
Content-Type: application/json { "format": "CSV", "rowFilters": { "orderPlacedDt": { "from": "2025-11-01", "to": "2025-11-30" }, "carrier": ["USPS", "FedEx", "UPS"], "destinationState": ["CA", "TX", "FL"] }
}

cURL

curl -X POST \ 'https://marketplace.walmartapis.com/v3/reports/reportRequests?reportType=DELIVERY_DEFECT&reportVersion=v1' \ -H 'Authorization: Bearer <access_token>' \ -H 'WM_QOS.CORRELATION_ID: <guid>' \ -H 'WM_SVC.NAME: Walmart Marketplace' \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "format": "CSV", "rowFilters": { "orderPlacedDt": { "from": "2025-11-01", "to": "2025-11-30" }, "carrier": ["USPS"], "destinationState": ["CA"] } }'

Use a new GUID for each call. Keep the requestId to track status and download the report.

Track and download

  1. Check status until the report is ready.

    GET https://marketplace.walmartapis.com/v3/reports/reportRequests/{requestId}
    

    Status values: RECEIVED, INPROGRESS, READY, ERROR.

  2. Download once status is READY.

    GET https://marketplace.walmartapis.com/v3/reports/downloadReport?requestId={requestId}
    

If you prefer not to poll, subscribe to Report status notifications and receive a callback when the file is ready.

CSV fields

The file contains one row per affected order line. Headers are case sensitive and appear exactly as shown.

FieldDescriptionOrigin
orderPlacedDtThe date when the order was placed.Walmart
actualDeliveryDateThe date when the item was delivered.Walmart
cancelDateThe date when the item was cancelled.Seller
destinationStateThe two letter code representing the state in the shipping address (for example, VA, CA, WA).Walmart
estimatedDeliveryDateThe estimated delivery date of the purchase order.Walmart/Seller
salesOrderUnique customer order number for the Walmart purchase.Walmart
returnDateThe date when the return request was placed.Walmart
trackingNumThe tracking number of the order.Seller
carrierThe carrier used to ship the order to the customer.Seller
catlgItemIdUnique item ID.Walmart
returnReasonThe reason the item was returned.Walmart
offerIdUnique identifier that is a combination of SKU and partnerId.Walmart
poNumPurchase order number that represents Walmart placing the order with the seller.Walmart
legacySlrIdUnique seller ID.Walmart
defectTypeThe type of defect for the item. For Delivery Defect reports, the value is OTD (on-time delivery).Walmart/Seller
cancelReasonThe reason the item was cancelled.Walmart/Seller

Some programs include additional columns for region, postal code, or ship node. Your file is the source of truth for the final header list.

Error handling

Common failures when requesting or downloading reports:

HTTPCode (example)When it happensHow to fix
400MISSING_REQUEST_PARAMRequired parameter missing (for example, reportType).Add the missing parameter and retry.
400INVALID_REQUESTUnsupported reportType or invalid filter shape.Check reportType, reportVersion, and filter format.
401UNAUTHORIZEDInvalid or missing OAuth token.Refresh your token and retry.
404CONTENT_NOT_FOUNDUnknown or expired requestId.Verify the requestId and retention.
429RATE_LIMIT_EXCEEDEDToo many requests.Back off and retry with jitter.
500INTERNAL_ERRORUnexpected error.Retry GET calls; contact support.

See also