Hepsiburada Price Tracker – Turkish Price Comparison
Pricing
$2.00 / 1,000 price rows
Hepsiburada Price Tracker – Turkish Price Comparison
Track live Hepsiburada prices: TRY price, seller, stock, rating and barcode per product URL or exact title. $0.002 per price row. Trendyol and n11 not included.
Pricing
$2.00 / 1,000 price rows
Rating
0.0
(0)
Developer
Atesen Software
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Hepsiburada Price Tracker – Turkish Price Comparison API
Turkish price comparison starter Actor that today tracks live Hepsiburada prices only. Give it Hepsiburada product URLs (recommended) or exact Hepsiburada product titles and it returns one row per matched product with the TRY price, seller, stock, rating, barcode and URL. Trendyol and n11 are not included: Trendyol is excluded after a terms review, and n11 returned HTTP 403 on robots.txt, so this is not a Trendyol vs Hepsiburada vs n11 comparison yet. Pricing: $2 per 1,000 price rows ($0.002 per row). You pay only for rows with a matched price; misses and blocked sources are free and listed in the run's REPORT.
A missing value stays null; no invented prices, zero-price placeholders or inferred stock are returned. One marketplace is a single observation, not proof of the cheapest price in Turkey.
Why use this Actor?
It supplies strict product identity checks, a stable JSON output, separate run diagnostics, and a small HTTP-only implementation. No browser, paid proxy, external paid API, login session or challenge bypass is used. Apify provides schedules, API access and integrations. There is no claim of three-source coverage.
Three use cases
- Procurement checks: submit exact model, capacity and color names to prepare comparable supplier observations. Review
comparedSourcesbefore choosing a supplier. - Barcode-safe catalog checks: submit Hepsiburada product URLs; product pages expose the barcode (GTIN), seller and stock, so similarly named models are never merged. Barcode-only search strings rarely match, because Hepsiburada search results do not expose barcodes.
- Price monitoring workflows: submit a group of product URLs for each product, export matched observations, and route incomplete source coverage for manual review. Do not interpret an unavailable source as out of stock.
Source access and compliance
Reviewed on 26 October 2026:
| Source | Current behavior | Evidence |
|---|---|---|
| Trendyol | Excluded; no requests | Terms restrict copying and redistribution; robots.txt disallows search paths. |
| Hepsiburada | Conditional public HTTP lookup | Official hosted membership text contains no explicit bot clause found in this review, but its current visitor applicability is unverified. Robots is checked at runtime; forbidden paths are skipped. |
| n11 | Disabled; no product requests | Robots returned HTTP 403 during direct preflight; visitor terms could not be retrieved. This is an access limitation, not a claim that its terms prohibit scraping. |
Policy decisions cannot be overridden by input. HTTP errors and challenges stop that source for the rest of the run, without retrying through another route. Contact details, user profiles and reviews are not collected. Shop display names are the only seller field. Obtain appropriate source permission before enabling excluded sources in a future reviewed release.
How to run Turkish price comparison locally
- Install dependencies with
npm ci --ignore-scripts(Node.js 22 or newer). - Put input in
storage/key_value_stores/default/INPUT.json. - Run
apify run --user-agent apify-agent-skills/apify-actor-development. - Inspect dataset items and the
REPORTkey in the local key-value store.REPORT.statuscan beincompleteeven when execution exits normally.
See the input schema for full configuration options.
Input: names, EAN/barcodes and product URLs
{"products": ["Apple iPhone 15 128 GB Siyah", "0123456789012"],"productUrls": [],"maxProducts": 20,"requestDelayMillis": 2000,"requestTimeoutSecs": 20}
The barcode above illustrates formatting, not a verified catalog identifier. Send barcodes as strings to preserve leading zeros, but note that Hepsiburada search pages usually do not expose barcodes, so barcode-only inputs often return no match; prefer product URLs. Names must match the complete normalized Hepsiburada title; partial or fuzzy names (for example iPhone 15 128 GB) are deliberately not accepted as proof of identity. Search-page matches may leave seller and inStock as null; direct product URLs return them when the page publishes them. Different colors, capacity, bundles and accessories must remain separate.
productUrls accepts a URL string per product, or an array of up to three URLs describing one product. Only HTTPS direct product URLs on the three named marketplaces are accepted; credentials, arbitrary hosts, account pages and checkout pages are rejected. Query strings are removed. Subsequent sources in a URL group must match the first observed title or barcode. A URL from an excluded source stays excluded.
maxProducts is 1–100; delay is 1,000–60,000 ms; timeout is 5–60 seconds. Unknown input keys, proxies and source-policy overrides are rejected.
Output fields and missing data
| Field | Type | Meaning |
|---|---|---|
query, barcode, scrapedAt | string / null | Input identity and observation time |
trendyol, hepsiburada, n11 | object | Each contains price, currency, seller, inStock, rating, url, title, barcode, status, error |
cheapestSource, cheapestSources, cheapestPrice | string / array / number / null | Positive TRY offers with explicit in-stock availability only; ties retained |
comparedSources | integer | Number of offers eligible for ranking |
complete, status | boolean / string | All three matched, or partial / unavailable |
Shipping, coupons, member discounts and installment differences are not included. Unknown stock prevents cheapest ranking. Aggregate low-price ranges are not specific seller offers. Missing or invalid prices and unknown currencies stay in diagnostics.
Only rows with an exact matched product enter the dataset. Fully unavailable attempts go to REPORT.diagnostics and never become billable product rows. The report also includes source-policy evidence, processed counts and an explicit error when no source returns a match. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.
An unavailable diagnostic has this shape (illustrative; use evidence/local-report.json for the actual run):
{"query": "Example Product 128 GB Black","cheapestSource": null,"cheapestSources": [],"cheapestPrice": null,"comparedSources": 0,"complete": false,"status": "unavailable"}
Pricing
Pay per event: $0.002 per price row ($2 per 1,000 rows), charged as the result event. A row is charged only when at least one source returned a matched, positive TRY price. Unmatched, blocked or excluded lookups are written to REPORT.diagnostics free of charge. Standard Apify platform usage is billed by Apify as usual.
n8n example
Use a Manual Trigger → Apify “Run an Actor” node → Apify “Get Dataset Items” node. Select this Actor (build latest), pass the input JSON above and wait for completion. Use an IF node on hepsiburada.status = matched to store the price, and read REPORT from the run's default key-value store if the dataset is empty. Because only Hepsiburada is enabled, complete is always false and status is partial for priced rows. Keep credentials in n8n's credential store.
Make example
Use a manual scenario trigger → Apify “Run an Actor” → Apify “Get Dataset Items” → iterator → spreadsheet row. Wait for the Actor to finish and filter on hepsiburada.status = matched. Add an empty-dataset route that reads the REPORT record using Apify “Get a Key-Value Store Record”. Store the Apify connection in Make; never paste tokens into input JSON.
FAQ and support
Why is a product missing?
Check REPORT: the source may be excluded, blocked, robots-disallowed, unreadable, or unable to prove an exact product match. The Actor does not solve CAPTCHAs, reuse login cookies or try paid residential proxies. A changed page layout produces an explicit unreadable status.
Can this find the cheapest price across Trendyol, Hepsiburada and n11?
No. The source-policy and access restrictions above prevent that claim. Tests verify parser behavior, strict matching and safe failures; they do not establish live three-marketplace coverage. Today it returns Hepsiburada prices only. Report issues through the Actor's Issues tab; the API tab documents programmatic access.