[{"data":1,"prerenderedAt":409},["ShallowReactive",2],{"custom-scraper-otto":3,"custom-scraper-summaries":318,"data-flow":386},{"category":4,"site_name":5,"region":6,"official_api":7,"domains":8,"card_text":10,"seo":11,"hero":15,"answer":27,"steps":30,"io":43,"table":73,"fields":134,"pricing":168,"difficulty":179,"use_cases":212,"limits":233,"faq":255,"links":287},"Marketplace","Otto.de","Germany","Partner API for approved sellers only",[9],"otto.de","Germany's second-largest online retailer, read as a marketplace: price, delivery, seller and variant, returned as columns you choose.",{"title":12,"description":13,"keywords":14},"Otto.de Scraper: Scrape Otto Prices and Product Data","Otto's API is limited to approved partners. Scrape otto.de product, price and variant data: your columns, daily, by REST, CSV or Excel.","otto scraper, otto de scraper, scrape otto, otto api, otto price monitoring, otto marketplace data, german ecommerce scraper, otto product data",{"badge":16,"title":17,"subtitle":18,"image":19,"image_alt":20,"cta_primary":21,"cta_secondary":24},"Custom scraper","Otto.de Scraper","Otto is the largest German online retailer after Amazon, and its marketplace API is closed to anyone who is not an approved partner. The AI scraper reads the public product page instead, turns it into columns you define, and runs on a schedule.","/img/custom-scrapers/hero-otto.svg","Three stages of an Otto run: paste an otto.de search URL billed on the plain page tier at EUR 0.15 per 1,000 pages; declare product_title and price in the Custom Schema builder; and get back real rows, with a Harman/Kardon soundbar at 369,99 euro and in stock.",{"label":22,"url":23},"Start with 5 free requests","https://portal.scrapewise.ai/register",{"label":25,"url":26},"Have us set it up","/demo",{"title":28,"text":29},"How to scrape Otto.de","Otto is an unusual hybrid: part traditional retailer selling its own stock, part marketplace carrying third-party partners. For a brand that matters, because your product can appear on otto.de sold by Otto itself, by a partner you appointed, or by one you did not, and the price can differ in each case. Otto's programmatic access is a partner API, gated behind an application and an approved commercial relationship. It is not something a competitor analyst signs up for, and there is no public read API for price data. Scrapewise carries no dedicated Otto endpoint either. What works is the product page, which Otto renders to any visitor. You paste otto.de URLs into the AI scraper, declare the columns you want, and set a daily schedule. Every run comes back over REST, CSV or Excel, and you pay per page from a prepaid wallet.",{"title":31,"intro":32,"items":33},"What the AI scraper does with an otto.de link","Three steps, same as any other site. Nothing about Otto is pre-built, which is why it reaches a retailer nobody ships an endpoint for.",[34,37,40],{"title":35,"text":36},"Paste the link","A product page, a brand page, or a category URL with the filters already applied. Otto uses long category and search URLs that encode the filters you set in the browser, so a view you built by hand is a valid input.",{"title":38,"text":39},"You declare the columns","An Otto pricing job usually wants the current price, any strikethrough reference price, delivery cost and window, whether Otto or a partner is selling, the variant in question and the availability wording. You name those fields yourself in a Custom Schema, or start from the ready Product List schema and add to it.",{"title":41,"text":42},"Schedule it and take the data out","Run it once or daily. Pull each run by REST API or download it as CSV or Excel. The columns stay the same between runs, so an Otto table lines up with whatever you already collect from other German channels.",{"title":44,"intro":45,"inputs":46,"row_label":71,"formats":72},"What you send and what you get","You send a link and a column list. Whether Otto or a partner holds the listing, and what each variant costs, comes from the page itself.",[47,54,60],{"name":48,"label":49,"required":50,"description":51,"example":52,"control":53},"url","Link to an otto.de product, brand or category page",true,"Set your filters in the browser first, then copy the address. Otto encodes them in the URL, so a view you built by hand is a valid input.","https://www.otto.de/suche/philips%20hue%20e27/","link",{"name":55,"label":56,"required":50,"description":57,"control":58,"example":59},"schema","Your column list","Start from the ready Product List schema or name your own fields in a Custom Schema. The AI fills the fields you declared.","box","Custom Schema, 8 fields",{"name":61,"label":62,"required":63,"control":64,"options":65,"selected":67,"description":70},"schedule","How often it runs",false,"choice",[66,67,68,69],"On demand","Daily","Weekly","Monthly","Daily is the fastest cadence available, and enough to catch a discount that lands on one variant only.","One row per product tile in the listing","REST API, CSV or Excel. The column set stays the same between runs, so an Otto table lines up with your other German channels.",{"title":74,"description":75,"columns":76,"column_notes":85,"rows":94},"What a run on one otto.de listing actually returned","This is real output, not a mock-up. These are the first eight tiles otto.de returned for the search \"philips hue e27\" on 24 September 2026, read straight off the page with no browser needed. Otto ranks its own results, so the first tiles are not always the ones you searched for. Scroll sideways to see every column.",[77,78,79,80,81,82,83,84],"product_title","brand","price","currency","availability","condition","variation_id","checked_at",{"product_title":86,"brand":87,"price":88,"currency":89,"availability":90,"condition":91,"variation_id":92,"checked_at":93},"Product title as Otto writes it","Brand shown on the tile","Price Otto shows for this tile","Currency the price is quoted in","Stock state Otto publishes for the tile","New or used, as Otto states it","Otto's own identifier for the variant behind the tile","When this run collected the page (UTC)",[95,104,109,114,118,122,126,130],{"product_title":96,"brand":97,"price":98,"currency":99,"availability":100,"condition":101,"variation_id":102,"checked_at":103},"Harman/Kardon Enchant 900 Soundbar (Bluetooth, WLAN, 195 W)","Harman/Kardon","369,99 €","EUR","InStock","NewCondition","1943331403","2026-09-24T18:32:44Z",{"product_title":105,"brand":106,"price":107,"currency":99,"availability":100,"condition":101,"variation_id":108,"checked_at":103},"OTTO home Deckenleuchte Avveline - Textilschirm Deckenlampe, ohne Leuchtmittel","OTTO home","22,99 €","1852924209",{"product_title":110,"brand":111,"price":112,"currency":99,"availability":100,"condition":101,"variation_id":113,"checked_at":103},"Philips Hue LED-Leuchtmittel Essential White & Color Ambiance, E27, 1 St.","Philips Hue","21,99 €","2034886558",{"product_title":115,"brand":111,"price":116,"currency":99,"availability":100,"condition":101,"variation_id":117,"checked_at":103},"Philips Hue LED-Leuchtmittel Essential White & Color Ambiance, E27, 3 St.","53,99 €","2034886531",{"product_title":119,"brand":111,"price":120,"currency":99,"availability":100,"condition":101,"variation_id":121,"checked_at":103},"Philips Hue LED-Filament White Standard A60 550lm, E27, 1 St., Warmweiß","22,49 €","2034886113",{"product_title":123,"brand":111,"price":124,"currency":99,"availability":100,"condition":101,"variation_id":125,"checked_at":103},"Philips Hue LED Stehlampe Play Stehleuchte, 135 cm, RGBW","149,99 €","2102145994",{"product_title":127,"brand":111,"price":128,"currency":99,"availability":100,"condition":101,"variation_id":129,"checked_at":103},"Philips Hue LED-Leuchtmittel White Ambiance 1100lm, E27, 1 St.","39,99 €","2034886414",{"product_title":131,"brand":132,"price":107,"currency":99,"availability":100,"condition":101,"variation_id":133,"checked_at":103},"Paulmann LED-Leuchtmittel 3er Set 4,7 W AGL E27 gold, E27, 3 St.","Paulmann","1119869898",{"title":135,"intro":136,"groups":137,"schema_note":166,"note":167},"Typical fields the AI scraper extracts from an otto.de page","A starting point, not a fixed schema. What comes back is whatever the page actually shows on the day of the run.",[138,147,155],{"title":139,"text":140,"items":141},"Price and delivery","Otto leans heavily on strikethrough pricing and delivery promises, so the headline number alone is a poor comparison.",[142,143,144,145,146],"Current selling price","Strikethrough or reference price, when shown","Discount percentage, when shown","Delivery cost and delivery window","Instalment or payment options advertised on the page",{"title":148,"text":149,"items":150},"Who is selling it","The distinction that makes Otto worth scraping separately from an ordinary retailer: the same product can be sold by Otto itself or by a marketplace partner.",[151,152,153,154],"Sold by Otto or by a marketplace partner","Partner name, where a partner holds the listing","Shipping and returns wording for that seller","Availability and stock text",{"title":156,"text":157,"items":158},"Product and variants","Otto is heavy on fashion and home, so size and colour variants are the norm rather than the exception.",[159,160,161,162,163,164,165],"Product title","Brand","Colour and size variants listed on the page","Article number shown on the listing","Category breadcrumb","Rating and review count","Product image URL","The column list is one you write: name each field, give it a type and a line telling the AI what to look for. The schema belongs to your account, so an Otto field set can be reused on the next German channel you point us at.","The scraper cannot invent a field the page does not render. Variant-level prices and stock are frequently only revealed once a size or colour is selected, so a run against the base URL returns the default variant rather than the whole matrix. Tell us up front if you need every variant, because that is a different set of URLs. Historical prices are not on the page and are not stored on our side.",{"title":169,"intro":170,"tier_match":171,"tier_label":172,"reason":173,"example":174,"note":178},"What an otto.de page costs","Pay-as-you-go from your wallet. No plan, no monthly fee, no seat count.","Plain page","Plain page tier","We measured this rather than assumed it. A plain fetch of an otto.de listing page comes back with the offers already in the HTML, structured product data included, so the common case needs no browser at all. Deeper or faster runs can still be challenged, and a run that gets escalated is billed at the higher tier it actually used.",{"label":175,"text":176,"result":177},"Worked example","300 otto.de product pages checked once a day for a month is 9,000 pages.","about EUR 1.35 for the month at this tier","You are charged for the tier a run actually used, not the tier it was expected to need, and your balance never expires.",{"title":180,"intro":181,"categories":182},"What makes otto.de harder than an ordinary storefront","The bot wall is moderate. The variant model is what actually costs people time.",[183,190,198,205],{"title":184,"icon":185,"items":186},"Access","shield",[187,188,189],"A plain fetch does return the listings, so the cheap tier covers the common case","Automated-looking traffic still draws challenges, and a refused page escalates to a browser and then to a residential exit","Success is high but not guaranteed on any individual run",{"title":191,"icon":192,"items":193},"Variants and page structure","layers",[194,195,196,197],"Fashion and home listings carry size and colour matrices where price and stock can differ per variant","The base URL shows a default variant, so the full matrix means more URLs rather than more fields","Category pages are lazily loaded and paginated, so a category sweep is a list of URLs, not one request","Reference and strikethrough prices appear and disappear with promotions",{"title":199,"icon":200,"items":201},"Retailer and marketplace mixed","globe",[202,203,204],"The same product can be sold by Otto itself or by a marketplace partner, at different prices","Partner listings carry different delivery and returns terms, which changes the real comparison","otto.de is the German site; the group's other brands are separate sites and separate scrapers",{"title":206,"icon":207,"items":208},"Scheduling and delivery","calendar",[209,210,211],"Daily is the fastest cadence, which matches how often retail prices meaningfully move","Every run is retrievable by REST API, or downloadable as CSV or Excel","Columns stay stable between runs, so downstream jobs do not need to re-map fields",{"title":213,"items":214},"What people use Otto data for",[215,218,221,224,227,230],{"title":216,"description":217},"Watching your brand on Germany's number two retailer","For a lot of brands Otto is the largest German channel after Amazon, and the least monitored. Scraping your own products daily tells you what Otto and its partners are actually charging for them, which is not always what you agreed.",{"title":219,"description":220},"Catching partner listings you did not appoint","Otto's marketplace side means a third-party partner can be selling your SKU alongside Otto's own listing. Capturing who holds the listing is what turns a suspicion into a channel conversation.",{"title":222,"description":223},"Discount and promotion tracking","Otto runs frequent strikethrough promotions. Pulling current price and reference price as separate columns shows the real discount depth over time, which is the number that erodes your price positioning.",{"title":225,"description":226},"Competitor price monitoring in German retail","Scraping a category gives you what every competing product in it costs today, including delivery. Run it daily and you have a market curve rather than an impression.",{"title":228,"description":229},"Assortment and availability checks","Which of your sizes and colours are actually in stock on Otto, and which have been quietly out for a fortnight. That is a lost-sales question that no one notices from a price report alone.",{"title":231,"description":232},"Feeding your own repricing rules","The export is a normal REST API or CSV, so it drops into whatever repricing logic you already run. Scrapewise supplies the observation; your rules decide what to do with it.",{"title":234,"intro":235,"items":236},"What this page is not promising","We would rather say this here than in a support ticket.",[237,240,243,246,249,252],{"title":238,"text":239},"No dedicated Otto endpoint","There is no Otto data API in our catalogue and no pre-built Otto schema. The AI scraper reads the page you point it at, and that is the whole mechanism.",{"title":241,"text":242},"No partner-account data","Anything behind Otto's partner login, your orders, your stock, your performance figures, is not reachable by a scraper reading public pages.",{"title":244,"text":245},"Variants are extra URLs, not free fields","A run against the base product URL returns the default variant. Covering every size and colour means covering more pages, which changes the page count and the cost.",{"title":247,"text":248},"Daily, not real time","Daily is the fastest schedule. There is no real-time feed, no per-minute polling and no price-drop alerting.",{"title":250,"text":251},"No price-history database","We store nothing about Otto prices on our side. A price curve is something you build by scheduling the scraper, starting from the day you switch it on.",{"title":253,"text":254},"No SKU matching or selling tools","You get Otto's rows as Otto presents them. Mapping them to your catalogue is a separate job, we do not push prices to Otto, and we are not lawyers, so check Otto's terms before you run anything.",{"badge":256,"title":257,"description":258,"items":259},"FAQ","Otto.de scraping — questions","What people ask before pointing the scraper at otto.de.",[260,263,266,269,272,275,278,281,284],{"title":261,"description":262},"Does Otto have a public API for price data?","No. Otto's programmatic access is a partner API, gated behind an application and an approved commercial relationship, and aimed at partners managing their own listings. It is not something you sign up for to read competitor prices, and there is no public read API for otto.de product data.",{"title":264,"description":265},"How do I scrape Otto prices?","Sign up, paste otto.de product or category URLs into a new scraper, pick a ready schema or define your own columns, and set a daily schedule. Each run is available by REST API, CSV or Excel, and you are charged per page from your wallet.",{"title":267,"description":268},"Can I tell whether Otto or a marketplace partner is selling?","Yes, when the page says so, and it usually does. That distinction is one of the main reasons to scrape Otto at all, because a partner listing and an Otto listing for the same product can carry different prices, delivery terms and returns terms.",{"title":270,"description":271},"Can I get prices for every size and colour?","Variant price and stock are often only revealed once a variant is selected, so the base URL returns the default. Covering the full matrix means scraping more URLs. Say so up front and we will scope it that way, because it changes the page count and therefore the cost.",{"title":273,"description":274},"Can I scrape a whole Otto category?","Yes. Category and search URLs encode the filters you set in the browser, so a view you built by hand is a valid input. Category pages are lazily loaded and paginated, so a deep sweep is a list of URLs rather than one request.",{"title":276,"description":277},"Does it get blocked?","Otto challenges traffic that looks automated. A refused page escalates to a browser and then to a residential exit. Most pages come back. We do not promise every page on every run, and you are charged for the tier that was actually used.",{"title":279,"description":280},"How much does scraping Otto cost?","You pay per page from a prepaid wallet. Otto listings come back on a plain fetch, so the common case sits on the cheapest tier at EUR 0.15 per 1,000 pages; pages that get challenged escalate and are billed at the tier they used. Every account starts with 5 free requests, top-ups start at EUR 5, and your balance never expires. The full tier list is on the pricing page.",{"title":282,"description":283},"Will it match Otto listings to my own SKUs?","No. You get Otto's rows as Otto presents them. Tying a retail listing to the right product in your catalogue is a separate problem, covered on our product matching page.",{"title":285,"description":286},"Is scraping otto.de legal?","We cannot answer that for you and nothing here is legal advice. The scraper only reads pages that are publicly visible to any shopper, but whether you may collect and use that data depends on Otto's terms, your jurisdiction and what you do with it. Take your own advice before you start.",{"title":288,"items":289},"Where to go next",[290,294,298,302,306,310,314],{"anchor":291,"href":292,"text":293},"Kaufland scraper","/custom-scrapers/kaufland","The other large German marketplace most sellers watch alongside Otto.",{"anchor":295,"href":296,"text":297},"Idealo scraper","/custom-scrapers/idealo","The DACH price comparison side: one product page listing every merchant offer across the market.",{"anchor":299,"href":300,"text":301},"MediaMarkt scraper","/custom-scrapers/mediamarkt","The German electronics chain, where the price is set by the retailer rather than by a seller competing for a buy box.",{"anchor":303,"href":304,"text":305},"Competitor price tracking","/use-cases/competitor-price-tracking","The use case most people land on this page for: watching competitor prices on a schedule instead of by hand.",{"anchor":307,"href":308,"text":309},"Match Otto listings to your own SKUs","/use-cases/product-matching","Otto gives you listings, not your SKUs. This is the step that ties one to the other.",{"anchor":311,"href":312,"text":313},"Price list and free requests","/pricing","The full tier list, the wallet, and the 5 free requests you start with.",{"anchor":315,"href":316,"text":317},"Browse all data APIs","/scrapers/data-apis","The sources that do have a dedicated endpoint, with per-call prices.",[319,328,342,357,369,383],{"slug":320,"name":321,"category":4,"cardText":322,"domains":323,"region":325,"tier":326,"officialApi":327},"bol","Bol","Who holds the buy block on a bol listing, at what delivered price, and which other sellers sit underneath it.",[324],"bol.com","Netherlands and Belgium","Render plus residential tier","Retailer API for your own seller account only",{"slug":329,"name":330,"category":4,"cardText":331,"domains":332,"region":340,"tier":326,"officialApi":341},"ebay","eBay","Live listings, seller names and the sold and completed history that eBay's own API will not hand you. Daily schedule, REST, CSV or Excel.",[333,334,335,336,337,338,339],"ebay.com","ebay.co.uk","ebay.de","ebay.fr","ebay.it","ebay.es","ebay.com.au","Global, strongest in US, UK and DE","Public Browse API exists, but sold listings are not in it",{"slug":343,"name":344,"category":345,"cardText":346,"domains":347,"region":354,"tier":355,"officialApi":356},"idealo","Idealo","Price comparison","Every merchant offer on one idealo product page, read after JavaScript and returned as columns you choose. Daily schedule, REST, CSV or Excel.",[348,349,350,351,352,353],"idealo.de","idealo.at","idealo.co.uk","idealo.fr","idealo.it","idealo.es","DACH and Western Europe","Render tier","Merchant-facing only, no public read API",{"slug":358,"name":359,"category":4,"cardText":360,"domains":361,"region":367,"tier":326,"officialApi":368},"kaufland","Kaufland.de","Every seller on a Kaufland offer, the winning price and who holds it, read after JavaScript and returned as columns you choose.",[362,363,364,365,366],"kaufland.de","kaufland.at","kaufland.cz","kaufland.sk","kaufland.pl","Germany, Austria, Czechia, Slovakia, Poland","Seller API only, nothing for reading competitors",{"slug":370,"name":371,"category":372,"cardText":373,"domains":374,"region":381,"tier":326,"officialApi":382},"mediamarkt","MediaMarkt","Electronics retailer","Europe's largest electronics chain, read as columns you choose: price, the strikethrough above it, delivery, store pickup and the energy label.",[375,376,377,378,379,380],"mediamarkt.de","mediamarkt.at","mediamarkt.es","mediamarkt.nl","mediamarkt.be","mediamarkt.pl","Germany, Austria, Spain, Netherlands, Belgium, Poland","Nothing public for reading prices",{"slug":384,"name":5,"category":4,"cardText":10,"domains":385,"region":6,"tier":172,"officialApi":7},"otto",[9],{"title":387,"intro":388,"steps":389,"llm_example":402},"Set it up once. The data keeps coming.","Save your search once and it runs by itself. Every run lands in your own Scrapewise database, and you pick how to read it.",[390,393,396,399],{"title":391,"text":392},"Set it up once","Add your ASINs, keywords, places or apps to a scraper in the web app. New accounts get 5 free requests.",{"title":394,"text":395},"Runs on your schedule","Pick daily, weekly on the days you choose, every few days, or the first or last day of the month. Scheduled runs start at night, European time. Need it more often? Start runs from your own code.",{"title":397,"text":398},"Saved in your database","Each run adds dated rows, so this week sits next to last week. Rows are kept for 90 days.",{"title":400,"text":401},"Use it your way","Open the table in the web app and download the latest run as an Excel file. Ask your own AI assistant about it. Or pull the rows into your code with an API key.",{"title":403,"prompt_examples":404,"text":408},"Ask your AI assistant about your own data",[405,406,407],"Which of my ASINs lost the Buy Box this week?","Which competitor cut prices the most since Monday?","Show the keywords where I dropped out of the top 10.","Connect Claude Desktop or Claude Code with a read-only key. The assistant reads the rows you've already collected, at no extra cost on Scrapewise. With a full-access key it can start a run for you too.",1790283357591]