Esselunga API — Real-Time Italy Grocery Data
Access Esselunga's Italian grocery catalog via the Pepesto API — live pricing in EUR, nutritional data, and availability from spesaonline.esselunga.it, returned as clean JSON.
What Does the Esselunga API Return?
Everything visible in the Esselunga app and website, returned as clean JSON via a single REST call.
Esselunga-specific: Product names and categories are returned in Italian as displayed on spesaonline.esselunga.it.
Why Use an API Instead of Building Your Own Esselunga Integration?
Developers who have tried to build their own Esselunga data pipeline know the obstacles. Unofficial workarounds exist, but they come with real costs.
Esselunga updates their website regularly — changing markup, adding rate limiting, or restructuring categories. Pepesto absorbs all of that. Your integration keeps working.
The same JSON field names work whether you're calling Esselunga, Albert Heijn, Tesco, or any other supported chain. One integration for all of Europe.
Calling a REST API takes hours. Building, maintaining, and scaling your own Esselunga data extraction takes months — and requires ongoing engineering resources.
DIY data extraction is fragile: a single layout change can silently break your pipeline. Pepesto monitors and updates integrations continuously so you don't have to.
Fetch Esselunga Products in One Request
A single authenticated POST to /api/catalog returns
the full structured product catalog from Esselunga.
curl -X POST https://s.pepesto.com/api/catalog \ -H "Authorization: Bearer $PEPESTO_API_KEY" \ -H "Content-Type: application/json" \ -d '{"supermarket_domain": "spesaonline.esselunga.it"}'
{
"supermarket_domain": "spesaonline.esselunga.it",
"products": [
{
"name": "Barilla Penne Rigate 500g",
"brand": "Barilla",
"pack_size": "500g",
"price": 1.89,
"unit_price": 0.38,
"unit_label": "per 100g",
"promo_price": 1.49,
"availability": "in_stock",
"category": "Pasta & Rice / Pasta / Penne",
"nutrition": {
"energy_kcal": 352,
"protein_g": 12.5,
"carbs_g": 70.5,
"fat_g": 1.5
}
}
]
}What Can You Build?
The Esselunga API gives your product a live data layer on top of one of Italy's leading grocery retailers.
Compare Esselunga prices against other Italy retailers in real time. Flag promotions, track price history, and surface the best deal per product.
Let users build a weekly shopping list and see the exact Esselunga cost — including any active promotional prices — before they shop.
Match recipe ingredients to real Esselunga products and show the true cost of cooking from a given menu. Drive grocery orders directly from your meal planner.
Access structured nutritional data — calories, macros, allergens — for the exact products sold at Esselunga. Power food logging and dietary tracking with real supermarket data.
Monitor Esselunga's product range, pricing strategy, and promotional cadence at scale. Track SKU introductions, price changes, and out-of-stock events over time.
Give your AI agent the ability to search Esselunga's catalog, compare products by price or nutrition, and place grocery orders — all programmatically via REST.
Coverage & Data Freshness
Covers spesaonline.esselunga.it — Esselunga's Italian online grocery store. Pricing in EUR. Esselunga operates primarily in northern Italy (Lombardy, Tuscany, Emilia-Romagna, and Veneto). The online store reflects this regional assortment.
Italy — spesaonline.esselunga.it. Pricing in EUR.
Daily. Promotional prices and weekly deals are included in every update cycle.
All products listed online at spesaonline.esselunga.it — including active promotions and full product details.
All product data and pricing is sourced from publicly listed pages on spesaonline.esselunga.it. Pepesto does not access retailer-gated pricing or any data not visible to a regular visitor. Products shown at a lower price due to a promotion or budget-tier range are included because they appear publicly on the site — not through any special retailer agreement.
How to get started
Three steps. No approval process. Your first call can be running within minutes.
Purchase a credit pack via Stripe. Pay-as-you-go from €0.05 per request. No monthly subscription, no minimum spend. Credits don't expire.
After purchase, call /link with your email — your API
key is returned immediately. No waiting, no approval form, no account
setup.
Make your first call to /api/catalog with
chain: "esselunga". Full endpoint reference and example
responses are in the API docs.
Purchase via Stripe, then call /link with your email — your
key is returned immediately. No approval process, no waiting.
Frequently Asked Questions about the Esselunga API
Esselunga does not offer a public developer API. Pepesto provides a maintained API layer that normalises Esselunga's product catalog from spesaonline.esselunga.it into consistent JSON, refreshed daily.
Yes. Product names and categories are returned in Italian as displayed on spesaonline.esselunga.it. All JSON field keys use English for consistent cross-chain programmatic access.
Pepesto returns a unified JSON schema across all supported chains. Each Esselunga product includes name (in Italian), price in EUR, unit price, availability, category path, brand, and nutritional data.
Data from spesaonline.esselunga.it is refreshed daily, capturing current prices and weekly offers.
Buy Pepesto API credits, retrieve your key via /link, then call /catalog with chain set to esselunga. Full documentation is at pepesto.com/docs/grocery-shopping-api.
Esselunga operates in northern Italy — primarily Lombardy, Tuscany, Emilia-Romagna, and Veneto. The integration covers products listed on spesaonline.esselunga.it, which reflects this regional footprint.
The standard catalog is indexed daily — prices, availability, and product details are refreshed every 24 hours. If your use case requires more frequent updates or push notifications on price changes, get in touch and we can discuss what's possible.
Other Supermarkets Available on Pepesto
One API key gives you access to 25+ European grocery chains with a consistent JSON schema.

