Colshare: privacy notice

Version 0.3 · in force from 21 October 2026

In short

This summary helps you read the notice; the full text below is what applies.

1. Who is responsible

1.1 The controller for the processing described here is DTCONCIERGE S.R.L., Aleea Călărașilor nr. 5, bl. G, ap. 54, Sibiu, Romania, Trade Register no. J2026003869000, sole registration code 53369247 ("we"), which makes the app Colshare (Android application app.colshare) and runs the pages that open its links on colshare.app.

1.2 Contact for data protection: service@colshare.app. We have not appointed a data protection officer, because none of the cases in Article 37(1) of the General Data Protection Regulation (GDPR) applies to us; this address is our contact point for data protection.

1.3 This notice covers the app, its send and ask links, the pages that open them (colshare.app/p/ and colshare.app/a/), the contact-card page (colshare.app/o/), the safe-copy page (colshare.app/copie/), the check page (colshare.app/v/), the pages of the ask kits (under colshare.app/acte/) and the pages of the forms for withdrawing, cancelling and reporting (colshare.app/acte/retragere/, colshare.app/acte/reziliere/, colshare.app/acte/semnalare/). It also covers people who do not use the app but open a link, answer an ask or send a report. The program topograpp has its own privacy policy. This notice is published at colshare.app/acte/confidentialitate/; the terms of use and sale at colshare.app/acte/termeni/.

2. What stays on your phone and never reaches us

2.1 Everything you keep in the app stays on your phone: your papers (pictures and PDFs), their names and kinds, your folders, the fields read from an ID card or passport (including a personal number such as a Romanian CNP), your safe copies, blacked-out copies and receipts, the phone's signing key (section 2.4), the list of links and asks you made with their keys, and the counters of the free plan. All of it is encrypted with AES-256-GCM, with a key that only your lock opens. We have no copy and no way to open it. Kept on the phone outside the lock, in the app's private storage, are only: your language, the version of the terms you accepted, and what the background task of section 4.5 needs to fetch from your mailbox (its identifier and secret).

2.2 The lock. If you choose the fingerprint, Android checks it and tells the app only whether it matched; the app never receives your fingerprint. If you choose a PIN, it never leaves the phone.

2.3 Reading an ID card or passport happens on the phone, without internet, with a text recognition engine (Tesseract) carried inside the app. Nothing is sent anywhere.

2.4 Safe copies are made on the phone. On the web page colshare.app/copie/ the copy is made in your browser: the picture is not uploaded. A safe copy made in the app carries a QR code with a short statement (the kind of paper, who it is for, what for, the date), the phone's public key and a signature made on the phone with its private key; the copy's PDF file carries the same statement and a signature over its pictures. Whoever holds the copy can read the statement. The public key is the same on every safe copy and receipt made on that phone, and it is the key the app uses when you add people in it, so two copies signed on one phone can be linked to each other. The private key stays encrypted on the phone (and in a backup file you make); we never receive the key, the statement or the copy.

2.5 Receipts. After each send and each safe copy the app makes a receipt on the phone: for each file a small picture, its name, its size and its SHA-256 fingerprint, with when, to whom, what for and how, signed like a safe copy. The receipt is kept encrypted on the phone with your papers. The app sends it nowhere; it leaves the phone only if you send it yourself or put it in a backup file. It records what you gave, nothing about what happened afterwards.

2.6 Blacking out happens on the phone, without internet. The app reads the paper's text with the text recognition engine carried inside it (Tesseract) or, for a PDF, with PDF.js, also carried inside the app; it proposes boxes, and the copy is drawn on the phone. Nothing is sent anywhere.

2.7 The check page colshare.app/v/. A safe copy's or a receipt's code opens this page with the statement, the key and the signature in the part after #, which browsers never send to a server; the page checks the signature in your browser and fetches or sends nothing after it has loaded. A PDF file you choose there is read in your browser, not uploaded. Our server, and its hosting logs (section 5.2), only see that the page was loaded. The app checks the same codes on the phone.

2.8 The app asks Android for no permission you must grant. It holds internet access, Google Play Billing for the subscription, and the permissions Android grants without asking for the fingerprint and for the background task of section 4.5 (network state, wake lock, starting after a restart). It does not use the camera itself: scanning goes through Google's document and code scanners (section 6.2). The app excludes its data from Android's backups and from transfers to a new phone, so no copy goes to a cloud backup unless you send a backup file there yourself (section 2.9).

2.9 The backup file. In Settings › Backup the app can put into one file your papers (receipts and copies included), folders and readings, your open links and asks with their keys, the phone's signing key, "About me" and the answers kept from forms (section 2.10), the people you added with your mailbox (section 2.11), the name you give on links, and the free plan's counters; never your PIN or fingerprint. The file is encrypted on the phone with AES-256-GCM under a key derived from a passphrase you choose (at least 10 characters; PBKDF2-SHA-256, 600,000 iterations). The passphrase never leaves the phone and is not stored. The app hands the file to the phone's share menu, and you choose where it goes (for example Google Drive, e-mail, Files or another phone); the provider you choose processes it under its own terms, but cannot read it without the passphrase. The file never reaches us, and we keep nothing that could open it. Restoring happens on the phone: the papers are written under the new phone's own lock.

2.10 About me and filling in forms. What you type in "About me" (address, phone, e-mail, place of birth, occupation, employer) is kept encrypted on the phone with your papers, and in a backup file you make; it is used only when you fill in a form. While "Keep what I typed for the next forms" is ticked (it starts ticked), the app also keeps what you type into the fields it does not fill itself, each under the field's label, encrypted the same way and carried in a backup file; on a later form with the same label it offers the answer again ("From an earlier form"), and you can change it. What you type into a field asking for something "About me" holds (for example your phone) goes into "About me" when it is empty there. Tick boxes, choices, fields without a label of their own and fields asked of two people are not kept. Untick the box and nothing typed on that form is kept; a kept answer is replaced when you keep another for the same label, and Settings › Delete everything removes them all. Filling in happens on the phone, without internet: the app reads the form with PDF.js (a scan or a photo of a form also with its text recognition engine, Tesseract) and writes it with pdf-lib, all carried inside the app. Nothing is sent anywhere.

2.11 People you added are kept on the phone: their names, their public keys and what your app needs to send to them (their mailbox's identifier and a drop token), and your own key pair, all encrypted like your papers and carried in a backup file. Your own mailbox's identifier and secret are also kept outside the lock (section 2.1), so that the background task can fetch while the app is locked; they open no paper. Your contact card (the QR code or the contact link) carries your public key, your mailbox's identifier, a drop token made for that card and the name you chose, in the part after #, which browsers never send to a server; whoever has your card can add you. The safety code is computed on each phone from the two public keys.

2.12 Because this data never reaches us, we are not its controller and cannot see, correct, export or delete it for you. You can delete it at any time in the app (a paper, a folder, or Settings › Delete everything); uninstalling the app deletes it too.

3. When you send papers by link

3.1 What leaves the phone. The papers you choose are packed and encrypted on the phone (AES-256-GCM) with a new 256-bit key and uploaded to our server in pieces. The key, your name as the recipient will see it and your note travel only in the link, in the part after #, which browsers never send to a server. The names of the files, your name and your note are also inside the encrypted package.

3.2 What our server sees and keeps for each link: a random identifier; a hash of a secret that lets your phone delete the link; the number of pieces and the size of the last piece (so the size of the package); when the link was made; when it was first downloaded; and, after it was opened or deleted, a marker saying which and when (so that a second visit says "opened already" instead of "not found"). It never sees your name, your note, the recipient, the file names or the papers.

3.3 How long. The encrypted package is deleted once it has been opened (at once after the recipient's browser decrypted it, and at the latest 15 minutes after its last piece was first downloaded), when you delete the link in the app, and in any case 7 days after it was made. The "opened" or "deleted" marker is kept 7 days.

3.4 The link itself travels through the app you use to share it (a messenger, e-mail), whose provider processes it under its own terms. Whoever has the link can open the package once. The recipient's page removes the key from the browser's address bar as soon as it has read it.

4. When you ask someone for papers, or send to people you added

4.1 The ask. Your phone makes a key pair. The ask link carries the public key, what you ask for and your name, in the part after #. Our server keeps only the ask's random identifier, a hash of a secret that only your phone holds, and when it was made: for 30 days, or until you close the ask.

4.2 What the other person sends. On the page colshare.app/a/ their browser encrypts each file to your public key (ECDH on P-256 with AES-256-GCM), so that only your phone can open it. Our server keeps, for each file: a random identifier, the number of pieces, its size and the time it arrived, plus the encrypted pieces. Your app fetches them, files them on your phone and tells the server to delete them. Anything not fetched is deleted 7 days after it arrived. Closing the ask deletes it and everything waiting in it.

4.3 The name the other person may type on the page is encrypted with the files: we do not see it.

4.4 People's mailboxes. When you first use People, your phone opens a mailbox on our server. The server keeps the mailbox's random identifier, a hash of a secret that only your phone holds, a hash of the drop token of each person you added, and, for each item waiting, a random identifier, its size, the time it arrived and the hash of the token it came through, with the encrypted item. Each item is encrypted on the sender's phone to your public key: the server never sees names, papers, notes or whom a token belongs to. Your app fetches what waits, keeps it and tells the server to delete it. An item not fetched is deleted 7 days after it arrived; the mailbox is deleted 180 days after your app last fetched from it; removing or blocking a person deletes their token and whatever waits from them.

4.5 While the app is open, it fetches what waits every 30 seconds. On Android, a background task of the app also fetches about every 15 minutes when there is a network, and keeps what it fetched, still encrypted, in the app's private storage until you open the lock. The app uses no push service and shows no notification.

5. Data that every connection reveals

5.1 IP addresses. Each request to our server reveals the IP address of the phone or browser that makes it. Our server does not store it. To limit abuse, it counts requests per address for one hour, under a keyed hash (HMAC) of the address that cannot be turned back into the address without our secret key; the counters are deleted after one hour.

5.2 Hosting logs. Our hosting provider (section 9) records technical data of each request (IP address, time, address requested without the part after #, browser identification) in its logs and deletes them after the period set by our hosting plan.

5.3 We treat these identifiers, sizes and times as personal data, because together with an IP address they could relate to a person. We do not combine them with anything else, do not build profiles and cannot tell who made a link or an ask.

5.4 The encrypted papers. We cannot decrypt what passes through our server and have no means to identify the people in it. We nevertheless protect it, keep it no longer than stated here and delete it as described, as if it were personal data.

5.5 The pages colshare.app/p/, /a/, /o/, /copie/ and /v/, the ask kits' pages and the forms' pages (section 7.4) load no analytics script and set no cookies; none keeps anything in your browser, and all but the ask kits' pages send no referrer. The link pages /p/ and /a/, the contact-card page /o/, the check page /v/ and the forms' pages are not indexed by search engines; the ask kits' pages are, because they carry no personal data and are meant to be found.

6. Google

6.1 Google Play. You download the app and buy the subscription through Google Play. Google processes your Google account, payment and purchase data as an independent controller, under its own privacy policy (https://policies.google.com/privacy). The app checks your subscription with Google Play on the phone; we receive no data about you for that. When it shows the plans, the app also asks Google Play, on the phone, for the country of your Google Play account, so that it offers only the plans sold there and applies section 6.7 of the terms (the rule for a yearly plan in Germany); the country stays on the phone and none of it reaches us. In the Google Play Console we see, for each order: its number, date, product, price, status and the buyer's country.

6.2 The document scanner is a module of Google Play services, which Google downloads to the phone the first time you scan; so is the code scanner the app uses for "Scan a code". The scanning itself happens on the phone. Google Play services send Google technical data about the scanners' use and performance (such as the device model and Android version, the app's name and version, performance and error data, and device and per-installation identifiers), for diagnostics and usage statistics, not your pictures, under Google's terms and privacy policy (https://developers.google.com/ml-kit/android-data-disclosure).

6.3 Statistics and crash reports. If you allowed your phone to share usage and diagnostics data with Google, Google gives us aggregated statistics (installs, uninstalls, countries, Android versions) and reports of crashes and freezes with the device model and Android version. The app itself sends us neither.

7. When you write to us

7.1 When you write to us (support, a complaint, a withdrawal, a cancellation, a data-protection request, a report of illegal content), by e-mail or through one of the forms (section 7.4), we process your e-mail address, your name if you give it, the message and its attachments, and the order number you give us.

7.2 Please do not send us papers or ID numbers: we do not need them. If a message contains them by mistake, we delete the attachment or the message and tell you.

7.3 A report of illegal content needs only the link's identifier (the characters after #, up to the first .). Do not send the whole link: the rest is the key. The report page sends only the identifier, even if you paste the whole link. For a report about the sexual abuse or exploitation of children, your name and e-mail address are optional.

7.4 The forms. The pages for withdrawing (colshare.app/acte/retragere/), cancelling (colshare.app/acte/reziliere/) and reporting (colshare.app/acte/semnalare/) send what you type there (your name, your e-mail address, the Google Play order number, and, for a cancellation at once or a report, your reason and the link's identifier) to our server. Our server does not store it: it sends it on at once, through Resend, Inc. (section 9.3), as an e-mail to our inbox service@colshare.app, with your address as the address to reply to. It also sends your address, at once, one confirmation of receipt in our own words, with the date and time we received your message, the kind of message, the order number and, for a report, the link's identifier; it never repeats the reason you typed. To limit abuse, our server keeps for one hour counters of the messages sent, under keyed hashes of the sender's IP address and of its network (section 5.1).

8. Purposes and legal bases

WhatWhyLegal basis (GDPR)
People's mailboxes, tokens and items (sections 4.4, 4.5)to deliver what you and the people you added send each otherArt. 6(1)(b), the contract with you; for the other person, Art. 6(1)(f), our legitimate interest in delivering what they sent
Packages, asks and their metadata (sections 3, 4)to deliver what you send or ask forArt. 6(1)(b), the contract with you; for a recipient or a person who answers an ask, Art. 6(1)(f), our legitimate interest in delivering what the sender or asker requested
IP hashes for request limits, hosting logs (sections 5, 7.4)to keep the service running and safeArt. 6(1)(f), our legitimate interest in a working and secure service
Orders from Google Play (section 6.1)to honour the subscription, withdrawals, refunds; accountingArt. 6(1)(b); Art. 6(1)(c), accounting and tax law
Aggregated statistics, crash reports (section 6.3)to fix faults and improve the appArt. 6(1)(f)
Messages (section 7)to answer you, handle withdrawals, cancellations and complaintsArt. 6(1)(b); Art. 6(1)(c) for withdrawals and data-protection requests
Reports of illegal content (sections 7.3, 7.4; terms, section 10)to handle them as the Digital Services Act requiresArt. 6(1)(c), Regulation (EU) 2022/2065
Confirmations of receipt (section 7.4)to confirm a withdrawal, a cancellation or a report at once, as the law requiresArt. 6(1)(c): consumer law (Directive 2011/83/EU art. 11a) and Regulation (EU) 2022/2065 art. 16(4)
Keeping records after the contractto establish or defend legal claimsArt. 6(1)(f)

We make no decisions about you based solely on automated processing and build no profiles.

National identification numbers. We do not process personal numbers such as the Romanian CNP in readable form. The app reads them only on your phone; the safe copy blacks them out by default, and "Black out" proposes a box over each one it recognises, already on; a package that may contain one passes through our server only encrypted, with a key we never have.

9. Who receives data

9.1 Vercel Inc. hosts our website and runs the server code of the links, in its Frankfurt (EU) region, and records the hosting logs of section 5.2.

9.2 Upstash, Inc. stores the encrypted packages, the asks, People's mailboxes, tokens and items, their metadata and the request counters, in its Frankfurt (EU) region. We have switched off the store's backups: deleted data is not kept in a backup by us.

9.3 Resend, Inc. delivers the messages sent from the forms (section 7.4) to our inbox, and the confirmations of receipt to you. Google Ireland Limited (Google Workspace) receives and stores the e-mails we exchange with you. Google is an independent controller for Google Play and Google Play services (section 6).

9.4 Our accountant and advisers (lawyers, auditors), when they need data to advise us, bound to confidentiality. Authorities, when the law obliges us; we check each request and oppose those that are unlawful or excessive.

9.5 We do not sell personal data, do not give it to advertising networks and do not use it for advertising.

10. Transfers outside the European Economic Area

Vercel Inc., Upstash, Inc. and Resend, Inc. are established in the United States; the data Vercel and Upstash store for us stays in Frankfurt, but access from the United States for support and operations is possible, Vercel's network may serve a request from a point of presence outside the EEA, and Resend stores the forms' messages and the confirmations in the United States for the short period its service keeps them. These transfers rely on the EU–US Data Privacy Framework (Commission Implementing Decision (EU) 2023/1795) where the provider is certified, and on the Standard Contractual Clauses (Implementing Decision (EU) 2021/914) in each provider's data processing agreement. Google may transfer data to Google LLC in the United States on the same grounds. A copy of the safeguards is available from service@colshare.app.

11. How long we keep data

DataKept
An encrypted send packageuntil it is opened (deleted at once, at the latest 15 minutes after its last piece was first downloaded), deleted by the sender, or 7 days
A link's "opened" or "deleted" marker7 days
An ask (identifier, hash, date)until it is closed, at most 30 days
A file sent into an askuntil the asker's app takes it, at most 7 days
An item in a People mailboxuntil the recipient's app takes it, at most 7 days
A People mailbox (identifier, hashes of its secret and tokens)180 days after its app last fetched from it
Request counters (IP hashes), the forms' included1 hour
Hosting logsthe period set by our hosting plan
Messages and their answers24 months after the last message
Withdrawal, cancellation and refund records3 years after the end of the contract (limitation period)
Reports of illegal content and our decisions1 year after the decision
Accounting recordsas Romanian accounting law requires (5 years; annual accounts 10 years)

12. Security and breaches

12.1 Papers are encrypted on the phone before they leave it, with keys our server never receives; all traffic is encrypted in transit; access to our systems is limited to the smallest possible group; the server keeps no IP addresses and no names.

12.2 If a personal data breach is likely to result in a risk to people, we notify the Romanian supervisory authority within 24 hours of becoming aware of it where feasible, and in any case within 72 hours, and, where the risk is high, the people concerned, as far as we can reach them. Report a vulnerability to service@colshare.app.

13. Your rights

13.1 You have the right of access, rectification, erasure, restriction, portability and objection (Articles 15–21 GDPR), and to withdraw consent where we rely on it, without affecting what was done before.

13.2 Write to service@colshare.app. We answer within one month; for complex or many requests, the period can be extended by two further months, and we tell you why within the first month. Requests are free unless they are manifestly unfounded or excessive.

13.3 Without an account we cannot find you by your name. For a link or an ask, give us its identifier (the characters after #, up to the first .), and we can tell you what our server holds for it or delete it. You can delete a link yourself in the app ("Delete link now") and close an ask; your phone's data is deleted in the app.

13.4 You can complain to a supervisory authority, in particular in the EU country where you live or work. Ours is the Romanian National Supervisory Authority for Personal Data Processing (ANSPDCP), B-dul General Gheorghe Magheru 28-30, Sector 1, 010336 Bucharest, Romania, anspdcp@dataprotection.ro, www.dataprotection.ro. In Germany you may turn to the authority of your federal state, in France to the CNIL (www.cnil.fr).

14. Children

The app is meant for adults. We do not knowingly process data of children; on our server we cannot tell who uses a link.

15. Changes to this notice

We update this notice when the app, our providers or the law change. We show the new version in the app before it applies and keep earlier versions, which we send on request to service@colshare.app.

16. Contact

DTCONCIERGE S.R.L., Aleea Călărașilor nr. 5, bl. G, ap. 54, Sibiu, Romania. Data protection: service@colshare.app. Everything else: service@colshare.app.