Para extraer precios de Walmart México con una API, envía un POST a https://api.scavio.dev/api/v1/walmart/search con {"query": "leche", "domain": "com.mx"}. La respuesta trae los productos de walmart.com.mx con precio en pesos, calificación, vendedor, si son patrocinados, la etiqueta de Walmart (por ejemplo "Rebaja") y las formas de entrega, junto con la tienda de la que salen los precios. Cuesta 2 créditos por llamada y no necesitas cuenta de vendedor.
Todas las respuestas de esta guía se capturaron el 2 de noviembre de 2026.
Lo que necesitas
- Una API key de Scavio. Al registrarte recibes 50 créditos gratis, sin tarjeta, suficientes para 25 llamadas a Walmart México.
- Cualquier lenguaje que haga peticiones HTTP. Los ejemplos usan cURL y Python.
Paso 1: busca productos
curl -X POST 'https://api.scavio.dev/api/v1/walmart/search' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer sk_live_your_key' \
-d '{"query": "leche", "domain": "com.mx"}'"leche" devolvió 44 productos de 145 en 6.3 segundos. Además de products, la respuesta trae:
{
"query": "leche",
"location": {
"city": "México D.f.",
"state": "CDMX",
"store_id": "2344",
"zipcode": "11220"
},
"page": 1,
"total_results": 145,
"max_page": 4,
"has_more_pages": false,
"products_count": 44,
"count": 44
}location es la tienda de la que salen los precios. En Walmart México no se puede elegir otra; la selección de tienda funciona en walmart.com y walmart.ca.
Paso 2: lee precio, vendedor y etiqueta
Esta es una fila de la búsqueda "freidora de aire", sin alterar ningún valor (sin la URL de la imagen):
{
"pos": 6,
"id": "00005389117826",
"title": "Oster Horno Digital con Freidora de Aire de 42 L de Capacidad Color Gris TSSTTV42FDDAFNS",
"url": "https://www.walmart.com.mx/ip/Oster-Horno-Digital-con-Freidora-de-Aire-de-42-L-de-Capacidad-Color-Gris-TSSTTV42FDDAFNS/00005389117826",
"price": 3099,
"currency": "MXN",
"rating": 4.7,
"rating_count": 12,
"seller_id": "907AE234B61A4B97A31D0BC90C83F2CB",
"seller_catalog_id": "1",
"seller_name": "ElecTronix.",
"sponsored": false,
"out_of_stock": false,
"section_title": "Resultados para \"freidora de aire\"",
"fulfillment": {
"delivery": true,
"pickup": true,
"shipping": false,
"free_shipping": false,
"aisle": null,
"stock_source": "fulfillment_center"
},
"variants": [],
"brand": null,
"availability_status": "Disponible",
"badge": "Rebaja"
}| Campo | Qué es |
|---|---|
price | Precio en pesos (3099 = $3,099 MXN) |
seller_name | Quién vende: "Walmart" o el nombre del vendedor externo; null en los patrocinados |
sponsored | true en los resultados pagados |
badge | La etiqueta de Walmart: "Rebaja", "Más vendido", "Comprado 1K+ veces el mes pasado", "MSI"... |
fulfillment | Envío a domicilio, recolección en tienda y de dónde sale el inventario |
availability_status | El texto de disponibilidad, como "Disponible" |
Este producto lo vende un tercero, ElecTronix., no Walmart. En la primera página de "freidora de aire", 34 de 49 productos eran de vendedores externos y solo 10 de Walmart.
Paso 3: separa a Walmart de los vendedores externos
Si comparas precios contra Walmart, filtra por vendedor y quita los anuncios:
import requests
resp = requests.post(
"https://api.scavio.dev/api/v1/walmart/search",
headers={"Authorization": "Bearer sk_live_your_key"},
json={"query": "detergente", "domain": "com.mx"},
timeout=90,
)
products = resp.json()["data"]["products"]
walmart = [p for p in products if p["seller_name"] == "Walmart" and not p["sponsored"]]
terceros = [p for p in products if p["seller_name"] not in ("Walmart", None)]
rebajas = [p for p in products if p.get("badge") == "Rebaja"]
print(len(products), len(walmart), len(terceros), len(rebajas))Para "detergente" el resultado fue 48 productos: 22 de Walmart, 22 de 20 vendedores externos distintos y 4 patrocinados, con 14 etiquetados "Rebaja". La búsqueda no trae el precio anterior a la rebaja, así que si quieres medir el descuento, guarda el precio de cada día y compara.
Paso 4: pagina hasta max_page
Aumenta page hasta llegar a max_page. No te guíes por has_more_pages: viene tal cual de Walmart y en "leche" marcaba false con 4 páginas disponibles. Cada página cuesta 2 créditos.
Paso 5: recorre una categoría
Para medir surtido o rangos de precio de un pasillo completo, usa el id de la categoría. Está al final de la URL de walmart.com.mx: en /browse/lacteos/leche/leche-entera/120006_120096_860172 es 120006_120096_860172.
curl -X POST 'https://api.scavio.dev/api/v1/walmart/category' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer sk_live_your_key' \
-d '{"category_id": "120006_120096_860172", "domain": "com.mx", "sort_by": "price_low"}'Devolvió 40 productos de 156 en la primera de 4 páginas, del más barato al más caro, con la ruta en breadcrumb: Lácteos, Leche, Leche Entera. Los primeros eran las leches saborizadas de 180 ml a $8 (Alpura Vaquitas y Lala Yomi), y la Leche Alpura clásica de 200 ml a $9.50. Las filas tienen exactamente la misma estructura que la búsqueda.
La búsqueda y la categoría aceptan sort_by (best_match, price_low, price_high, best_seller, rating_high, new), min_price y max_price en pesos, y fulfillment_speed; la búsqueda además acepta fulfillment_type con in_store para ver solo lo que se puede recoger en tienda.
Los endpoints que funcionan en Walmart México
| Endpoint | Qué devuelve | Créditos |
|---|---|---|
/api/v1/walmart/search | Productos por palabra clave con precio en pesos, vendedor, patrocinado, etiqueta y entrega | 2 |
/api/v1/walmart/category | Los productos de una categoría, con la misma estructura y la ruta de la categoría | 2 |
La ficha de producto, las opiniones, las ofertas de vendedores, el perfil y catálogo de un vendedor y el buscador de tiendas funcionan solo en walmart.com y walmart.ca.
Cuánto cuesta
Cada búsqueda o página de categoría en walmart.com.mx cuesta 2 créditos. En el plan Growth con pago anual (US$2 por 1,000 créditos) son US$0.004 por llamada; con al menos 40 productos por página, revisar 4,000 productos al día cuesta unos US$0.40. Los 50 créditos gratis del registro alcanzan para 25 llamadas. Prueba la API de Walmart México gratis o consulta los planes y precios.
La página de la API de Walmart México tiene una prueba en vivo sin registro, y la documentación de búsqueda y la de categoría describen cada parámetro. Para ver cómo se compara con otras opciones, lee las mejores APIs de Walmart México. La misma key consulta Costco México y HEB México, así que una tabla comparativa entre cadenas es solo un cruce de datos.
Frequently asked questions
¿Cómo extraigo los precios de walmart.com.mx sin hacer scraping?
Con una API que entregue el catálogo en JSON. La API de Walmart México de Scavio recibe una palabra clave o un id de categoría con "domain": "com.mx" y devuelve los productos con precio en pesos, vendedor, si es patrocinado y la etiqueta de Walmart, por 2 créditos por llamada y sin cuenta de vendedor.
¿Cómo detecto las rebajas de Walmart México?
Con el campo badge: Walmart marca los productos rebajados con el texto "Rebaja". El 2 de noviembre de 2026, 10 de los 44 productos de la búsqueda "leche" y 37 de los 54 de "televisión" traían esa etiqueta. La búsqueda no trae el precio anterior, así que para medir el descuento guarda el precio de cada día y compáralo.
¿Dónde encuentro el id de una categoría de Walmart México?
En la URL de la categoría en walmart.com.mx: la parte final de /browse/lacteos/leche/leche-entera/120006_120096_860172 es el id, 120006_120096_860172. Puedes enviar la ruta completa con guiones bajos o solo el último número.
¿Por qué has_more_pages dice false si hay más páginas?
Porque el valor viene tal cual de Walmart y no es confiable: la búsqueda "leche" marcó has_more_pages false con max_page 4 y 145 resultados. Para paginar, aumenta page hasta llegar a max_page.