Legal
Privacy Policy – Android
Contaxo is the new name of Import & Export Contacts Excel (Contacts Excel, formerly Contacts Hero). This document applies to Contaxo. See also: iPhone, iPad and Mac privacy policy · Privacy overview
Import & Export Contacts Excel (Contacts Excel) — Android app
Effective date: November 7, 2026
Last updated: November 7, 2026
ONNEX YAZILIM ANONİM ŞİRKETİ (“ONNEX”, “we”, “us”) provides the Contacts Excel app for Android, including its home-screen shortcut (the “App”). This policy explains what data the App uses, what leaves your phone, who processes it for us, how long it is kept and the choices you have. ONNEX is the data controller for the data described here. The iPhone, iPad and Mac app has its own privacy policy.
In short: Your contacts are read and processed on your phone. We never receive them in readable form. The only time contacts leave your phone through us is when you use Transfer to New Phone: they are end-to-end encrypted on your old phone, pass through our relay in the EU, can be decrypted only by the new phone you approve, and are deleted from the relay as soon as the transfer finishes (at the latest after 30 minutes). You don’t create an account. We use analytics and crash reports (Firebase, Mixpanel) to improve the App, RevenueCat to manage purchases, and we measure our own ads on Google. The App shows no ads, and we do not sell your data.
1. App ID (no account)
When you first open the App, it creates a random 24-character User ID on your phone. It is not based on your name, email address, phone number or contacts. We use it to link your purchases and analytics to your installation. It is kept in Android’s backup so that it survives a reinstall or a move to a new phone.
When you contact us from the App (Settings › Help and support), the email draft includes this User ID and basic app information (app name and version, Android version, device model, contacts access status, number of visible contacts, last backup date) so we can help you. You can edit the draft before sending. If no email app is set up, the App opens our support form (onnex.co/support) inside the App instead and passes it your User ID and app version, so we can match your message to your installation. We keep support messages only as long as needed to answer you and keep a record of the request.
2. Your contacts
The App asks for permission to read and change your contacts (Android Contacts permission) and uses it only for the features you choose:
- Export: create Excel (.xlsx), CSV, Word (.docx), PDF or vCard (.vcf) files from your contacts.
- Import: add contacts from a file you pick or open with the App (Excel, CSV or vCard).
- Backup and restore: save a vCard backup of your contacts and restore it later.
- Duplicates: find, merge or delete duplicate contacts. Before every merge or delete, the App saves an undo snapshot so you can take the change back.
- Transfer to New Phone: move your contacts to another Android phone or an iPhone with a QR code (see section 3).
Export, import, backup and duplicate cleanup happen entirely on your phone. Contact details (names, phone numbers, email addresses, photos and other fields) are never sent to our analytics, crash reporting or purchase providers and are never used for analytics or advertising.
Files on your phone. Backups and undo snapshots are stored in the App’s private storage on your phone. You can delete them in the App (backup history and Settings › Undo Snapshots), and they are removed when you uninstall the App. Exported files are created in temporary storage.
Android backup. If backup is turned on in your phone’s settings, Android includes the App’s backups, undo snapshots and User ID in your device backup to your Google Account, so they can be restored on a new phone. This backup is handled by Google under your Google Account settings; we cannot access it. You can turn it off in your phone’s settings. Contacts received with Transfer to New Phone and not yet saved are excluded from this backup.
Files you share or save. A file leaves the App only when you choose to share or save it, for example through WhatsApp, Gmail, Quick Share, Files or Google Drive. The app you choose then handles the file under its own terms and privacy policy.
3. Transfer to New Phone (QR code)
This optional feature moves your contacts from your old phone to a new Android phone or iPhone. It only runs when you start it.
What happens on your old phone
- The App packages all contacts it can access as a vCard file (photos are reduced to 512 pixels), compresses it and encrypts it on your phone with a new random key (AES-256-GCM). It also creates a one-time key pair for this transfer.
- Only the encrypted package is uploaded to our transfer relay. The key that unlocks it stays on your old phone.
- The QR code (and the link you can send instead) contains a transfer ID and the old phone’s public key. It contains no contacts and no secret.
Pairing and your approval
- When a new phone scans the code, both phones show the same 6-digit code. You compare them and approve the connection on your old phone. Nothing can be read until you approve.
- After you approve, the old phone sends the unlock key to the new phone, itself encrypted so that only that new phone can open it (X25519 key agreement, HKDF-SHA256, AES-GCM). If you tap “No, the code is different”, the transfer is cancelled.
- The new phone downloads the package, decrypts it on the device and shows you a preview. Saving the contacts to the new phone requires Contacts Excel Pro (see our Terms of Use). New contacts are saved to the phone’s default contacts account.
What our relay stores and for how long
The relay runs on Google Firebase (Cloud Functions, Cloud Firestore and Cloud Storage) in the European Union. For each transfer it stores only: the encrypted package and its size, the sending platform (Android or iOS), the one-time public keys and pairing values, hashed access tokens, the model name of the new phone (for example “Pixel 9”, shown on your old phone so you know which device is connecting), and timestamps.
- Neither we nor Google can decrypt the package, because we never have the key.
- Everything is deleted as soon as the new phone confirms it received the contacts, when you cancel, or at the latest 30 minutes after the QR code is created.
- To prevent abuse, the relay counts requests per network address. It stores only a one-way hash of your IP address with the count, and deletes these counters within about two hours. Google Cloud may also keep standard technical request logs (such as IP address and time of request) for a limited period, typically up to 30 days, for security and operations. Our own logs contain only a shortened transfer ID, the package size, the platform and the transfer state — never contacts.
- To make sure requests come from a genuine copy of the App, the relay uses Firebase App Check with Google’s Play Integrity. This checks the App and device integrity and does not identify you.
On the new phone
- The QR code is read with Google’s code scanner (Google Play services), which processes the camera image on the phone and returns only the scanned link to the App. The App does not ask for camera permission and does not store or send camera images.
- If the App is not yet installed, the link opens a short web page on our Firebase Hosting site that sends you to Google Play. Google Play passes the transfer ID and public key to the App after installation (install referrer) so the transfer can continue. These values are used only for the transfer and are never sent to analytics.
- If you close the App before saving, the downloaded contacts are kept on the new phone, encrypted with a key held in the Android Keystore, for up to 7 days so you can come back to them. You can delete them at any time with Delete Contacts.
We record transfer analytics events (for example “QR code shown”, “transfer saved”, the number of contacts and error codes) as described in section 4. These events never contain contact details, keys or the transfer link.
Your responsibility: only show the QR code or send the link to yourself or someone you trust, and always compare the 6-digit code before you approve.
4. Analytics and crash reports
We use Firebase Analytics and Firebase Crashlytics (Google) and Mixpanel (EU data residency) to understand how the App is used and to fix problems. They receive:
- usage events, for example screens viewed, features used, the export or import format, how many contacts were exported, imported or transferred, success or failure with an error code, the type of app a file was shared to (for example “gmail” or “google_drive”), permission status, your onboarding goal, and paywall and purchase events (including the product, its price and currency);
- device and app information, for example device model, Android version, language, app version and session count;
- identifiers: your User ID, the Firebase app-instance ID and, through Firebase Analytics, the Android advertising ID;
- approximate location (country, region or city) derived from your IP address;
- crash diagnostics (Crashlytics), such as stack traces and device state at the time of a crash.
These events contain counts, categories and error codes only — never contact details or file contents.
5. Measuring our ads
We advertise the App on Google (Google Ads). To learn which ads lead to installs and purchases:
- the App reads the Google Play install referrer once after installation to record where the install came from (for example “google_ads” or “organic”, and the campaign name). Ad click identifiers in the referrer are not stored. The install source is saved with your analytics in Firebase Analytics and Mixpanel and with your purchase information in RevenueCat;
- Firebase Analytics uses the Android advertising ID and sends app events (for example first open, the first finished export, import or backup, and a purchase with its price and currency) to Google Ads for conversion measurement. Google may also use this data to improve the delivery of our ads, for example to reach people likely to be interested in the App.
In the European Economic Area, the United Kingdom and Switzerland, ad user data and ad personalization signals are turned off by default (Google consent mode). The App does not show ads and does not use the advertising ID for anything else. You can reset or delete your advertising ID, or opt out of ads personalization, in your phone’s settings.
6. Purchases
Subscriptions and one-time purchases are processed by Google Play. We do not receive your payment card details. RevenueCat receives your purchase history and subscription status, linked to your User ID and Firebase app-instance ID, so the App can unlock Pro features and we can understand purchases.
7. App configuration, reviews and notifications
- The App uses Firebase Remote Config to receive settings (for example free limits and which offer to show).
- It may ask you to rate the App through Google Play’s in-app review, which Google handles; we do not see who rated or what you wrote.
- If you turn on backup reminders and allow notifications, the App shows reminders that are scheduled on your phone. We do not use a push notification service.
8. Why we use data (legal bases)
Where laws such as the EU/UK GDPR or Turkey’s KVKK apply, we rely on:
- performing our contract with you — to provide the features you use, including Transfer to New Phone, and to unlock purchases;
- our legitimate interests — to keep the App and the transfer relay secure and free of abuse, to fix crashes and to understand and improve the App;
- your consent — where required for ad measurement; you can withdraw consent at any time;
- legal obligations — for example keeping purchase records.
9. Who receives data
We share data only with service providers that run parts of the App for us, under their terms and only for the purposes above:
- Google — Firebase Analytics, Crashlytics, Remote Config, App Check, Cloud Functions, Cloud Firestore, Cloud Storage and Hosting (transfer relay), Play Integrity, Google Play (purchases, install referrer, code scanner), Google Ads
- Mixpanel — analytics (EU data residency)
- RevenueCat — purchases
We do not sell your data for money and the App contains no ads. We share app events with Google Ads only to measure and improve our own ads, as described in section 5; under some US state privacy laws this may be considered “sharing” for advertising, and you can limit it by deleting your advertising ID or by contacting us. We may disclose data if required by law. Some providers process data outside your country, including in the United States, with safeguards such as standard contractual clauses.
- Google: policies.google.com/privacy
- Mixpanel: mixpanel.com/legal/privacy-policy
- RevenueCat: revenuecat.com/privacy
10. Retention and your choices
- Contacts and files on your phone: delete backups and undo snapshots in the App, or uninstall the App. Changing the Contacts permission in your phone’s settings stops the App from reading your contacts.
- Transfers: relay data is deleted automatically as described in section 3 (at the latest 30 minutes after the QR code is created). You can cancel a transfer at any time on your old phone, and delete unsaved received contacts on your new phone with Delete Contacts.
- Analytics and purchase data: email us your User ID (it is included when you write to us from Settings › Help and support) and we will delete the analytics and purchase records linked to it, except where we must keep purchase records by law. Analytics data is otherwise kept only as long as needed to improve the App, and no longer than our providers’ configured retention periods.
- Advertising ID: reset or delete it, or opt out of ads personalization, in your phone’s settings.
- Notifications: turn backup reminders off in the App or in your phone’s settings.
Depending on where you live (for example under the GDPR, the UK GDPR, Turkey’s KVKK or US state privacy laws), you may have the right to access, correct, delete or export your data, to object to or restrict its processing, to withdraw consent, and to lodge a complaint with your data protection authority. To use these rights, contact us at the address below. We will not treat you differently for using them.
11. Children
The App is not directed to children under 13, and we do not knowingly collect data from them. If you believe a child has sent us data, contact us and we will delete it.
12. Security
Data that leaves your phone is sent over encrypted connections (HTTPS/TLS). Contacts sent with Transfer to New Phone are additionally end-to-end encrypted, so only the new phone you approve can read them. Your other contacts stay on your phone and in the backups you control. No method of storage or transmission is completely secure.
13. Changes
We may update this policy. We will change the “Last updated” date above and, for significant changes, inform you in the App.
14. Contact
ONNEX YAZILIM ANONİM ŞİRKETİ
Yusuf Apartmanı D:3, No:59, Şirintepe Mahallesi, Özkurt Sokak
Tepebaşı, Eskişehir 26190, Türkiye
Email: yusuf@onnex.co
Support: onnex.co/support
Website: onnex.co