Oracle NetSuite and Walmart Marketplace integration
Oracle NetSuite runs your finance, inventory, and customer records. Walmart Marketplace is where your products sell to millions of Walmart.com customers. Connecting the two keeps your ERP in sync with Walmart order flow and inventory levels without manual data entry. New orders from Walmart flow into NetSuite as sales orders and customers, inventory changes feed back to Walmart, and refunds post as credit memos for month-end reconciliation.
What moves between them
The main flow is bidirectional. Walmart orders flow into NetSuite as new sales orders and customers, populated from order line detail and shipping address. Returns and refunds from Walmart post into NetSuite as credit memos allocated to the original sales order. Inventory changes flow the opposite direction: when NetSuite stock on hand is updated, ml-connector publishes the new quantity to Walmart via its inventory feed, ensuring both systems show the same available stock. Pricing changes in NetSuite can also be pushed to Walmart. All flows are polled or webhook-triggered on a schedule tied to your order and inventory cycle, with SKU-level mapping to ensure Walmart SKUs match NetSuite inventory item records.
How ml-connector handles it
ml-connector stores NetSuite and Walmart credentials encrypted and handles the very different token lifecycles: NetSuite OAuth tokens live 60 minutes with no refresh mechanism, so ml-connector re-authenticates every 50 minutes; Walmart tokens expire after 15 minutes and are refreshed on every call that would otherwise fail with 401. On the NetSuite side, ml-connector accepts the tenant-specific account ID and validates the OAuth certificate where M2M is configured, and it maps SKU strings between the two systems to ensure Walmart order lines land on the correct NetSuite inventory items. Because Walmart has a 10,000-order read limit over 180 days, ml-connector tracks the watermark of the last-pulled order date and resumes from there to avoid re-processing. Walmart's webhook signature verification is enforced, and ml-connector validates the HMAC before accepting an order event. NetSuite webhook processing happens through Event Subscriptions or SuiteQL polling, depending on your configuration. Every order, inventory update, and refund carries a full audit trail and can be replayed if a NetSuite validation fails (e.g., SKU not found, customer record already exists).
A real-world example
A small-to-medium e-commerce seller has 200 SKUs listed on Walmart.com and uses NetSuite to manage inventory, fulfillment, and accounting. Previously, orders had to be downloaded from Walmart and manually entered into NetSuite each morning, and inventory levels were kept loosely synchronized with manual spreadsheet uploads. Now Walmart orders automatically post as sales orders in NetSuite, triggered by Walmart's webhook events. When the warehouse scans an item into shipment, the NetSuite inventory is decremented and the updated quantity flows back to Walmart within minutes, so Walmart never oversells. At month-end, all refunds and returns from Walmart have already posted as credit memos, eliminating a manual reconciliation step.
What you can do
- Post Walmart orders into NetSuite as sales orders and new customer records, with shipping address and order line detail.
- Push inventory quantities from NetSuite to Walmart across multiple fulfillment nodes to prevent overselling.
- Sync Walmart returns and refunds into NetSuite as credit memos linked to the original sales order.
- Authenticate Walmart with 15-minute token refresh and NetSuite with 60-minute OAuth renewal, and validate SKU mappings on both sides.
- Poll or receive webhooks on a schedule you control, with full audit trail on every record for replay and investigation.
Questions
- How does ml-connector handle the different token lifespans between NetSuite (60 min) and Walmart (15 min)?
- NetSuite OAuth tokens valid 60 minutes with no refresh token, so ml-connector re-authenticates every 50 minutes to stay ahead of expiry. Walmart tokens expire after 15 minutes and are refreshed proactively on every API call to avoid 401 responses mid-flow. Both refresh cycles are transparent to you.
- What happens when a Walmart order's SKU does not exist in NetSuite inventory?
- ml-connector validates each Walmart order line SKU against NetSuite inventory items before posting the sales order. If a SKU is not found, the order is logged as a failed record with the validation error, and you are alerted so you can add the missing item to NetSuite and replay the order. This prevents incomplete orders from being created.
- Can ml-connector sync inventory in both directions, and what about Walmart Fulfillment Services (WFS) orders?
- Yes, inventory syncs bidirectionally: NetSuite stock changes push to Walmart, and Walmart inventory events pull back to NetSuite. However, Walmart Fulfillment Services (WFS) returns are read-only in the Walmart API, so ml-connector can receive WFS return data for reporting but cannot approve, reject, or refund WFS items programmatically - those actions must happen in the Walmart portal.
Related integrations
More Oracle NetSuite integrations
Other systems that connect to Walmart Marketplace
Connect Oracle NetSuite and Walmart Marketplace
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started