Walmart Marketplace Setup Configurations
Last updated
Was this helpful?
Last updated
Was this helpful?
The Marketplace Dashboard application needs to be installed on ACC. For this, log in to the link using your username and password.
Go to the menu, enter the App-Store, select Walmart, and then choose the relevant project to proceed with the installation.
After the installation process, go to My Applications from the left menu, select the relevant application, and enter the application page. After performing the necessary build and deployment processes, the Walmart application will be available in the left menu on Omnitron.
Upon installation, the database and tables will be created in the background.
Once the application deployment is completed on ACC, a sales channel will be automatically created in Omnitron. The fields within this sales channel need to be filled.
The sales channel can be accessed through Omnitron > Settings > Sales Channels.
Field Name
Description
Example
Information
Requirement
Channel Name
Sales channel name
Walmart
Automatically created.
Required (should not be changed)
Catalog Name
Catalog name created for Walmart
*May vary from brand to brand
Walmart
Automatically created.
Required (should not be changed)
Channel Type
Channel Type
*All sales channel types are available as a dropdown in Omnitron.
Sales Channel
Automatically created.
Required (should not be changed)
Status
The sales channel will not function until it is activated.
Inactive
Default is set to inactive (it needs to be activated).
Required
Schema Type
The information to be stored in the sales channel settings is defined here. Based on the details provided, the necessary information for the sales channel's operation is brought as a form in Omnitron. A schema containing the minimum requirements for the channel's operation is automatically created. Additionally, you can add any other information you want to store here (e.g., data needed for ERP integration of the sales channel). The key-value pairs to be included in the Channel Config are listed here. The dictionary in the value section includes key, label, required, and data_type.
key -> Information on which key will be used to access the data within the channel config.
label -> Information on how the data will appear in the form in the Omnitron Sales Channel settings interface.
required -> Indicates whether the related value is mandatory or not (true/false).
data_type -> Specifies the data type of the related value (list, text, integer, bool, json).
{
"ApiKey": {
"key": "ApiKey",
"label": "Api Key",
"required": true,
"data_type": "text"
},
"base_url": {
"key": "base_url",
"label": "Base Url",
"required": true,
"data_type": "text"
},
"erp_code": {
"key": "erp_code",
"label": "Erp Code",
"required": false,
"data_type": "text"
},
"SecretKey": {
"key": "SecretKey",
"label": "Secret Key",
"required": true,
"data_type": "text"
}
}
The information has been automatically filled with default values.
Required (Additions can be made, but existing fields should not be changed).
Base Url
API URL for Walmart
https://marketplace.walmartapis.com
Automatically filled with default values.
Required
Api Key
The Client Id information assigned by Walmart for the seller's Walmart API.
******************
It is obtained by contacting Walmart. (The Client Id information for Walmart can be found in the Walmart Seller Panel at “https://developer.walmart.com/account/generateKey”)
Required
Secret Key
The Client Secret information assigned by Walmart for the seller's Walmart API.
******************
It is obtained by contacting Walmart. (The Client Secret information for Walmart can be found in the Walmart Seller Panel at “https://developer.walmart.com/account/generateKey”)
Required
Category Ids
[
"Animal",
"Art & Craft",
"Baby",
"Carriers & Accessories",
"Cleaning, Safety, & Other",
"Clothing",
"Electronics",
"Food & Beverage",
"Footwear",
"Furniture",
"Garden & Patio",
"Health & Beauty",
"Home",
"Jewelry",
"Media",
"Musical Instrument",
"Occasion & Seasonal",
"Office",
"Photography",
"Sport & Recreation",
"Tools & Hardware",
"Toys",
"Vehicle",
"Watches"
]
It is left blank by default. (This information is obtained from Walmart).
Required
Feature Flags
It allows the activation or deactivation of active processes. The important point to note here is that even if the related process is not running, it must still be added here as false. (Detailed information about feature flags is provided in Section 9 under the "Feature Flags" heading below).
{
"get_orders": false,
"send_product": false,
"get_cancel_orders": false,
"get_refund_orders": false,
"send_update_orders": false,
"send_delete_products": false,
"get_updated_order_items": false,
"send_updated_product_price": false,
"send_updated_product_stock": false
}
By default, all flags are set to false.
Required
Erp Code
The sales channel code defined for Walmart in the brand.
Walmart
It is left blank by default.
Optional
Cancellation Reason Id
This is the information regarding the cancellation reason that will be written to Omnitron when canceled orders are pulled from Walmart. (The ID information can be retrieved using the endpoint: {omnitron_url}/api/v1/channel/{channel_id}/cancellation_reasons/?cancellation_type=cancel&is_active=true)
4
It is left blank by default.
Required
Cancellation Mapping
{
“CUSTOMER_REQUESTED_SELLER_TO_CANCEL”:7 ,
“SELLER_CANCEL_PRICING_ERROR”:5
}
It is left blank by default. (When left empty, the cancellation process will be carried out using the "Cancellation Reason Id" from the previous step when cancellation information is retrieved from Walmart.)
Optional
Refund Reason Id
If the reason ID in the return data retrieved from Walmart is not found in the Refund Reason Mapping, the refund data will be retrieved using the Omnitron refund reason ID entered in this section and written to Omnitron. (The ID information can be retrieved using the endpoint: {omnitron_url}/api/v1/channel/{channel_id}/cancellation_reasons/?cancellation_type=refund&is_active=true).
5
It is left blank by default.
Required
Refund Reason Mapping
{
“BillingError”: 7 ,
“Others”: 5
}
It is left empty by default. (When left empty, the return reasons will be written to Omnitron using the "Refund Reason Id" from the previous step when return information is retrieved from Walmart.)
Optional
Failed Integration
Records with errors during the integration process are temporarily held with a penalty. (Detailed information is provided in Section 3 under the "Failed Integration Settings" heading below).
{
"order": {
"RETRY_INTERVAL": 28800,
"EXPIRATION_DATE": 57601,
"MAX_RETRY_COUNT": 3
},
"DEFAULT": {
"RETRY_INTERVAL": 28800,
"EXPIRATION_DATE": 57601,
"MAX_RETRY_COUNT": 2
},
"product": {
"RETRY_INTERVAL": 28800,
"EXPIRATION_DATE": 57601,
"MAX_RETRY_COUNT": 2
},
"productprice": {
"RETRY_INTERVAL": 28800,
"EXPIRATION_DATE": 57601,
"MAX_RETRY_COUNT": 2
},
"productstock": {
"RETRY_INTERVAL": 28800,
"EXPIRATION_DATE": 57601,
"MAX_RETRY_COUNT": 2
},
"sent_to_remote": {
"EXPIRATION_HOUR": 6
}
}
It is filled with default values.
Required
Use Cargo Label
If the brand does not manage the shipping processes (i.e., send_shipping_info is not active), and a shipping label is desired to be created when the relevant order is pulled from Walmart, this setting should be activated.
Inactive
It is left blank by default.
Optional
Carrier Short Name
FedEx
It is left blank by default.
Optional
Carrier Service Type
FEDEX_2_DAY
It is left blank by default.
Optional
Cargo Label Extension
If the brand does not manage the shipping processes (i.e., send_shipping_info is not active), and a shipping label is to be created when the relevant order is pulled from Walmart, this is the file extension information to be set. (Possible values: application/pdf - image/png)
application/pdf
It is left blank by default.
Optional
Channel Store Code
It is the store code information to be sent to the ERP.
4042
It is left blank by default.
Optional
Cargo Company Mapping
When an order is pulled, it ensures that the order is written to Omnitron with a default shipping carrier. Additionally, if the brand does not manage the shipping processes (i.e., send_shipping_info is not active) and a shipping label is to be created, the carrier name received in the shipping label creation response is checked to see if there is a corresponding entry. If a match is found, the shipping information is updated accordingly.
{ "default": "3",
“FedEx”: “2”
}
It is filled with the default key by default.
Required
Send Shipping Info
This setting determines whether the shipping process will be managed by Walmart or the brand.
Inactive
It is left inactive by default. (If inactive or not selected, Walmart will manage the shipping process. If active, the brand will manage the shipping process.)
Optional
Shipping Company Mapping
{
“Ups”: “UPS”,
“Fedex”:”FedEx”
}
It is left blank by default.
Optional
Attribute Set Strategy
It is a strategic setting that determines which attribute set the products belong to.
CategoryNode
It is filled by default.
Required (Should not be changed).
Use Channel Id In Address Mapping
If the brand wishes, they can activate this field to perform address mapping on a channel basis. When this field is activated, the channel ID information is added before the address data during the mapping process. During search operations, the sales channel filter is used with the channelId_address information for querying.
Inactive
It is left blank by default.
Optional
Buffer Stock
This is the value to be deducted from the product's current stock when performing stock feed to Walmart. If no value is entered, the product's current stock will be sent to Walmart.
3
It is left blank by default.
Optional
Records with errors during the integration process are temporarily held with a penalty. The values for RETRY_INTERVAL and EXPIRATION_DATE are in seconds.
RETRY_INTERVAL specifies how long to wait before retrying after an error.
EXPIRATION_DATE indicates until when the retries will continue after the error occurs.
MAX_RETRY_COUNT defines the maximum number of retry attempts.
sent_to_remote is related to how many hours after the request is sent to Walmart, the result of the process can be obtained from Walmart.
Any updates made to these values will apply to the next processes that run. For example, if a SKU's stock update was previously penalized with a retry interval of 3 hours and the retry interval is updated to 2 hours, after the previous 3-hour penalty period ends, the stock update for the product will retry. If the product receives another error, it will be penalized with the new 2-hour retry interval.
For example: When sending product information to Walmart, if there is an error on the Omnitron side (e.g., missing stock, price data, incomplete mapping), the product will be penalized based on the current failed integration settings. During the penalty period, no shipment processing can be done for that product. This product will not be attempted for resending for a certain period of time because it encountered an error. This ensures that error-prone records do not block other records from being processed.
The category tree is retrieved based on the Category Ids added within the sales channel.
Once the category tree is pulled into Omnitron, it can be viewed under the Category Management section when Walmart is selected as the Sales Channel.
Once this process is successfully completed (can be tracked through logs), the flow that retrieves the attributes will automatically be triggered. After the attribute-related processes are finished (if the Default Attribute flow has run and completed successfully), the next steps should be carried out.
After the category tree retrieval step is completed, the user needs to perform category mappings through the Mapper.
The Akinon Mapper function within Omnitron allows users to configure and manage the attribute values of products they want to sell on marketplace sales channels according to the marketplace's requirements. It also provides the opportunity to check whether the attributes and attribute values are correct before the products are listed for sale.
The schema of variantAttributeNames should be used for product variant mapping on Walmart. A custom mapping similar to the one below should be entered. The ``attribute_set_id here indicates which field within the product will be used. Since the variant process is based on attribute sets, `attribute_set_id` has been selected. The keys in the mapping dictionary represent the attribute set ID (Omnitron > Product and Catalogs > Product Attribute Sets).
On the Walmart side, products need to be added to the relevant category tree. Each product should only be added to one category. Otherwise, an error will occur during the submission process.
When the Walmart marketplace application is installed on the relevant brand's Omnitron, it will appear as Walmart in the left-side menu.
The dashboard data related to the Walmart marketplace application is available on this screen.
TOTAL SKU IN CATALOG The number of SKUs with product type "simple" and status "active" that are included in the relevant catalog.
NUMBER OF SKUs ON SALE The number of SKUs that have been sent to the marketplace and are currently on sale.
TOTAL SKU DIFFERENCE The number of SKUs that are included in the catalog but not available for sale on the marketplace. In this section, a comparison is made between sellable products in Omnitron and the products listed for sale on the marketplace. Specifically, products in Omnitron are considered if they have a price, stock greater than zero, a category, a product image, and are included in the catalog.
NUMBER OF SKUs WITH PRICE DIFFERENCE (FIXED) The number of SKUs with a price difference between Omnitron and the marketplace. If any discrepancies are found, a task is triggered to correct the differences, and the mismatches are resolved.
TOTAL STOCK IN CATALOG The total stock quantity of all products in the marketplace catalog.
TOTAL STOCK ON SALE The total stock quantity of products that are currently on sale in the marketplace.
TOTAL STOCK DIFFERENCE The stock of products that are in the catalog but not on sale in the marketplace.
TOTAL NUMBER OF SKUs WITH STOCK DIFFERENCE The number of SKUs with a stock difference between Omnitron and the marketplace. If any discrepancies are found, a task is triggered to correct the differences, and the mismatches are resolved.
The screen contains logs and reports.
The logs of the flows are available on this screen.
The reporting screen shows products added to the catalog in Omnitron but not listed for sale on Walmart, highlighting discrepancies between the price and stock information on Walmart and the data in Omnitron.
The screen is for creating, adjusting, and viewing alarms related to the flows.
The following steps should be taken for errors encountered in the logs:
The "Stock data not found" error indicates that the product's stock data is missing. Stock data needs to be added for the relevant product.
The "Price data not found" error indicates that the product's price data is missing. Price data needs to be added for the relevant product.
The "Address is not valid. channel: 137 code: 137_Merkez model: Township city id: .., city name: …" error indicates that the mapping for the Township in the address data of the order needs to be performed.
Stopping the Transmission of Faulty Products or Resending Unsent Products: Faulty products are retried for a certain period based on the rules defined in Failed Integration under channel settings. Products that stop being retried based on this rule require manual triggering. To remove products from this state and lift the penalty, go to Omnitron > Settings > Sales Channels, select the relevant channel, and use the "Update by Uploading Files" button (located to the left of "Delete Bulk Failed Integration") to upload a CSV file.
If too many faulty products accumulate in the queue, since processing is done in batches of 50, the next products may not be processed. There are two solutions to this:
Quickly fix errors related to mapping, catalog, stock, price, etc., and then trigger the CSV update.
Adjust the Failed Integration settings in the channel settings to ensure proper time intervals.
For the "Failed to suggest product to the catalog" error, if the issue is related to attribute values, the Category Attributes flow should be executed to fetch the latest attribute values. If necessary, the Compare Attributes flow should also be triggered.
"The relevant record is not in the queue. The item may have been penalized or check product is saleable" error received after product trigger: This error occurs when the products being sent have already been transmitted and are considered as updates rather than as part of the product create flow. The same error may also appear if a product that is still in the process of being sent is triggered again.
Regarding the status/resolution of orders that cannot be updated on the MPD side via the Order Update (send_update_orders) flow:
If there is an ongoing or initiated return process for the order, it will not be updated.
The tracking number field will only be updated if the “Send Shipping Info” flag is actively enabled. For more details, please refer to the “Feature Flags” section.
The order status cannot be updated retroactively. Therefore, manual intervention in the flows is not recommended.
The frequency value is by default as shown in the table below. These values can be modified by the Marketplace team.
Flag
Description
Frequency
get_orders
This flag allows the pulling of orders with the "Created" status from Walmart to Omnitron, going back 12 hours from the flow’s execution time. Before activating this flag, the settings under the second section (Sales Channel Definition) such as Use Cargo Label, Carrier Short Name, Carrier Service Type, Cargo Label Extension, Cargo Company Mapping, Send Shipping Info, Order Start Date, and Use Channel Id In Address Mapping should be properly configured.
It runs every 5 minutes.
get_cancel_orders
This flag allows pulling of orders with the "Cancelled" status from Walmart, going back 3 days from the flow's execution time, and ensures that the cancellation plan number in Omnitron is a maximum of 6. Before activating this flag, the settings in the second section (Sales Channel Definition) such as Cancellation Reason Id and Cancellation Mapping should be properly configured.
It runs every 5 minutes.
get_refund_orders
This flag allows pulling returns from Walmart on a line-item basis, going back 3 days, and ensures the creation of a return request in Omnitron. Before activating this flag, the settings in the second section (Sales Channel Definition) such as Refund Reason Id and Refund Reason Mapping should be properly configured.
It runs every 5 minutes.
send_update_orders
Enables the transmission of the “Shipped” status to Walmart on an item basis by retrieving updated orders along with the “shipping company,” “tracking number,” and “tracking URL” information. Here, the shipping company information is mapped from Omnitron’s cargo details to the corresponding carrier recognized by Walmart. The tracking number comes from the tracking number field of the order line in Omnitron. The tracking URL is also taken from the tracking URL field of the order line.
Before activating this flag, the Shipping Company Mapping setting under the second section above (Sales Channel Configuration) must be properly configured.
This flow also updates the invoice and the order status. However, the tracking number is only sent if the Send Shipping Info flag is active.
It runs every 5 minutes.
send_delete_products
Ensures that products removed from the catalog are marked as retired on Walmart.
It runs every 5 minutes.
send_product
Ensures that products that need to be added or updated are sent to Walmart.
Adding runs every 5 minutes, while updating runs every 30 minutes.
get_updated_order_items
Sends a request going back 24 hours from the flow's execution time to retrieve item-based orders with the "Shipped" and "Delivered" status from Walmart. It then updates the status and tracking number in Omnitron.
Note: For this flow to work, the Send Shipping Info value in the channel config must be set to false.
It runs every 5 minutes.
send_updated_product_price
Ensures that product prices that need to be updated are sent to Walmart.
It runs every 5 minutes.
send_updated_product_stock
Ensures that product stock updates are sent to Walmart.
Before activating this flag, the Buffer Stock setting in the Sales Channel Definition section must be properly configured.
This process runs every minute.
The main category information to be used for Walmart is added here. Queries can be made using the API information from to check the details.
The cancellation reason from Walmart is mapped to the cancellation reason in Omnitron. Here, the key is the reason ID from Walmart (which can be found in the cancellationReason section of the), and the value is the reason ID from Omnitron. The ID information can be retrieved using the endpoint: {omnitron_url}/api/v1/channel/{channel_id}/cancellation_reasons/?cancellation_type=cancel&is_active=true.
The return reason from Walmart is mapped to the return reason in Omnitron. Here, the key is the reason ID from Walmart (which can be found in the refundReason field within the refundCharges section of the), and the value is the reason ID from Omnitron. The ID information can be retrieved using the endpoint: {omnitron_url}/api/v1/channel/{channel_id}/cancellation_reasons/?cancellation_type=refund&is_active=true.
If the brand does not manage the shipping processes (i.e., send_shipping_info is not active), and a shipping label is desired to be created when the relevant order is pulled from Walmart, the carrier name information that should appear on the shipping label should be entered here. (This information can be found under the shortName field within).
If the brand does not manage the shipping processes (i.e., send_shipping_info is not active), and a shipping label is being created when the relevant order is pulled from Walmart, this is the carrier service information that will be sent to Walmart. (This information can be found under the data>estimates>name section in the).
If the brand manages the shipping processes (i.e., send_shipping_info is active), this setting is used to map the shipping company slug from Omnitron (Omnitron -> Settings -> Shipping Companies -> Shipping Company Title) with the carrier information from Walmart (which can be found in the carrier field within the under orderLines.orderLine.orderLineStatuses.orderLineStatus.trackingInfo.carrierName.carrier).
The detailed documentation regarding the Mapper and the definitions to be made in the Mapper can be found in here.
Product triggering from the Dashboard is only for the create process. If a product update needs to be triggered, it must be done via CSV in the "Update Bulk Product Version Date" section under "Update by Uploading a File" in the channel settings (top right corner). For triggering processes, you can refer to this document: