Subscribe to the performance webhook

Use the performance webhook to receive the same performance communications that sellers receive by email. Your application subscribes with a callback URL. Walmart sends HTTP POST deliveries for your subscription and you route by payload.notificationType.

Event type

  • SELLER_PERFORMANCE_NOTIFICATIONS

Audience

Sellers and approved Solution Providers who integrate with Walmart Marketplace and want machine-readable Performance notifications.

Prerequisites

  • A Walmart Marketplace seller or partner account
  • Production or sandbox API credentials
  • A public HTTPS callback URL that returns 2xx on success
  • Plan your webhook endpoint and route internally using payload.notificationType. Refer to Set up your Performance webhook endpoint.
  • The resource value and version for Seller Performance notifications is required when subscribing. Use Get event types to confirm the correct value.

Step 1. Get event types

Use Get event types to discover available performance events and versions.
Reference: Get event types
Refer to: Event catalog

curl --request GET \ --url https://marketplace.walmartapis.com/v3/webhooks/subscriptions \ --header 'WM_QOS.CORRELATION_ID: b3261d2d-028a-4ef7-8602-633c23200af6' \ --header 'WM_SEC.ACCESS_TOKEN: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....' \ --header 'WM_SVC.NAME: Walmart Marketplace' \ --header 'accept: application/json'

Expected response shape

{ "items": [ {"eventType": "SELLER_PERFORMANCE_NOTIFICATIONS", "version": "1.0", "resource": "FEEDS"}, ]
}

Step 2. Create a subscription

Register your callback URL for Seller Performance events using Create subscription. Include the required resource value.
Reference: Create subscription

curl --request POST \ --url https://marketplace.walmartapis.com/v3/webhooks/subscriptions \ --header 'WM_QOS.CORRELATION_ID: b3261d2d-028a-4ef7-8602-633c23200af6' \ --header 'WM_SEC.ACCESS_TOKEN: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....' \ --header 'WM_SVC.NAME: Walmart Marketplace' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --data '
{ "events": [ { "eventType": "SELLER_PERFORMANCE_NOTIFICATIONS", "eventVersion": "V1", "resourceName": "FEEDS", "eventUrl": "https://example.com/events", "status": "ACTIVE" } ]
}
'

Note: Call Get event types to verify the resource and the latest event names.

Need routing guidance? Refer to Set up your Performance webhook endpoint.

Step 3. Update a subscription

Change the endpoint URL or adjust the set of subscribed events using Update subscription.
Reference: Update subscription

curl --request PATCH \ --url https://marketplace.walmartapis.com/v3/webhooks/subscriptions/subscriptionId \ --header 'WM_QOS.CORRELATION_ID: b3261d2d-028a-4ef7-8602-633c23200af6' \ --header 'WM_SEC.ACCESS_TOKEN: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....' \ --header 'WM_SVC.NAME: Walmart Marketplace' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --data '
{ "eventType": "SELLER_PERFORMANCE_NOTIFICATIONS", "eventVersion": "V1", "eventUrl": "https://example.com/events", "status": "ACTIVE"
}
'

Step 4. List subscriptions

Verify configuration with Get all subscriptions.
Reference: Get all subscriptions

curl --request GET \ --url 'https://marketplace.walmartapis.com/v3/webhooks/subscriptions?subscriptionId=subscriptionId&eventType=SELLER_PERFORMANCE_NOTIFICATIONS&resourceName=FEEDS&status=ACTIVE' \ --header 'WM_QOS.CORRELATION_ID: b3261d2d-028a-4ef7-8602-633c23200af6' \ --header 'WM_SEC.ACCESS_TOKEN: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....' \ --header 'WM_SVC.NAME: Walmart Marketplace' \ --header 'accept: application/json'

Step 5. Delete a subscription

Remove an endpoint no longer in use with Delete subscription.
Reference: Delete subscription

curl --request DELETE \ --url https://marketplace.walmartapis.com/v3/webhooks/subscriptions/subscriptionId \ --header 'WM_QOS.CORRELATION_ID: b3261d2d-028a-4ef7-8602-633c23200af6' \ --header 'WM_SEC.ACCESS_TOKEN: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....' \ --header 'WM_SVC.NAME: Walmart Marketplace' \ --header 'accept: application/json'

Step 6. Verify delivery authenticity

Implement signature verification and replay protection before processing payloads. Approved solution providers can subscribe to seller accounts who have given them access to the FEEDS scope.

Refer to Security and authenticity for the recommended signature scheme and code samples.

Expected result

Timing

  • Expect ALARMS events at 6:00 AM PT daily and REPORT events at 5:00 AM PT Mondays.

Errors

  • 400 Bad request — fix the request body or query parameters
  • 401 Unauthorized — check your access token
  • 403 Forbidden — confirm your account has access to Notifications
  • 404 Not found — verify the resource path or subscriptionId
  • 409 Conflict — a subscription already exists or duplicates another record
  • 429 Too many requests — apply backoff and retry later
  • 500 Internal server error — retry, and contact support if the error persists

Next steps