Legal
Privacy Policy
Summary
- No account, no analytics and no ads. We don’t run servers that receive your scans, and the App contains no advertising or tracking software.
- Your history stays on your phone. Scans, created codes and settings are stored only on your device and are not included in cloud backups.
- The camera is used only to read codes. Camera frames are processed on your device and are never stored or uploaded.
- Two optional online features — product lookups and website previews — send the minimum needed, and you can turn them off.
- You pay once, through Google Play. We never see your card or payment details.
- We don’t sell or share your data. Nothing is passed to advertisers or data brokers.
1. Who we are
Universal Scanner (the “App”) is developed and published by Tech Vora Limited (“we”, “us”). This policy explains what information the App handles, why, and the choices you have. It applies to the App on Android and to this website.
2. Data kept on your device
The App stores the following only in its private storage on your phone. We cannot see it, and it is not sent to us.
| Data | Why | Control |
|---|---|---|
| Scan history — the content of codes you scan, their format and time, and any label, tags, favourites or collections you add | To show your history and let you search, organise and export it | Turn off Auto-save scans or use Private Scan Mode; delete single records or everything in Settings |
| Codes you create, and your own contact card (“My Card”) if you fill it in | So you can find, edit and share them again | Delete in the App at any time |
| Photos you scan codes from — only if you turn on Store images (off by default) | To show the photo next to the scan | Off by default; deleted with the scan |
| Settings and preferences (theme, sounds, camera, etc.) | To remember how you like the App | Change in Settings |
Android’s automatic cloud backup is disabled for the App, so this data is not copied to Google Drive. It stays on the device until you delete it or uninstall the App.
Files you save or export (PNG images, SVG, CSV, Excel, PDF or JSON) are written to your phone’s Pictures or Downloads folder, or handed to an app you choose with the Share sheet. From then on they are under your control and that app’s policy.
3. What leaves your device
The App works offline. It connects to the internet only for the two optional features below, and only after you scan something they apply to. Both can be turned off together with the Look up online setting, and neither runs in Private Scan Mode.
Product lookups
When you scan a retail barcode (such as EAN, UPC or ISBN), the App sends only the barcode number to an open product database to fetch the product’s name, brand, category and photo:
- Open Food Facts, Open Beauty Facts, Open Pet Food Facts and Open Products Facts — run by the non-profit Open Food Facts association (privacy policy).
- Open Library for books — run by the Internet Archive (terms and privacy).
Like any web request, these services also receive your device’s IP address and a technical identifier naming the App. No account, name or contact detail is sent with these lookups.
Website previews
When you scan a code containing a web address, the App requests that page once to read its title and description, which are shown under the link. The page is read as text only — no scripts run and nothing is stored beyond the current session. The website you scanned receives a normal web request, including your IP address and a technical identifier naming the App, and is governed by its own privacy policy.
Actions you choose
When you tap an action — open a website, search the web, call, email, send a message, add a calendar event, open a map, join a Wi-Fi network or share — the App hands the information to the app or service you choose (for example your browser or mail app). Before any scanned website opens, the App shows the address and asks you to confirm. What happens next is governed by that app’s or website’s own policy.
4. Google ML Kit
Codes are decoded on your device using Google’s ML Kit barcode-scanning library and the open-source zxing-cpp library. Camera frames and images never leave your device for decoding.
As described in Google’s ML Kit terms, ML Kit may contact Google’s servers to receive updates and may send Google limited technical information about how the library performs — such as device model, Android version, app package name and version, and performance metrics. It does not include the codes you scan or your images. Google processes this information under the Google Privacy Policy.
The camera component the App uses also includes Google’s face-detection module. The App never turns face detection on, and no facial data is collected or processed.
5. Payment
The App is a paid app, bought once through Google Play. It has no ads, subscriptions or in-app purchases. Payment is processed entirely by Google Play under the Google Payments Privacy Notice. We never receive your card number or payment details.
Google may share limited order information with us, such as the order number, date, country and amount, so we can provide support, handle refunds and meet our tax and accounting obligations. The App itself doesn’t read or store anything about your payment.
6. Permissions
| Permission | Used for |
|---|---|
| Camera | Reading codes in real time. Asked for when you first scan; scanning from photos works without it. |
| Internet and network state | The optional product lookups and website previews, and showing when you are offline. |
| Wi-Fi state (view and change) | Offering to connect to a Wi-Fi network from a scanned Wi-Fi code, only when you tap Connect. |
| Storage (older Android versions) | Write access is asked for only on Android 9 and earlier, when you save an exported file or code image. A read-storage permission is also declared by the camera component; the App never asks for it, and Android 10 and later need no storage permission. |
| Vibration | A short vibration when a code is found, if enabled. |
Photos are chosen through Android’s system photo picker, so the App only receives the images you select. The App does not request access to your location, contacts, calendar, microphone, phone, SMS or advertising ID. When you save a contact or event, the App opens your contacts or calendar app for you to confirm; it does not read them. The Clipboard option in Create reads the clipboard only when you choose it.
8. Security
Data on your device is kept in the App’s private storage, which other apps cannot read. Product lookups and Google Play use encrypted HTTPS connections. Website previews use the address in the code you scanned; if that address is not HTTPS, the preview request is not encrypted.
9. Retention and deletion
Your data stays on your device for as long as you keep it. You can delete it at any time:
- One or several items: Settings → Privacy → Delete Record or Delete Multiple Records.
- Everything: Clear History (scans) and Clear Library (created codes) in the same screen.
- All App data: clear the App’s storage in Android settings, or uninstall the App.
Because we hold no account and no copy of your scans, there is nothing for us to delete on our side. Google Play keeps order records as required for payments and tax. Open Food Facts, Open Library and websites you preview may keep standard server logs under their own policies.
10. Your choices and rights
- Look up online — turn off product lookups and website previews.
- Private Scan Mode — nothing is saved and nothing is looked up online.
- Auto-save scans and Store images — choose what is kept.
- Camera permission — revoke at any time in Android settings.
Depending on where you live (for example under the GDPR in the EU/UK, or US state laws such as the CCPA), you may have rights to access, correct, delete or object to the processing of your personal data. Since your data is held only on your device, you can exercise most of these rights directly in the App. For anything else, contact us using the details below and we will respond within 30 days.
11. Children
The App is a general-audience utility and is not directed at children under 13. We do not knowingly collect personal information from children, and the App contains no advertising. If you believe a child has provided personal information to us, contact us and we will help remove it.
12. Google Play Data safety
For transparency, this is how the App’s data practices map to Google Play’s Data safety categories:
| Collected by our own servers | None. We operate no servers that receive your data. |
|---|---|
| Payment | Handled by Google Play when you buy the App; the App collects no payment or purchase data. |
| Processed only on device | Camera frames, images, scan history, created codes, contact card, settings. |
| Sent off device (optional) | Barcode numbers to Open Food Facts / Open Library; a request to websites you scan — both at your request, to provide the feature, and can be turned off. |
| Shared with third parties | No. The App has no ads, analytics or tracking software, and scans and history are never shared. |
| Encrypted in transit | Yes for product lookups (HTTPS); website previews use the scanned address. |
| Deletion | Delete in the App, clear App storage, or uninstall. No account exists. |
13. Open-source software
The App is built with the following open-source software. We are grateful to their authors. Each is used under its license, linked below; license texts are available from each project.
| Library | Version | License | Used for |
|---|---|---|---|
| React Native (with Hermes) | 0.87.1 | MIT | App framework |
| React | 19.2.3 | MIT | User interface |
| zxing-cpp | 3.1.1 | Apache 2.0 | Decoding barcodes from photos |
| React Native ML Kit — Barcode Scanning | 2.0.0 | MIT | Bridge to Google ML Kit |
| react-native-camera-kit | 18.0.1 | MIT | Camera preview and live scanning |
| AndroidX CameraX and AndroidX libraries | 1.4.2 | Apache 2.0 | Camera access on Android |
| bwip-js | 4.11.4 | MIT | Drawing barcodes |
| node-qrcode | 1.5.4 | MIT | Drawing QR codes |
| op-sqlite (includes SQLite, public domain) | 18.2.5 | MIT | On-device database |
| Async Storage | 2.2.0 | MIT | Saving preferences |
| Clipboard | 1.16.3 | MIT | Copy and paste |
| DateTimePicker | 9.2.1 | MIT | Choosing event dates |
| NetInfo | 12.0.1 | MIT | Detecting when you’re offline |
| react-native-image-picker | 8.2.1 | MIT | Choosing photos to scan |
| react-native-permissions | 5.6.2 | MIT | Asking for camera access |
| react-native-safe-area-context | 5.10.1 | MIT | Layout around screen notches |
| react-native-svg | 15.15.5 | MIT | Vector graphics |
| Lucide icons | 1.52.0 | ISC | Icons |
| Poppins typeface | — | SIL OFL 1.1 | App font |
The App also uses Google’s ML Kit barcode-scanning library (version 17.3.0), which is not open source and is provided under the ML Kit Terms of Service. Product information comes from Open Food Facts (ODbL) and Open Library.
14. Changes to this policy
If we change how the App handles data, we will update this page and the effective date above, and, where the change is significant, tell you in the App or on its Google Play listing before it takes effect.
15. Contact
Questions or requests about this policy or your data:
Tech Vora LimitedEmail: android-apps@techvoralimited.com