IncomeMate is built on the principle of privacy by design: you don't need an account, your data stays on your device and the developer receives no data from the app.
1. Who is responsible
Marcel Faas, Sandenburg 62, 2036 PS Haarlem, app.income.mate@gmail.com, is responsible for processing the little data the developer does receive (see article 4).
2. What stays on your device
- Local storage: All data you enter (such as income, expenses, categories and photos of receipts) is stored only on your own device.
- Receipt scanning (OCR): Receipts are read entirely on your device. On Android this is done with Google ML Kit, part of Google Play services; the app does not allow ML Kit to send usage data to Google. For languages ML Kit cannot read and on other devices, the app uses the Tesseract.js library. Your images and scans are never uploaded to a server or shared with the developer.
- Camera and photos: The app only asks for access to your camera and photos when you photograph or choose a receipt yourself. A photo is only saved to your photo album if you choose to.
- Importing files: A CSV file you import with "Import a file" is only read on your device and is not uploaded.
- Backup to your own Google account (Android): If Android's backup feature is on, Android can store the app's data encrypted in your own Google account, so you can restore it on a new phone. You control this in your phone's settings, and it is covered by Google's privacy policy. The developer has no access to this backup.
3. When the app connects to the internet
For a few features, the app connects to an external service. As with any internet connection, that service sees your device's IP address. The developer has no access to that data. Data you entered is never sent along.
- Exchange rates: Only when you tap "Update rates", the app fetches the rates from Frankfurter (api.frankfurter.dev), based on the rates of the European Central Bank. Only your account's currency is sent.
- Text recognition: On Android, Google Play services downloads the recognition model. When the app uses Tesseract.js, it downloads the components and the language file once from the jsDelivr download network.
- Payments: The one-time purchase is handled entirely by Google Play or the Apple App Store. Your payment details are not shared with the app; the app only stores that the purchase was made.
4. What the developer does receive
- Purchase details from Google Play or the App Store, such as order number, date, price and country. Purpose: sales records and questions about your purchase. Legal basis: performance of the contract and legal obligation (tax record keeping). Retention: 7 years.
- Your email address and message, if you email us. Purpose: answering your question. Legal basis: legitimate interest. Retention: up to 6 months after your question has been handled.
- Crash and performance data through Google Play Console, only if you have turned on sharing diagnostic data in Android. Purpose: finding and fixing errors in the app. Legal basis: legitimate interest. Retention: as long as Google keeps it.
- The developer does not use analytics services, trackers or advertising networks, and does not sell or share data with third parties.
5. Data safety (Google Play / App Store)
The developer does not collect any data through the app and does not share any data with third parties. The "No data collected" label means that the app itself does not send any data to the developer or anyone else. What Google Play or the App Store processes itself during a purchase is covered by the privacy policy of Google or Apple.
6. Your rights
- Data on your device: You manage it entirely yourself. With "Fix mistakes" in the settings you can undo the last import or erase all entries of a year. If you uninstall the app, all data is erased from your device. You delete a backup in your Google account through your Google account settings.
- Data held by the developer: You can ask which emails or purchase details we have about you, and ask us to correct or delete them. We keep purchase details for as long as the law requires.
- Complaint: If you disagree with how we handle your data, please email us. You can also file a complaint with the Dutch Data Protection Authority (Autoriteit Persoonsgegevens) or the data protection authority in your country.
7. Changes
We may update this privacy policy, for example for new features. The date of the last change is shown at the top. We announce important changes in advance in the app or on the app's page in the store.
8. Governing language
This privacy policy was originally written in Dutch. In case of a difference in interpretation, the Dutch text prevails.
9. Contact
For privacy questions, you can contact us at app.income.mate@gmail.com.