Gratuit, fără cont, fără abonament
Bannerul care repară exact ce ți-a găsit scanarea
O linie de cod în <head>. Blochează efectiv scripturile de urmărire înainte de consimțământ — nu doar afișează un mesaj. Publică Google Consent Mode v2 refuzat implicit din prima milisecundă. Română și rusă. Și, dacă vii de la un raport de scanare, vine deja configurat cu terții pe care i-am observat pe site-ul tău.
- Blocare reală pre-consimțământ
- Consent Mode v2
- RO + RU
- Fără IP brut în jurnal
- ~11 KB comprimat
De ce e diferit: pleacă de la măsurătoare, nu de la un formular
Un banner de consimțământ generic nu are cum să știe ce încarcă site-ul tău. Îl instalezi, alegi niște categorii dintr-un meniu și speri că acoperă tot. Dacă ai un contor local, un pixel pus acum trei ani de o agenție sau un script pe care nu-l mai recunoaște nimeni, bannerul nu-l va bloca — pentru că nu știe că există.
Noi avem scannerul. Cererile către terți pe care le-am observat pe site-ul tău, înainte de orice consimțământ, sunt exact lista pe care o primește bannerul. Terții pe care îi cunoaștem — Google, Meta, TikTok, Yandex, Hotjar — sunt deja clasificați pe categorii. Cei pe care nu-i cunoaște nimeni intră ca regulă explicită, cu gazda lor scrisă în clar în eticheta pe care o lipești.
Configurația nu e o cutie neagră: e un atribut pe care îl citești cu ochiul liber și îl poți edita.
Exemplu de configurație generată dintr-o scanare
https://magazinul-tau.md/
- google-analytics.comGoogle Analyticsanalytics
- connect.facebook.netMeta Pixelmarketing
- mc.yandex.ruYandex Metricaanalytics
- stat.contor-local.mdmarketing
<script src="https://ongdpr.md/api/banner/script"
data-site="magazinul-tau.md"
data-log="https://ongdpr.md/api/banner/log"
data-block="stat.contor-local.md:m"></script>Google Analytics era deja cunoscut, deci nu are nevoie de nicio regulă. Contorul local nu figurează în nicio bază publică de trackere, deci primește o regulă proprie — și, pentru că nu putem spune ce face, e clasificat la marketing, categoria care se deblochează ultima.
Demonstrație live, cu bannerul real
Ce vezi mai jos nu e o captură de ecran și nici o reconstrucție: e exact fișierul pe care îl servim clienților, rulat în pagină. Butoanele funcționează, comutatorul de limbă funcționează, panoul de setări e cel adevărat. Singura diferență e că aici nu blochează nimic și nu scrie nimic pe device-ul tău.
Magazinul-tau.md
- Acasă
- Produse
- Livrare
- Contact
Un site oarecare, cu meniu, conținut și un formular. Bannerul se așază peste el fără să acopere conținutul și fără să blocheze derularea.
Alegerea curentă: nicio alegere încă
Bannerul preia automat culorile paginii pe care e instalat; aici le poți schimba ca să vezi cum se adaptează.
Ce face, concret
Blochează înainte, nu ascunde după
Interceptează atribuirea adresei pe elementele <script>, <img>, <iframe> și <link>, plus fetch, XMLHttpRequest și sendBeacon. Fragmentele oficiale ale Google Analytics, Google Tag Manager, Meta Pixel, TikTok, Yandex Metrica și Hotjar își creează singure elementul de script — toate șase sunt oprite înainte să plece vreun octet.
Google Consent Mode v2, refuzat implicit
Cele șapte semnale v2 pleacă pe „denied" (în afară de security_storage) înainte de orice altceva, iar apelul e vizibil în sursa paginii, ca oricine să-l poată verifica — nu doar noi.
Accept, Refuz și Setări la fel de vizibile
Trei butoane, o singură clasă CSS, aceeași mărime și același contrast, refuzul primul în ordinea de citire. Escape înseamnă refuz, nu închidere tăcută. Nu există niciun stil „secundar" prin care refuzul să poată deveni mai discret.
Patru categorii, nimic bifat în avans
Strict necesare (fără comutator, pentru că nu e o alegere), analitice, marketing, funcționale. Fiecare scop e o decizie separată, iar panoul spune cine primește datele pentru fiecare.
Retragerea, la fel de simplă ca acordarea
Un buton permanent în colț redeschide setările pe orice pagină, iar din panou consimțământul se retrage complet dintr-un clic. Alegerea se reține șase luni, apoi se întreabă din nou.
Română și rusă, cu detectare automată
Limba se ia din <html lang>, apoi din browser, iar vizitatorul o poate schimba direct din banner. Ambele versiuni sunt traduceri reale, nu una copiată peste cealaltă.
Instalare în trei pași
Fără cont, fără cheie, fără plată. Durează cât un copy-paste.
1. Pune linia asta prima în <head>
Prima, nu undeva la sfârșit: tot ce se încarcă înaintea ei nu mai poate fi oprit de nimeni. Fără async și fără defer, din același motiv.
<script src="https://ongdpr.md/api/banner/script"></script>2. Adaugă ce vrei să schimbi, ca atribute
Limba fixă, linkul către politica ta, culoarea, adresa jurnalului și lista de gazde suplimentare găsite de scanare. Tot ce nu specifici are o valoare implicită rezonabilă.
<script src="https://ongdpr.md/api/banner/script" data-privacy="/confidentialitate" data-site="magazinul-tau.md" data-log="https://ongdpr.md/api/banner/log" data-block="stat.contor-local.md:m"></script>3. Marchează scripturile scrise direct în HTML
Un <script src> scris în pagină poate începe să se descarce înainte ca orice cod JavaScript să apuce să reacționeze — asta e o limită a browserului, nu a bannerului. Astfel de etichete se marchează o dată, iar bannerul le pornește singur la consimțământ.
<script type="text/plain" data-mp-consent="analytics" data-mp-src="https://exemplu-tracker.md/t.js"></script>
Fragmentele care se injectează singure — Google Analytics, GTM, Meta Pixel, TikTok, Yandex Metrica, Hotjar — nu au nevoie de pasul 3. Sunt oprite automat.
Jurnalul deciziilor, fără adrese IP
Responsabilitatea de a demonstra consimțământul e a operatorului, adică a ta. O bifă într-o bază de date nu demonstrează nimic: spune că cineva a apăsat ceva, cândva, sub un text pe care nu l-a păstrat nimeni.
Așa că, dacă activezi jurnalul, fiecare decizie se salvează cu textul exact care era pe ecran, versiunea lui, limba în care a fost afișat, momentul și ce anume a fost bifat — inclusiv refuzurile. Textul nu e trimis de browser, ci reconstruit pe server din propriul nostru catalog, tocmai ca nimeni să nu poată inventa la ce a consimțit.
Adresa IP e dată cu caracter personal — o spunem pe propriile noastre pagini. Nu o stocăm. Se salvează doar un hash cu sare, care servește la fel de bine scopului („e același vizitator?") și din care adresa nu se poate reconstitui. Același mecanism pe care îl folosim deja pentru limitarea abuzurilor.
Jurnalul e opțional. Fără atributul data-log, bannerul nu trimite absolut nimic nicăieri.
Ce NU poate bloca. Scris aici, nu ascuns
Niciun banner din piață nu poate opri tot, indiferent ce scrie pe pagina lui de vânzare. Ce urmează sunt limitele reale ale acestuia:
- Orice se încarcă înaintea liniei noastre din <head>. De aceea trebuie să fie prima.
- Un <script src> scris direct în HTML după linia noastră: browserul poate începe descărcarea înainte ca JavaScript-ul să apuce să reacționeze. Se rezolvă cu pasul 3 din instalare.
- Un element inserat prin innerHTML direct într-o pagină deja randată: cererea pleacă din interiorul atribuirii. Elementul e neutralizat imediat după, deci a doua încărcare nu mai are loc, dar prima poate trece. Niciunul dintre furnizorii mari nu folosește tiparul ăsta.
- Orice se întâmplă în interiorul unui iframe de la alt domeniu.
- Urmărirea făcută de serverul tău: tag management pe server, endpoint-uri de terți mascate ca subdomeniu propriu. Niciun cod care rulează în browser nu ajunge acolo.
- Terții pe care nu-i cunoaștem și pe care nu ni i-ai spus. Blocăm ce putem numi, ca să nu stricăm site-ul clientului blocând la întâmplare — de aceea lista din scanare contează.
Dacă vrei să verifici singur: instalează bannerul, apoi scanează-ți site-ul cu scannerul nostru. Dacă apare vreo cerere către terți înainte de consimțământ, o vezi în raport, cu gazdă și dovadă.
Comparație onestă
Cookiebot și OneTrust sunt produse mature: blochează înainte de consimțământ, au Consent Mode v2 și zeci de limbi. Nu pretindem contrariul. Diferența e în altă parte.
| Bannerul nostru | CMP pe abonament | Banner scris de mână | |
|---|---|---|---|
| Cost | Gratuit. Fără cont, fără card, fără limită de trafic. | Abonament lunar, de regulă pe număr de pagini sau de sesiuni. | Zile de programare, plus întreținerea. |
| Preconfigurat din scanarea site-ului tău | Da — lista de terți vine din propriul tău raport. | Nu. Scanarea lor descoperă cookie-uri, dar configurarea rămâne manuală. | Nu. |
| Blochează efectiv înainte de consimțământ | Da, verificabil cu scannerul nostru pe propriul tău site. | Da. | Aproape niciodată. Cel mai frecvent defect pe care îl găsim. |
| Yandex Metrica și Mail.ru blocate implicit | Da. | Depinde de listă și de configurare. | Nu. |
| Cod sursă public, citibil linie cu linie | Da — pachetul e în repozitoriu, fișierul servit e cel din repozitoriu. | Nu. Cod minificat, proprietar. | Da, dar e codul tău și defectele tot ale tale rămân. |
| Mărimea scriptului | ~34 KB, ~11 KB comprimat. | De regulă de câteva ori mai mare, uneori cu mult. | Mic, dar de obicei fără blocare reală. |
| Jurnal fără adresă IP brută | Da, doar hash cu sare. Opțional. | Variază; multe stochează adresa IP ca dovadă. | De obicei inexistent. |
| Suport în română, de la o firmă din Moldova | Da — MEGA PROMOTING S.R.L.. | Suport internațional, în engleză. | — |
Coloana „CMP pe abonament" descrie tiparul comun al produselor internaționale mari; nu e o afirmație despre un anumit furnizor, la o anumită dată, pe un anumit plan. Verifică oferta lor înainte să compari prețuri.
Întrebări
Chiar e gratuit? Unde e captura?
Bannerul e gratuit și nu cere cont. Ce câștigăm noi e că îl instalezi după ce ți-ai scanat site-ul la noi, și că rămâne un link discret către pagina asta — pe care îl poți scoate cu un atribut.
Butoanele trebuie să fie la fel de vizibile? E o obligație legală?
Nu există în Moldova o „lege a cookie-urilor" și nici o regulă scrisă despre mărimea butoanelor. Cerința legală e ca acordul să fie liber exprimat, iar un refuz pe care vizitatorul nu-l găsește nu e o alegere reală. De aceea tratăm paritatea butoanelor ca bună practică ce decurge din principiu, nu ca articol de lege pe care l-am putea cita cu număr.
Ce înseamnă „strict necesar"?
Nu e un termen definit de legea moldovenească, așa că nu îți putem da un prag legal. La noi categoria conține doar ce ține site-ul în funcțiune — sesiunea, coșul, protecția formularelor și memorarea alegerii tale — și nimic folosit pentru profilare, măsurare sau publicitate.
Îmi strică site-ul?
Blocăm doar gazdele pe care le putem numi, plus cele pe care ni le dai tu. Un CDN, un procesator de plăți sau un script propriu nu sunt atinse. Dacă un patch eșuează, restul continuă să funcționeze, iar dacă tot ce facem eșuează, pagina ta rămâne intactă.
Funcționează cu WordPress, PrestaShop, 1C, orice?
Da — e o singură etichetă <script> în <head>, fără dependențe și fără cerințe de platformă. Cookie-ul pe care îl scrie e citibil și din backend, dacă vrei să respecți alegerea și pe partea de server.
Ce se întâmplă dacă îmi schimbați textul bannerului?
Versiunea textului e salvată împreună cu fiecare decizie. Când textul se schimbă, versiunea urcă, iar deciziile vechi rămân legate de formularea exactă sub care au fost date. Nu rescriem retroactiv la ce a consimțit cineva.
Scanează întâi. Bannerul vine configurat.
Scanarea durează sub un minut, e gratuită și nu cere cont. La final primești lista terților care pornesc pe site-ul tău înainte de consimțământ — și eticheta gata scrisă care îi oprește.
Scanează site-ul