Amazon EAN to ASIN & Offers | $1/1K
Pricing
from $1.00 / 1,000 ean / asin lookups
Amazon EAN to ASIN & Offers | $1/1K
$1 per 1,000 lookups, up to 100 per run. Turn EANs, UPCs, GTINs, ISBNs or ASINs into Amazon's matching ASIN with its buy box and seller offers: price, shipping, FBA, stock and seller rating. 23 marketplaces.
Pricing
from $1.00 / 1,000 ean / asin lookups
Rating
0.0
(0)
Developer
PricePirate
Maintained by CommunityActor stats
1
Bookmarked
9
Total users
5
Monthly active users
3 days ago
Last modified
Categories
Share
Amazon EAN to ASIN, Price & Offers | $1/1K
Turn a list of barcodes into Amazon data. For every EAN, UPC, GTIN, ISBN or JAN you give it, this Actor finds the product on Amazon and returns its ASIN, its buy box, and the seller offers on the first page of Amazon's offer list: price, shipping, total, condition, FBA, Prime, stock and seller rating. If you already have ASINs, you get their offers directly.
$1 per 1,000 lookups on every Apify plan, 23 Amazon marketplaces, up to 100 identifiers per run.
Good for catalogue matching (EAN → ASIN), price monitoring and repricing, arbitrage and sourcing research, marketplace onboarding, and checking who holds the buy box on your own products.
✓ What you get
- EAN → ASIN for EAN-8, EAN-13, UPC-12, GTIN-14, ISBN-13 and JAN barcodes
- Offers by ASIN: give an ASIN (or a book's ISBN-10) and the search is skipped
- Buy box: seller, price, shipping and total of the offer that wins it
- Up to about 10 offers per product, each with seller name, seller ID and seller-page link, seller rating, condition, price, shipping, total, delivery estimate, FBA, Prime, stock and a buy-box flag
- Offer count across all pages, with a flag when page 1 does not show them all
- Product details (optional): brand, description, bullet points, images, categories with browse-node IDs, technical details, the GTIN when Amazon prints one, stock, Amazon's Choice and Best Seller flags
Mixed input is fine: the Actor detects each value's type, checks barcodes against their check digit, and removes duplicates (a UPC-12 and the same code as an EAN-13 with a leading zero count once).
💻 Input
{"identifiers": ["4006381333931", "9120018350599", "B001AXLDDO"],"marketplace": "de","zipcode": "80331","includeDetail": false}
identifiers(required): 1 to 100 values, one per line. Split longer lists into several runs.marketplace(defaultde): one ofde,us,gb,fr,it,es,nl,be,pl,se,ie,tr,ca,mx,br,jp,in,au,sg,ae,sa,eg,za, oruk(an alias forgb). One marketplace per run. Austria (at) is not an Amazon marketplace and is unsupported.zipcode(optional): the delivery location that prices, shipping and offers are shown for. The default is the capital (10115 Berlin on amazon.de, 75001 Paris, SW1A 1AA London, …). Only marketplaces that localize by ZIP code take one:de,us,gb,fr,it,es,ca,jp,in,ie,za. The format is checked before the run starts.includeDetail(defaultfalse): also fetch the product page of every match. Charged separately, see Pricing.
💻 Output
One dataset item per input value:
{"query": "9120018350599","operation": "search-by-gtin","country": "de","status": "found","result": {"asin": "B001AXLDDO","name": "Träumeland T014301 - Babymatratze Regenbogen 60 x 120 cm","url": "https://www.amazon.de/dp/B001AXLDDO","image": "https://m.media-amazon.com/images/I/41iYiseYxWL.jpg","rating": 4.6,"rating_count": 92,"buy_box": { "position": 1, "shop_name": "tiSsi Kindermöbel", "price": 69.95, "shipping": 0, "total": 69.95, "…": "…" },"offers_count": 5,"offers_truncated": false,"offers": [{"position": 1,"seller_id": "ACQ8QTNHIZQJ8","shop_name": "tiSsi Kindermöbel","shop_url": "https://www.amazon.de/sp?seller=ACQ8QTNHIZQJ8","shop_review_rating": 3.5,"shop_review_count": 7,"condition": "new","condition_text": "Neu","currency": "EUR","price": 69.95,"list_price": null,"shipping": 0,"total": 69.95,"shipping_note": "für qualifizierte Erstbestellung","availability_text": "6. - 7. Oktober","delivery_min_hours": 24,"delivery_max_hours": 72,"ships_from": "tiSsi Kindermöbel","is_fba": false,"is_prime": false,"is_buy_box": true,"stock": 25}],"detail": null}}
operation:search-by-gtin(the barcode was searched on Amazon) oroffers-by-asin(you gave the ASIN).offers_countis Amazon's count across all offer pages. When it is larger than the number of rows inoffers,offers_truncatedistrue.shippingis the shipping charge Amazon shows for the delivery location.shipping_notekeeps Amazon's condition text, because free shipping is often conditional ("for qualifying first orders").stockis the quantity Amazon lets a buyer add to the cart. Amazon may cap it, so treat it as "at least", not as the seller's full inventory.
The Overview table in the Console shows query, status, ASIN, name, buy-box price and offer count; the Offers table has one row per offer.
💻 Statuses & errors
status | Meaning | Charged |
|---|---|---|
found | A product matched; result has its offers | yes |
not_found | Amazon's search had no organic result for the barcode, or the ASIN does not exist on this marketplace | yes |
invalid | Not a valid barcode (wrong check digit or length) or ASIN; nothing was looked up | no |
error | The lookup failed; see errorCode | no |
A product with no sellers right now is found with offers: [] and
buy_box: null.
errorCode | statusCode | Meaning |
|---|---|---|
invalid_input | 400 | On invalid items: why the value was rejected |
free_limit_reached | 402 | This operation's whole batch exceeds the remaining lifetime result allowance |
concurrency_limit_reached | 429 | This account's other Amazon runs hold the lookup capacity; try smaller batches or wait |
timeout | 408 | Amazon did not answer in time |
internal_error | 500 | Amazon could not be fetched for this value right now |
Errors are never charged. Run the failed values again later.
💰 Pricing
Pay per event, the same price on every Apify plan:
| Event | Price | When |
|---|---|---|
ean-lookup | $1.00 per 1,000 | each found or not_found item |
detail | $1.00 per 1,000 | each item that includes product details (includeDetail) |
invalid and error items are free. All completed results are delivered even
if your maximum cost per run leaves no budget to charge them. Detail is charged
only when successful detail data is actually returned, never just because
includeDetail was requested. There are no separate platform usage charges.
Example: 100 barcodes, of which 60 are found, 38 are not found, 1 is
invalid and 1 times out: you pay for 98 lookups, $0.098. With
includeDetail you also pay for the 60 details, $0.158 in total.
Free Apify plans get 50 lifetime completed results per account on Amazon.
The gateway owns this quota, separately from Idealo and Google Shopping.
found and not_found consume it, including uncharged results; errors and
invalid inputs do not. Old Actor run counters/datasets are not imported.
Each gateway job reserves its whole batch before work, with no truncation.
If that batch will not fit, all its values receive free_limit_reached.
Mixed barcode/ASIN input uses two operation-specific jobs. Admission is atomic per job, not per mixed run: one group can complete and consume quota while the other is refused. Which group wins can depend on concurrent admissions. For example, with 50 free results remaining a 40-GTIN + 40-ASIN run can admit one 40-value job and reject the other, not reject all 80 together. Use single-operation runs if you need a single admission decision.
Timing and run outcome
Up to 100 identifiers per run and 100 outstanding Amazon lookups per Apify account (separate from the gateway's non-Amazon pool). A 429 waits 15, 30, 60, 120 and 240 seconds while budget remains. Both operation jobs share an 890-second admission/polling budget, poll every 15 seconds, and salvage finished partials at deadline. Missing results become free timeout items. Requests have a 30-second timeout; set Actor and saved-task timeouts to 960 seconds for salvage and delivery headroom.
Runs always end succeeded, including total failure, with error items and an explanation in the log/status message. Restart behavior mirrors Idealo: input is re-submitted, not resumed from a persisted gateway job. A restart can repeat dataset items, quota consumption and charges; avoid unnecessary restarts.
📬 Contact & support
Questions or higher limits: support@pricepirate.com