Privacy policy
This page explains in plain language what data we collect when you use linqr, why we process it, who we share it with and what your rights are. It covers both language versions of the service, the app and the onsonara.com/q/… short links.
In short
- We only collect what we need: your email, an optional name, your QR codes and their links.
- Scan statistics are anonymous: we don't store IP addresses or full browser details of people who scan your codes.
- We don't sell data. We measure how our ads perform with the Meta pixel and cookies, and you can object at any time.
- Payments are handled by Polar, so we never see your card number.
- You can download, correct or delete your data at any time.
Contents
1.Who is responsible for your data
The controller of your personal data is spółka z ograniczoną odpowiedzialnością (a Polish limited liability company), ul. Warszawska 40/2A, 40-008 Katowice, Poland, entered in the Register of Entrepreneurs of the National Court Register kept by Sąd Rejonowy Katowice-Wschód w Katowicach, VIII Wydział Gospodarczy KRS (District Court Katowice-Wschód, 8th Commercial Division), KRS 00015, VAT ID PL95408, REGON 540426, share capital PLN 5,000.00 (“we”, “us”).
For anything related to personal data, write to hello@onsonara.com or call +48 570 536 333. We haven't appointed a data protection officer, so we handle these requests directly.
2.What data we collect
Your account
- your email address (to sign you in and send messages about your account);
- your name, if you give it;
- your password: we only store a salted one-way hash of it; we never know the password itself;
- if you sign in with Google: your Google account ID and the email address Google has verified. We get no access to your mailbox, contacts or files;
- your language, when you created the account and when you last signed in.
Your QR codes
- the short code, the code's name, its destination link and the history of link changes;
- the design (colours, shapes, frame) and any logo you upload;
- a draft code created before you sign up. If it's never saved to an account, we delete it automatically.
Scan statistics
When someone scans your code, we record the scan so we can show you statistics. We don't store the IP address or the full browser identifier (User-Agent) of the person scanning. We keep only:
- the date and time of the scan;
- an approximate location (country, region and city), which Cloudflare derives from the IP address and passes to us in request headers; the address itself is not stored;
- the device type (phone, tablet, computer) and the operating system and browser family, such as “iOS” or “Chrome”;
- the browser's preferred language and the referring site's domain, if the browser sends it;
- a pseudonymous daily identifier used to count unique scans: a cryptographic hash made with a key that changes every day. It can't tell us who scanned, and scans from different days can't be linked.
This data doesn't let us identify people who scan codes. Only the code's owner can see its statistics.
Payments
If you buy Pro, the payment is handled by Polar Software Inc. as the seller (Merchant of Record). Polar processes your card and billing details. From Polar we receive only what we need to run your subscription: its ID, plan, status and billing period dates. We have no access to your card number.
Technical data
Our server keeps short-lived technical logs (such as the requested page, response code and time) for security and debugging. Logs don't contain passwords, tokens or email addresses. To prevent abuse, such as limiting sign-in attempts, IP addresses are processed on the fly in server memory and never stored in the database (the one exception is ad measurement, described below).
Ad measurement
The Meta pixel runs on linqr pages for every visitor, and our server reports signing up, starting a payment and buying Pro to Meta (through the Conversions API). We pass on: identifiers from Meta cookies (_fbp, _fbc), your IP address, browser identifier (User-Agent), the page address, a SHA-256 hash of your email address and account ID, and the payment amount and currency. So that a purchase confirmed later by the payment system can be matched to an ad, we keep this data with your account until you delete the account or we act on your objection. We do this in our legitimate interest: measuring which ads bring in users. To object, email hello@onsonara.com; you can also limit ads in your Meta ad settings or block cookies in your browser.
Activity in the creator
We record the link you enter in the code creator and a click on “Download QR code”, even if you don't have an account. With the link we store a random browser identifier from the linqr_vid cookie, the site (domain) and language, where you came from (the utm_* and fbclid parameters in the address), the browser identifier (User-Agent) and a hash of your IP address (the IP address itself never reaches the database). We also report the entered link to Meta as a “QrCodeCreated” event with the data described above, without your email. If you later create an account in the same browser, we link these entries to it. We do this in our legitimate interest: improving the product and measuring how our ads perform. We delete the entries after 180 days, and straight away when you delete your account.
Sign-in history
We record account events: signing up, signing in (including failed attempts), signing out, a password reset request, setting a new password, changing your password, confirming your email address and deleting your account. With each event we store the time, how you signed in, the browser identifier (User-Agent) and a hash of your IP address (the IP address itself never reaches the database), and the email address only when it belongs to a linqr account. This keeps accounts safe and helps us spot abuse, in our legitimate interest. We delete the entries after 365 days, and straight away when you delete your account (only a note that the account was deleted remains, with no personal data).
3.Why we process data and on what legal basis
| Purpose | Legal basis (GDPR) |
|---|---|
| Your account, signing in (including with Google), creating and storing codes, redirects, statistics for the code owner | Art. 6(1)(b): performance of a contract, i.e. our Terms |
| Pro: subscription and payments through Polar | Art. 6(1)(b): performance of a contract |
| Account emails: address confirmation, password reset, subscription notices and important changes | Art. 6(1)(b): performance of a contract |
| Recording scans as described above (concerns people who scan) | Art. 6(1)(f): legitimate interest in showing code owners how their codes are used, with minimal data |
| Security: protection against phishing, spam and attacks, blocking codes that break our rules, technical logs | Art. 6(1)(f): legitimate interest in keeping the service and its users safe |
| Establishing, exercising or defending legal claims | Art. 6(1)(f): legitimate interest |
| Legal obligations, e.g. responding to requests from competent authorities | Art. 6(1)(c): legal obligation |
| Measuring how our ads on Facebook and Instagram perform: the Meta pixel and Conversions API | Art. 6(1)(f): legitimate interest (measuring ad performance), with the right to object |
| Activity in the creator, also without an account (entered link, “Download QR code” click, where you came from) | Art. 6(1)(f): legitimate interest (improving the product and measuring ad performance), with the right to object |
| Sign-in history (sign-ins, failed attempts, password changes) | Art. 6(1)(f): legitimate interest in keeping accounts safe and spotting abuse |
Giving us your email is voluntary, but you can't create an account without it. We'll only send marketing emails if you explicitly agree (Art. 6(1)(a)), and you can withdraw that consent at any time. We don't make decisions about you based solely on automated processing, including profiling.
4.Who we share data with
We work with trusted providers. Some process data on our behalf under a data processing agreement (Art. 28 GDPR); others act as independent controllers. We don't sell data to anyone.
| Provider | Role | Data | Where |
|---|---|---|---|
| OVHcloud (OVH SAS) | server and database hosting | all service data | European Union |
| Cloudflare, Inc. | network and attack protection, detecting the country and city of a scan | network traffic, including the IP address at request time | global (transfers outside the EEA under Standard Contractual Clauses and the EU-U.S. Data Privacy Framework) |
| Resend | sending emails (confirmations, password resets, plan limit notices) | email address, message content | EU region |
| Polar Software Inc. | selling Pro as Merchant of Record (independent controller) | payment and billing details, email | USA (transfers under Standard Contractual Clauses) |
| Google Ireland Limited | optional Google sign-in (independent controller) | account ID and email | EU and USA (EU-U.S. Data Privacy Framework) |
| Meta Platforms Ireland Limited | measuring ad performance through the Meta pixel and Conversions API (joint controller for collecting and passing on the data, independent controller afterwards) | identifiers from Meta cookies, IP address, User-Agent, page address, hashed email and account ID, events (sign-up, payment, purchase) with their value | EU and USA (EU-U.S. Data Privacy Framework) |
We may also disclose data to public authorities where the law requires it, for example at the request of a court or prosecutor.
6.How long we keep data
- Account and codes: until you delete your account. On deletion we immediately anonymise your personal data and your codes stop working.
- Scan statistics: up to 25 months after the scan, then deleted.
- Draft codes never saved to an account: deleted automatically.
- Backups and technical logs: up to 30 days, then overwritten.
- Ad measurement data: until you delete your account or we act on your objection. Data passed to Meta is kept by Meta under its own privacy policy.
- Activity in the creator: 180 days after the entry, and straight away when you delete your account.
- Sign-in history: 365 days after the event, and straight away when you delete your account.
- Messages you send us: as long as needed to deal with your request, then until any related claims become time-barred.
Payment records and invoices are kept by Polar for as long as tax and accounting laws require.
7.Your rights
You have the right to:
- access your data and get a copy of it (Art. 15 GDPR);
- have your data corrected (Art. 16), and you can change your name yourself in Settings;
- have your data erased (Art. 17), and you can delete your account in Settings at any time;
- restrict processing (Art. 18);
- data portability (Art. 20): we'll send your data in a common format such as JSON or CSV;
- object to processing based on legitimate interests (Art. 21);
- withdraw consent at any time where we rely on it, without affecting the lawfulness of earlier processing.
To use any of these rights, write to hello@onsonara.com from the email address on your account. We'll reply without undue delay and within one month at the latest.
You can also complain to a supervisory authority. In Poland that's the President of the Personal Data Protection Office (UODO, ul. Stawki 2, 00-193 Warsaw, uodo.gov.pl); you can also contact the authority in the EU country where you live or work.
Scanning someone else's code? We don't keep data that could identify you, so we usually can't point to your scans (Art. 11 GDPR). If a code leads to a suspicious site, report it to hello@onsonara.com.
8.How we protect data
- encrypted connections (HTTPS) on every page and every redirect;
- passwords stored as salted PBKDF2 hashes; sign-in is locked after 10 failed attempts;
- signing you out on all devices after a password change;
- protection against CSRF attacks and rate limiting;
- servers in the European Union, with access only for authorised people and only as far as needed;
- regular backups and security updates.
No system is completely immune to attacks. If a breach could put your rights at risk, we'll inform you and the supervisory authority as the GDPR requires.
9.Children
linqr isn't meant for anyone under 16, and we don't knowingly collect their data. If you believe a child has created an account, write to us and we'll delete it.
10.Changes to this policy
We may update this policy, for example when we change a provider or add a feature. The date of the last change is at the top of this page. We'll tell you about significant changes in advance by email or in the app.
11.Contact
sp. z o.o., ul. Warszawska 40/2A, 40-008 Katowice, Poland, email: hello@onsonara.com, phone +48 570 536 333.
Questions?
Write to us at hello@onsonara.com. We're happy to explain anything that isn't clear.
See also: Terms of service