Create a new repricer strategy

Call this endpoint to define, configure, and create a repricer strategy for your items in Walmart Marketplace. Instead of using the default strategy, you can choose to create a custom strategy and apply it to items in Marketplace by defining the necessary rules.

Note: This page describes an example using only the required parameters and inputs to create a new repricer strategy. For a full list of customization options and additional capabilities, refer to the Marketplace Pricing API Reference.

Endpoint

POST https://marketplace.walmartapis.com/v3/repricer/strategy

Sample request

This request creates a Buy Box Optimization Strategy for Walmart Marketplace, designed to dynamically adjust product prices to win the Buy Box. The strategy is activated with the enabled parameter set to true and supports adjustments during promotions with enableRepricerForPromotion set to true. It also ensures that the product price reverts to the seller’s last submitted price when no competitor target is found, if restoreSellerPriceWithoutTarget is set to true. Additionally, it enables price matching with external competitors to beat Buy Box prices when enableBuyboxMeetExternal is set to true. The strategy uses a fixed adjustmentValue of $1.20 to compete for the Buy Box.

curl --request POST \ --url https://marketplace.walmartapis.com/v3/repricer/strategy \ --header 'WM_QOS.CORRELATION_ID: <b3261d2d-028a-4ef7-8602-633c23200af6>' \ --header 'WM_SEC.ACCESS_TOKEN: <Basic e3tjbGllbnRfaWR9fTp7e2XR9fQ>' \ --header 'WM_SVC.NAME: Walmart Marketplace' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --data '
{ "repricerStrategy": "Buy Box Strategy For testing", "enabled": true, "enableRepricerForPromotion": true, "restoreSellerPriceWithoutTarget": true, "enableBuyboxMeetExternal": true, "strategies": [ { "strategyType": "Buy Box Price", "adjustmentType": "UNIT", "adjustmentValue": 1.2 } ]
}
'
import requests
import json url = "https://marketplace.walmartapis.com/v3/repricer/strategy" payload = json.dumps({ "repricerStrategy": "Buy Box Strategy For testing", "enabled": True, "enableRepricerForPromotion": True, "restoreSellerPriceWithoutTarget": True, "enableBuyboxMeetExternal": True, "strategies": [ { "strategyType": "Buy Box Price", "adjustmentType": "UNIT", "adjustmentValue": 1.2 } ]
})
headers = { 'WM_QOS.CORRELATION_ID': '<b3261d2d-028a-4ef7-8602-633c23200af6>', 'WM_SEC.ACCESS_TOKEN': '<Basic e3tjbGllbnRfaWR9fTp7e2XR9fQ>', 'WM_SVC.NAME': 'Walmart Marketplace', 'accept': 'application/json', 'content-type': 'application/json'
} response = requests.request("POST", url, headers=headers, data=payload) print(response.text)

Modify your code

To create a repricer strategy, update the necessary parameters in the request to reflect the changes you want. For example:

  • Strategy Name - Modify the repricerStrategy field to reflect a new name for the strategy.
  • Price Change - If the adjustment value needs to change, update adjustmentValue with a new number. For instance, increase the adjustment to $1.50 if you want a higher margin for the Buy Box.
  • Enable/Disable Features - Toggle the features by setting enabled, enableRepricerForPromotion, and other flags to true or false based on your requirements.
  • Use a unique WM_QOS.CORRELATION_ID for each request.
  • Replace with WM_SEC.ACCESS_TOKEN with the actual value for access token.

Sample response

Once the request is processed, the API creates the strategy and returns a unique strategy ID, confirming successful implementation.

{ "strategyId": "STR-987654321", "status": "CREATED", "message": "Buy Box Optimization Strategy successfully created."
}

Result

If successful, the API response returns an HTTP status: 200 OK with a JSON response.

  • Walmart’s repricer will adjust the product price dynamically to secure the Buy Box.
  • Prices will fluctuate by ±$1.20 based on Buy Box competition.
  • If there’s no competitor price, the seller’s last submitted price is restored.
  • External marketplace prices may be considered for competitive adjustments.

Error responses

The following table outlines the potential causes of request errors, including the corresponding error messages, codes, and sample responses.

Scenario(s)CriteriaError MessageStatusSample Response
Create/UpdateIf the strategy type is invalid. Valid Types are [Buy Box Price, Competitive Price, External Price]Invalid strategy type400{ “status”: “BAD_REQUEST”, “errorMessage”: “Error(s) : Invalid strategy type”, “payload”: null }
Create/UpdateIf the adjustment type is invalid. Valid types are [UNIT, PERCENTAGE]Invalid strategy beat by type400{ “status”: “BAD_REQUEST”, “errorMessage”: “Error(s) : Invalid strategy beat by type”, “payload”: null }
CreateIf the strategy name already existsStrategy name is duplicate400{ “status”: “BAD_REQUEST”, “errorMessage”: “Error(s) : Strategy name is duplicate”, “payload”: null }
CreateWith the reserved strategy nameStrategy name is reserved by system400{ “status”: “BAD_REQUEST”, “errorMessage”: “Error(s) : Strategy name is reserved by system.”, “payload”: null }
CreateCreating strategies more than the limit for the seller (200)Only up to 200 strategies are allowed to be created{ “status”: “BAD_REQUEST”, “errorMessage”: “Error(s) : Only up to 200 strategies are allowed to be created.
“, “payload”: null }