Trusted Shops Scraper - German Online Shop Emails & Phones avatar

Trusted Shops Scraper - German Online Shop Emails & Phones

Pricing

$9.00 / 1,000 per shop lead delivereds

Go to Apify Store
Trusted Shops Scraper - German Online Shop Emails & Phones

Trusted Shops Scraper - German Online Shop Emails & Phones

Every Trusted Shops certified online shop on trustedshops.de as a B2B lead: legal company name, Impressum address, email, phone, Handelsregister court + number, managing director, Gütesiegel status and ratings. Filter by category, country, member-since. $0.009 per shop.

Pricing

$9.00 / 1,000 per shop lead delivereds

Rating

0.0

(0)

Developer

Scrapers Delight

Scrapers Delight

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Trusted Shops Scraper — German Online Shop Emails, Phones & Handelsregister

Get every Trusted Shops member shop on trustedshops.de as a B2B lead: legal company name, Impressum street address, email, phone, website, Handelsregister court and number, the person who represents the company, the Gütesiegel (trustmark) status and the full rating block. One row per shop, keyed on the Trusted Shops ID.

Trusted Shops certifies online shops selling to German consumers, and certification requires a complete, verified Impressum. The shop's profile page publishes that identity. This actor reads it from the profile's own structured data (no field labels are guessed or translated) and returns it as clean columns.

Who buys this: payment providers, shipping and returns software, ERP / tax / accounting integrators, e-commerce agencies, marketplaces and anyone else selling to established DACH online shops. Every shop in this list has paid for a trustmark, so it is an active, invested e-commerce business.

What you get: measured, not promised

Measured on live runs on 2026-09-23, on two samples taken in different ways (a single sample can be skewed):

FieldSitemap sample (600 certified shops)Category sample (400 certified shops, Bekleidung + Baumarkt)
email99.8%98.8%
phone89.2%91.0%
email and phone89.0%90.3%
street + postal code + city99.8%100%
legal company name100%100%
Handelsregister number75.2%77.5%
Handelsregister court75.2%78.0%
represented by (managing director / owner)97.0%96.0%
website100%100%
rating (12 months)47.2%100%
delivery / goods / service marks48.0%98.8%
  • The email is the shop's company mailbox in most rows: it sits on the shop's own domain in 65% of the sitemap sample and 83% of the category sample. Freemail (gmail, gmx, web.de …) appears in 3.2% and 1.3%. Two flags, emailOnShopDomain and emailIsFreemail, let you filter on this.
  • Handelsregister numbers are missing for sole traders (who are not in the commercial register) and for sellers based abroad. Those sellers print their own country's register instead, for example KVK 76615464 (NL), FN 62825s (AT) or REGON 363670423 (PL).
  • The rating is null for shops whose profile shows "Keine Bewertungen" (no reviews). Long-standing members listed at the top of the sitemap often have none, which is why the two samples differ so much on rating fill.
  • Where a field is missing, the site did not publish it for that shop. It is not a parser gap: every field the site publishes reaches the row, and the offline test checks this on every sample profile.

How it works

  1. Whole directory. Leave the inputs empty and the actor walks the member sitemap (/ts_sitemaps/profile.xml, 14,663 member profiles on 2026-09-22). It checks that sitemap has at least 10,000 profiles and that its <loc> count matches before using it.
  2. By category. Pick one or more of the 34 directory categories. The actor walks the directory's own listing, which trustedshops.de itself filters to shops with a valid Gütesiegel, so only matching shops are fetched. Every category is checked against the total the site states (for example Optiker: the site says 50 certified shops, and a live run delivered all 50). If a listing page stays down through every retry, the rest of that category is taken from the sitemap instead, so no category comes back short.
  3. By shop. Paste Trusted Shops IDs or profile URLs to look up exactly those shops.

Each profile page is about 1.4 MB. The actor checks every page arrived complete before reading it. A page cut off mid-download is fetched again, never read as "this shop publishes nothing".

Input

FieldTypeDefaultWhat it does
categoriesarray—Directory categories (34, e.g. lebensmittel, bekleidung, baumarkt, optiker). Empty = whole directory.
shopsarray—Trusted Shops IDs (X + 32 hex) or profile URLs. A shop you name is returned whatever its Gütesiegel status.
certificateStatusvalid | anyvalidvalid = only shops with a currently valid Gütesiegel (about 4 in 5 members). any = every member, including invalid certificates and reviews-only memberships.
sellerCountriesarray—Keep only sellers whose Impressum address is in these countries (DE/DEU, AT, CH, NL …).
memberSinceFromdate—Only shops that joined Trusted Shops on or after this date (YYYY-MM-DD), useful for finding new members.
minReviewCount12Monthsinteger0Skip shops with fewer reviews in the last 12 months (a rough measure of order volume).
requirePhonebooleanfalseOnly shops that publish a phone number.
requireRegisterNumberbooleanfalseOnly shops that publish a commercial-register number.
includeCriteriaRatingsbooleantrueAdds the DELIVERY / GOODS / SERVICE marks and the rating label, at one extra ~1.5 KB request per shop.
excludeTsIdsarray—Suppression list: shops already in your CRM or delivered earlier. Never charged.
maxItemsinteger30Stop after this many delivered shops. Raise it (e.g. 20000) for the whole directory.
maxConcurrencyinteger10Profiles fetched in parallel.
proxyConfigurationobjectdirecttrustedshops.de runs no anti-bot, so the default is a direct connection. A request that fails is retried once through Apify RESIDENTIAL automatically.

Example: every certified food and drink shop with a phone number

{
"categories": ["lebensmittel", "genussmittel"],
"requirePhone": true,
"maxItems": 5000
}

Example: shops that joined since the start of 2026 and are based in Austria or Switzerland

{
"certificateStatus": "any",
"sellerCountries": ["AT", "CH"],
"memberSinceFrom": "2026-01-01",
"maxItems": 1000
}

Output

A real row, delivered by the live actor on 2026-09-23 (description shortened here):

{
"tsId": "X236713B7D2601C105AB7AD0FF597A6B7",
"shopName": "Kaffeezentrale DE",
"companyName": "Kaffeezentrale DE GmbH",
"imprintName": "Kaffeezentrale DE GmbH",
"email": "info@kaffeezentrale.de",
"phone": "+4923451659000",
"website": "www.kaffeezentrale.de",
"domain": "kaffeezentrale.de",
"street": "Lothringer Allee 8",
"postalCode": "44805",
"city": "Bochum",
"countryCode": "DEU",
"registerCourt": "Amtsgericht Bochum",
"registerNumber": "HRB 7383",
"registerType": "HRB",
"representedBy": "Bernd Kerkhoff",
"contactFormUrl": null,
"whatsappUrl": null,
"emailOnShopDomain": true,
"emailIsFreemail": false,
"certificateStatus": "VALID",
"hasValidTrustmark": true,
"certificationType": "CLASSIC",
"certifiedSince": "2012-01-30",
"memberSince": "2012-03-15",
"rating": 4.93,
"reviewCount12Months": 3032,
"reviewCountAllTime": 28636,
"ratingDistribution12Months": { "1": 6, "2": 7, "3": 14, "4": 132, "5": 2873 },
"ratingLabel": "EXCELLENT",
"deliveryRating": 4.93,
"goodsRating": 4.93,
"serviceRating": 4.93,
"categories": ["Haushaltswaren & Haushaltsgeräte", "Lebensmittel", "Genussmittel"],
"keywords": ["Bier", "Kaffee"],
"description": "Kaffeezentrale - seit 1999 Ihr Partner für Kaffee, Espresso, Cappuccino & Co. …",
"logoUrl": "https://channel-settings.etrusted.com/logo-1c48f397-44e5-4d93-a8c2-0d319e29f201--medium",
"socialLinks": [],
"hasOtherMarketProfiles": false,
"targetMarket": "DEU",
"language": "de",
"profileType": "member",
"profileUrl": "https://www.trustedshops.de/bewertung/info_X236713B7D2601C105AB7AD0FF597A6B7.html",
"scrapedAt": "2026-09-23T04:25:00.299Z"
}

Every field

FieldMeaning
tsIdTrusted Shops ID, the directory's own key. One row per TSID; duplicates are never delivered or charged.
shopNameShop name as shown on the profile.
companyNameLegal company behind the shop.
imprintNameName on the profile's Impressum address block.
emailContact email as published. Trusted Shops' own addresses are never emitted (checked by test).
phonePhone exactly as published, usually +49…. Never reformatted or completed.
website, domainShop URL as published; its host in lower case without www. (IDN domains such as kanapee-möbel.de kept).
street, postalCode, city, countryCodeImpressum address; country as ISO alpha-3.
registerCourt, registerNumberHandelsregister court and number exactly as printed. Only whitespace is tidied; a number is never completed or "repaired".
registerTypeHRB, HRA, GnR, PR, VR or GsR, read off the printed number.
representedBy"Vertreten durch": managing directors or owner.
contactFormUrl, whatsappUrlExtra contact channels, when published.
emailOnShopDomain, emailIsFreemailWhether the email is on the shop's own domain, or on a freemail provider.
certificateStatusWhat the profile's Gütesiegel box shows: VALID ("Gültig"), INVALID ("ungültig"), NOT_SHOWN (no box: reviews-only or pending).
hasValidTrustmarktrue exactly when certificateStatus is VALID.
certificationTypeCLASSIC (audited trustmark) or NO_AUDIT (reviews-only membership).
certifiedSinceThe date the profile prints as "Zertifiziert seit" (only for VALID).
memberSinceStart of the Trusted Shops membership.
rating, reviewCount12Months, reviewCountAllTime, ratingDistribution12MonthsThe profile's rating block. rating is null, never 0, when there are no rated reviews.
ratingLabel, deliveryRating, goodsRating, serviceRatingMarks from Trusted Shops' public quality endpoint. Only emitted when the profile itself shows a rating.
categories, keywordsDirectory categories and sub-category keywords.
description, logoUrl, socialLinksThe shop's own profile content.
hasOtherMarketProfilesThe same company runs further Trusted Shops profiles (other countries).
targetMarket, language, profileType, profileUrl, scrapedAtProfile metadata.

The run also writes a RUN_SUMMARY record to the key-value store. It counts profiles examined, rows delivered and rows removed by each filter, and keeps apart the three kinds of nothing: not found (the profile does not exist), no contact (the profile publishes no email, phone or street address) and unreachable (still failing after retries). None of these is charged.

Pricing

$0.009 per shop delivered. Plain pay-per-event with no start fee. You are charged only for rows that land in your dataset with at least one way to reach the shop.

You are never charged for: a profile that does not exist, a profile with no contact data, a profile we could not reach, a shop your filters or suppression list removed, or a duplicate. A test run with the default maxItems of 30 costs at most $0.27.

About filters: certificateStatus, sellerCountries, memberSinceFrom, minReviewCount12Months, requirePhone and requireRegisterNumber are applied after each profile is read. A narrow filter therefore reads more profiles than it returns, and runs longer, but you still pay only for delivered rows. Category mode does not have this cost: the site filters to valid certificates before anything is fetched.

Speed

At the default 1,024 MB: 600 shops in 94 s from the sitemap and 400 in 94 s by category. The whole directory (14,663 profiles) takes roughly 25 to 40 minutes, depending on how fast trustedshops.de answers.

Data limits

  • Germany first. This version covers trustedshops.de, the German market (targetMarket = DEU). About 1 in 7 of its shops are legally based in another country (NL, PL, AT, CZ, DK, IT, BE measured), and countryCode / sellerCountries tell them apart. The .at / .ch / .nl / .fr / .pl markets are not yet covered.
  • Members only. The sitemap and listings return paying members. Unclaimed "non-member" profiles (about 5,600 more on trustedshops.de) carry no verified identity and are left out on purpose.
  • Two rating sources can disagree. For a few shops the public quality endpoint reports reviews while the profile shows "Keine Bewertungen" (16 of 600 in the sitemap sample). The row follows the profile page and leaves those marks null.
  • Register numbers as printed. Some shops write the court into the number field (Amtsgericht Hamburg HRB 142867) and leave the court field empty. The actor ships what was printed and does not split or complete it.

Source

Data comes from the public trustedshops.de profile pages, the directory's own listing, the member sitemap and the public api.trustedshops.com quality endpoint. No login and no personal account are used.

This actor is not affiliated with, endorsed by or connected to Trusted Shops. "Trusted Shops" and "Gütesiegel" are used only to describe the data source.

FAQ

How many shops are there? 14,663 member profiles on trustedshops.de on 2026-09-22, of which about 4 in 5 hold a valid Gütesiegel. Per category, the certified count is shown on the site (for example Lebensmittel 1,290, Bekleidung 1,292, Optiker 50).

Can I get only new members? Yes. Set memberSinceFrom, and certificateStatus: "any" if you also want members who are not yet certified.

Can I refresh a list I already have? Pass the TSIDs in shops. Use excludeTsIds to skip shops you already hold.

Do I need a proxy? No. The default is a direct connection. If trustedshops.de ever starts refusing it, the actor falls back to Apify RESIDENTIAL on its own.

Why is the email empty for a few shops? Those shops publish only a phone number, a contact form or a WhatsApp link, and those channels are delivered instead. A shop with no email, no phone and no street address is not delivered and not charged.