Technical audit · 13.09.2026

apotheka.ee

A pharmacy chain's site and online pharmacy

The site of the Apotheka pharmacy chain and its online pharmacy — a single capture of the cookie-policy page, 65 requests, 11 nodes. The stack is modest: there are no ad networks or Facebook pixel in the capture, and of the third-party marketing components there is the CRM platform Custobar. The cookie banner offers refusal on the first screen («I accept necessary»), but its text treats continued browsing as consent, and the marketing platform Custobar itself loads and requests campaigns before any choice. Custobar is not named in the available documents. There is no consent-management platform (to gate the tags) in the capture. All of this on a pharmacy site, where the personal ID code for digi-prescriptions and data on medicine purchases are processed.

Request timeline

+371…+378 ms · the marketing CRM before the choice
script.custobar.com/custobar-*.js (+371 ms) — the marketing CRM platform Custobar, the first third-party request; rx.apotheka.ee/public-app (prescription module, +372 ms); www.google.com/recaptcha (+378 ms). All before any choice in the banner.
+2022 ms · Custobar requests campaigns
api.custobar.com/api/js/campaigns with an access_token — the marketing platform requests campaigns (personalisation/advertising) before the user's choice.

Declared versus actual

✓ Controller of the online pharmacy — OÜ Mustamäe Apteek (licence 285, Vae 16, Laagri); the loyalty programme — Allium UPI OÜ — declared
✓ Processed: name, personal ID code (for verifying digi-prescriptions), contacts, delivery address, purchase history (customer card) — declared
✓ Official cookie policy: consent by continued browsing; without consent to necessary cookies the site cannot be used — declared
✓ The cookie policy acknowledges the transfer of collected information to third parties (analytics cookies) and its use for directed offers — declared
✓ Technical labels named: PHPSESSID, store/mage-translation-storage (Magento), form_key, _ga/_gid/_gat (Google Analytics) — declared
✓ Supervisory authority — Andmekaitse Inspektsioon — declared
+ The marketing CRM platform Custobar (loads and requests campaigns before the choice) is not named in the documents — not declared
+ The banner declares consent by continued browsing, while the marketing platform loads before the choice — not declared
+ There is no consent-management platform gating tag loading in the capture — not declared

Transfer timings

+371 ms script.custobar.com

custobar-*.js, the first third-party request; not named in the documents.

+2022 ms api.custobar.com

api/js/campaigns with an access_token — personalisation/advertising.

+378 ms www.google.com

Form protection.

Detected trackers

Indicators of GDPR non-compliance

Context

apotheka.ee is the site of the Apotheka pharmacy chain and its online pharmacy (e-apteek). The legal entity of the online pharmacy is OÜ Mustamäe Apteek (licence 285, Vae 16, Laagri); the loyalty programme is run by Allium UPI OÜ. A pharmacy is a specially sensitive category, close to medical: per the documents, the name, the personal ID code (needed to verify digi-prescriptions) and the history of medicine purchases are processed. The processing is described by a policy summary (in the set) and the official cookie policy on the site; the site runs on the Magento platform.

The capture is a single recording of the cookie-policy page (/privacy-policy-cookie-restriction-mode/): 65 requests, 11 nodes. The full policy was confirmed via its direct link: it confirms the consent-by-continued-browsing model.

Who data goes to directly

The marketing CRM platform Custobar (loads before the choice, requests campaigns). Functionally — reCAPTCHA, fonts, the prescription module rx.apotheka.ee. The requests to the translators (edge.microsoft.com/translate, translate.googleapis.com) are a capture-tool artefact (page translation in the browser), not site components. Google Analytics did not fire in this capture, although the policy mentions it.

Declared versus actual

The discrepancy here is at two points, both significant for the pharmacy context.

Consent is declared by continued browsing, and marketing loads before the choice. There is a cookie banner on the site and, it should be noted, it offers refusal on the first screen — three buttons: «Cookie settings», «I accept necessary», «I accept all». But its text directly treats passivity as consent: «By continuing to use our site, you agree to the use of cookies» — the implied-consent model, which the EDPB does not consider valid consent. And, more importantly, the marketing CRM platform Custobar loads as the very first third-party request at +371 ms, and at +2022 ms requests marketing campaigns (api.custobar.com/api/js/campaigns with an access_token) — before any choice by the user. The banner itself states its purpose as «personalising content and advertising», for which consent is required — but the personalisation platform runs before the user has chosen anything. There are no requests to a consent-management platform in the capture: the banner is implemented by an in-house script and does not hold tag loading back.

And the marketing recipient is not disclosed. The available documents describe technical cookies (PHPSESSID, form_key, Magento) and mention Google Analytics. But Custobar — a Finnish marketing-automation platform that actually loads and requests campaigns — is not named in the documents. The official cookie policy meanwhile directly acknowledges that information collected via cookies is passed to third parties in certain situations and used for «offers directed specifically at you». That is, the fact of transfer is acknowledged in general terms, but the specific recipient (Custobar) is not named — and on a pharmacy site, where the visitor views and buys medicines, personalising marketing on this data is especially sensitive.

Proven: Custobar loads and requests campaigns before the choice. custobar-*.js at +371 ms, api/js/campaigns at +2022 ms; there is no consent-management platform in the capture.

Proven: the banner declares consent by continued browsing. The screenshots record the text «By continuing to use our site, you agree» alongside three buttons (refusal on the first screen is present).

Proven: Custobar is not named in the documents. Neither the policy summary nor the official cookie policy contains the name Custobar.

Not established: the consent decision. There is no record of a choice in the capture; the key fact is that Custobar ran before the choice.

Not proven: the content of the Custobar requests and any transfer of medicine data. What exactly goes to Custobar beyond the campaign request and the access_token cannot be read from the cleaned file; the capture was made on the policy page, not on a medicine product page or in the basket, so the transfer of specific purchase data was not observed in this capture.

Not proven: the operation of Google Analytics. There are no GA requests in this capture, although the policy mentions _ga/_gid/_gat; behaviour may differ on other pages.

Observation boundaries

The capture covers a single page (the cookie policy) and records browser behaviour, not server-side processing: what Custobar does with the received data and how it is linked to the loyalty programme (Allium UPI OÜ) is not verified by a browser capture. The capture was made on the policy page, not on a medicine product page, in the prescription module or in the basket, so the processing of the personal ID code and data on medicine purchases was not observed in this capture — it relates to the ordering scenarios and is not verified by a browser capture on this page. The requests to the browser translators (edge.microsoft.com, translate.googleapis.com) are attributed to capture-tool artefacts. The full cookie policy could be confirmed via its direct link through search (the site did not respond on a direct visit); the consent-by-continued-browsing model reads directly from it.

The file is published cleaned of personal data (67 redactions, self-check clean); Custobar’s loading before the choice, the campaign request and the absence of requests to a consent platform can be verified directly against the published file and the screenshots. The banner and its buttons are from the screenshots (live UI).

The legal assessment is made by the competent authority — Andmekaitse Inspektsioon.

Conclusion

The pharmacy site keeps a cookie banner that offers refusal on the first screen («I accept necessary») — this is better than notice-only stubs. But the banner’s text treats continued browsing as consent (implied consent), which the European regulator does not recognise as valid, and the marketing CRM platform Custobar loads and requests campaigns before any choice — even though the banner itself names personalising advertising as its purpose. There is no consent-management platform that would hold the tags back until the choice in the capture.

Separately: Custobar is not named in the available documents, although the official cookie policy acknowledges in general terms the transfer of collected information to third parties and its use for directed offers. On a pharmacy site, where the personal ID code for digi-prescriptions and data on medicine purchases are processed, precision about who receives data and when it goes out matters especially.

Remediation: condition the loading of the marketing platform Custobar on actual consent, so that before the choice it neither loads nor requests campaigns; replace the «by continuing to browse, you agree» wording with a mechanism offering an active choice and tag gating by the decision (introduce a consent-management platform that holds loading back); name Custobar in the cookie policy as a recipient with its purpose stated; preserve the presence of a refusal button on the first screen and extend the «consent → loading» principle to the marketing stack, which is especially important for the pharmacy context.

Evidence

How to verify: download the file and compute its checksum — sha256sum file.har (Linux, macOS) or certutil -hashfile file.har SHA256 (Windows); it must match the one shown. The conclusions apply to the scope of this measurement — see the limitations of the method.

Original (audit)
HAR file: ee/apotheka-ee-2026-09-13.har
SHA-256: 55f3d0b041cedec467d2afb2d034a155335b49730a3dce1a1fb536b107317ad2
Screenshot
Скриншот интерфейса
Cookie banner (ET): «Küpsiste seaded» / «Nõustun vajalike küpsistega» / «Nõustun kõigi küpsistega» — refusal on the first screen, but the text «by continuing to browse, you agree» · 13.09.2026
Скриншот интерфейса
The same banner (RU): «By continuing to use our site, you agree» — consent by continued browsing · 13.09.2026
Скриншот интерфейса
Category settings: marketing and statistics off by default · 13.09.2026
Скриншот интерфейса
Composition of sources in DevTools: Custobar among the loaded components · 13.09.2026
Re-check snapshot
Awaiting changes
HAR files are stored on EU infrastructure (Proton Drive). SHA-256 is published for integrity verification.