Recap — Privacy Notice

Issued under section 7 of the Personal Data Protection Act 2010 (Malaysia), as amended by the Personal Data Protection (Amendment) Act 2024. Effective: 3 August 2026 · Version 1.2 · Bahasa Malaysia di bawah

The short version: Recap is built so that we hold as little of your data as possible. Your expenses, receipts and settings are stored only on your device. There are no accounts. Recap's own server never stores receipt photos — a cloud-read photo is processed in memory and discarded. One honest exception: if you opt in to cloud reading, the photo is read by Google's AI, and Google may keep it and use it to improve its services (section 3). The only records our server keeps are an anonymous per-device usage counter and, if you buy Pro, your licence record.

1. Who we are (data controller)

Recap is operated by PromaxDigita (Malaysia) ("we", "us"), reachable at adlohnft@gmail.com. For the limited processing described in this notice, we are the data controller under the Personal Data Protection Act 2010 ("PDPA").

2. What personal data is processed, and where it lives

DataWhere it is storedNotes
Expense records (amounts, merchants, categories, dates, notes, tags)Your device only (local app storage)Never transmitted to us (except data printed on receipts you choose to cloud-read, which travels inside the photo — see section 3). Deleted when you erase data or uninstall.
Receipt photosYour device — plus Google for hard-to-read photos that go through cloud reading (on by default; turn it off in Settings)Recap's server never stores them. Google may retain photos sent for cloud reading — see section 3.
Settings, budgets, learned preferencesYour device only
Anonymous device identifier + daily usage counterOur server (Cloudflare)A random ID with a number — used solely to prevent abuse of cloud reading. It contains no name, contact detail, or receipt content and cannot identify you.
Pro licence key (if you buy Pro)Our server (Cloudflare)The key, an optional label you gave at purchase, and activation date — the minimum needed to honour your licence.

We collect no names, contact details, location data, advertising identifiers or analytics. We do not build profiles and we never sell or share personal data for marketing.

3. Cloud receipt reading (on by default; you can turn it off)

Cloud reading is on by default, and this is disclosed to you when you first set up the app. When a receipt is too hard for your phone to read on its own, Recap sends just that photo for a sharper read. You can turn cloud reading off at any time in Settings → "Smarter receipt reading" — with it off, no photo ever leaves your phone. When it runs:

Treat a cloud read as showing that one receipt to Google. Most shop receipts contain little personal data, but if a receipt shows anything you consider sensitive — a name, a card or account number, a medical purchase — skip the cloud read and enter it manually, or keep on-device reading only.

You may withdraw this consent at any time in Settings → "Smarter receipt reading"; with it off, no photo ever leaves your phone. Withdrawal stops all future cloud reads; it cannot recall photos already sent to Google.

3a. Optional rewarded ads (mobile app only)

The web version of Recap shows no advertising. In the mobile app's free tier, you may be offered the choice to watch a short rewarded advertisement to unlock extra receipt scans (never shown uninvited). If and when you choose to watch one, the ad is served by Google AdMob, which may process your device's advertising identifier under Google's advertising policies; you will be asked for the applicable ad-consent before any ad is shown. Declining ads never removes any other feature, and Pro users see no ads at all.

3b. Sharing anonymous reading improvements (optional)

When cloud reading is on, Recap can learn a couple of small reading rules from what it sees on a receipt — mainly how a shop's name looks in a photo, and the word that shop uses for "total" (e.g. "jumlah"). If you leave sharing on, once a week your phone sends just those learned rules to our server so every Recap user's receipt reader gets a little better. This can only happen while cloud reading is on — turn cloud reading off in Settings and sharing stops too, automatically.

You can turn this off on its own in Settings → "Share anonymous reading improvements", without touching cloud reading itself. We review what's submitted before it's added back into the app for everyone — nothing you send changes anyone else's data automatically.

3c. Card-slip guard (on-device, always on)

Recap includes an on-device guard that looks for signs of a payment card or ID document — an unmasked card-style number or slip wording like "cardholder" or "signature" — in a photo before it's read. When the guard recognises these signs, it blocks the photo from being sent for cloud reading, and doesn't save the photo, learn from it, or count it as a scan. This check runs entirely on your device; nothing about the block itself is sent anywhere.

Be honest about its limits: we block what we can detect on-device — a card or ID that doesn't match the guard's patterns (for example, a masked number like ****1234, or an unusual layout) may not be caught, so please still avoid photographing payment cards or ID documents yourself. Recap normally starts a cloud read and this on-device check in parallel for speed — that's the default whenever cloud reading is on — so the photo is often already on its way to Google before the guard finishes checking it. The guard still blocks the record from being saved, shown or used once it fires, but it cannot recall a request already sent.

4. Purposes and legal basis

We process the limited data above only to: (a) read receipts you ask us to read (consent); (b) operate fair-use limits and prevent abuse (legitimate operation of the service); (c) honour Pro licences (performance of your purchase). We do not use your data for any other purpose.

5. Disclosures to third parties

We disclose personal data only to the parties required to run the optional cloud features, and only to the extent described: Cloudflare, Inc. (hosting/relay, as our processor) and Google LLC (AI receipt reading — note that, as described in section 3, Google also uses cloud-read submissions for its own improvement purposes under its API terms). We do not disclose personal data to any other party, except where required by Malaysian law or a competent authority.

6. Cross-border transfer

Cloud reads may be processed on Cloudflare and Google infrastructure outside Malaysia (including the United States). Transfers occur only with your consent (section 3) and are limited to the single photo being read. They are protected by encryption in transit; Cloudflare handles the photo as our processor under contractual safeguards, while Google's handling — including the retention and improvement uses described in section 3 — is governed by Google's API terms. These transfers rely on your consent, consistent with section 129 of the PDPA.

7. Retention

Receipt photos sent for cloud reading: not retained by us (in-memory only); Google may retain them under its API terms (section 3). Anonymous usage counters: retained on a rolling daily basis for abuse prevention. Licence records: retained while your licence may be active. Data on your device is yours — it persists until you erase it in Settings or uninstall the app.

8. Security

All transmissions are encrypted (HTTPS/TLS). Server-side, the design itself is the main safeguard: nothing sensitive is stored on our servers (for what Google may retain from cloud reads, see section 3). On your device, data lives in your phone's protected app storage; we recommend using your phone's screen lock and the in-app backup feature (backup files exclude secrets).

9. Your rights under the PDPA

Because your records live on your device, you exercise most rights directly in the app:

10. Data breach notification

In the unlikely event of a personal data breach on our side that causes or is likely to cause significant harm, we will notify the Personal Data Protection Commissioner without undue delay (within 72 hours) and affected users within 7 days, in line with the PDPA's mandatory breach notification requirements (in force since 1 June 2025).

11. Children

Recap is intended for general audiences and is not directed at children under 13. We do not knowingly process children's personal data.

12. Changes to this notice

We will post any changes here with a new effective date, and flag material changes in the app.

13. Complaints

Contact us first at adlohnft@gmail.com. You may also lodge a complaint with the Personal Data Protection Department (JPDP), Malaysia — www.pdp.gov.my.

Recap — Notis Privasi

Dikeluarkan di bawah seksyen 7 Akta Perlindungan Data Peribadi 2010, sebagaimana dipinda oleh Akta Perlindungan Data Peribadi (Pindaan) 2024. Berkuat kuasa: 3 Ogos 2026 · Versi 1.2

Ringkasnya: Recap direka supaya kami memegang sesedikit mungkin data anda. Perbelanjaan, resit dan tetapan anda disimpan hanya pada peranti anda. Tiada akaun. Pelayan Recap sendiri tidak pernah menyimpan foto resit — foto bacaan awan diproses dalam memori dan dibuang serta-merta. Satu pengecualian yang perlu kami akui: jika anda memilih bacaan awan, foto itu dibaca oleh AI Google, dan Google mungkin menyimpannya serta menggunakannya untuk menambah baik perkhidmatannya (seksyen 3). Satu-satunya rekod pelayan kami ialah kaunter penggunaan tanpa nama bagi setiap peranti dan, jika anda membeli Pro, rekod lesen anda.

1. Siapa kami (pengawal data)

Recap dikendalikan oleh PromaxDigita (Malaysia), boleh dihubungi di adlohnft@gmail.com. Bagi pemprosesan terhad yang diterangkan dalam notis ini, kami ialah pengawal data di bawah Akta Perlindungan Data Peribadi 2010 ("PDPA").

2. Data peribadi yang diproses dan lokasi simpanannya

Kami tidak mengumpul nama, butiran hubungan, data lokasi, pengecam pengiklanan atau analitik; kami tidak menjual atau berkongsi data peribadi untuk pemasaran.

3. Bacaan resit awan (pilihan, berasaskan persetujuan)

Secara lalai, resit dibaca pada peranti anda dan foto tidak meninggalkannya. Jika anda mengaktifkan bacaan awan dan menerima gesaan persetujuan dalam aplikasi, foto yang sukar dibaca akan dihantar melalui sambungan tersulit kepada perkhidmatan pembaca kami (Cloudflare) dan diproses oleh perkhidmatan AI Google. Di pihak kami, foto diproses dalam memori sahaja — tidak pernah ditulis ke cakera, pangkalan data atau log — dan dibuang sebaik keputusan diterima. Di pihak Google: kami menggunakan peringkat percuma perkhidmatan AI Google, jadi Google mungkin menyimpan foto dan teks yang diekstrak serta menggunakannya untuk menyediakan, menambah baik dan membangunkan produk dan perkhidmatan Google — termasuk melatih model AI-nya — dan penyemak manusia mungkin membacanya (Google menyatakan serahan dipisahkan daripada pengirimnya sebelum disemak). Pemprosesan ini dijalankan oleh Google untuk tujuannya sendiri di bawah terma API Google.

Anggap bacaan awan seperti menunjukkan resit itu kepada Google. Kebanyakan resit kedai mengandungi sedikit sahaja data peribadi, tetapi jika resit memaparkan apa-apa yang anda anggap sensitif — nama, nombor kad atau akaun, pembelian perubatan — langkau bacaan awan dan masukkan secara manual, atau kekalkan bacaan pada peranti sahaja. Anda boleh menarik balik persetujuan pada bila-bila masa di Tetapan → "Smarter receipt reading"; dengan ciri ini dimatikan, tiada foto meninggalkan telefon anda. Penarikan balik menghentikan semua bacaan awan yang akan datang; ia tidak boleh menarik semula foto yang telah dihantar kepada Google.

3a. Iklan ganjaran pilihan (aplikasi mudah alih sahaja)

Versi web Recap tidak memaparkan iklan. Dalam pelan percuma aplikasi mudah alih, anda mungkin ditawarkan pilihan untuk menonton iklan ganjaran pendek bagi membuka imbasan resit tambahan (tidak sekali-kali dipaparkan tanpa diminta). Iklan disampaikan oleh Google AdMob, yang mungkin memproses pengecam pengiklanan peranti anda di bawah dasar pengiklanan Google; persetujuan iklan yang berkenaan akan diminta terlebih dahulu. Menolak iklan tidak menghilangkan sebarang ciri lain, dan pengguna Pro tidak melihat iklan langsung.

3b. Perkongsian penambahbaikan bacaan tanpa nama (pilihan)

Apabila bacaan awan dihidupkan, Recap boleh mempelajari beberapa peraturan bacaan kecil daripada resit yang dilihatnya — terutamanya cara nama kedai kelihatan dalam foto, dan perkataan yang dicetak kedai itu untuk jumlah keseluruhan (contohnya "jumlah" atau "grand total"). Jika perkongsian dibiarkan hidup, sekali seminggu telefon anda menghantar peraturan yang dipelajari itu sahaja kepada pelayan kami supaya pembaca resit semua pengguna Recap menjadi lebih baik. Ini hanya berlaku semasa bacaan awan hidup — matikan bacaan awan di Tetapan dan perkongsian turut berhenti secara automatik.

Anda boleh mematikan ciri ini secara berasingan di Tetapan → "Share anonymous reading improvements", tanpa menyentuh bacaan awan itu sendiri. Kami menyemak apa yang dihantar sebelum ia ditambah semula ke dalam aplikasi untuk semua orang — tiada apa yang anda hantar mengubah data pengguna lain secara automatik.

3c. Perlindungan slip kad (pada peranti, sentiasa aktif)

Recap mempunyai perlindungan pada peranti yang mengesan tanda kad pembayaran atau dokumen pengenalan — nombor bergaya kad yang tidak bertopeng atau perkataan seperti "cardholder" atau "signature" — pada foto sebelum ia dibaca. Apabila perlindungan ini mengesan tanda tersebut, ia menghalang foto daripada dihantar untuk bacaan awan, dan tidak menyimpan foto itu, mempelajari daripadanya, atau mengiranya sebagai imbasan. Pemeriksaan ini berlaku sepenuhnya pada peranti anda; tiada apa-apa mengenai sekatan itu dihantar ke mana-mana.

Namun ada hadnya: kami menyekat apa yang dapat kami kesan pada peranti sahaja — kad atau ID yang tidak sepadan dengan corak perlindungan ini (contohnya nombor bertopeng seperti ****1234, atau susun atur luar biasa) mungkin tidak dapat dikesan, jadi sila tetap elakkan daripada mengambil foto kad pembayaran atau dokumen pengenalan sendiri. Recap biasanya memulakan bacaan awan dan pemeriksaan pada peranti ini secara selari demi kelajuan — itulah lalai apabila bacaan awan dihidupkan — jadi foto selalunya sudah dalam perjalanan ke Google sebelum perlindungan ini selesai memeriksanya. Perlindungan tetap menghalang rekod itu daripada disimpan, dipaparkan atau digunakan sebaik ia dikesan, tetapi ia tidak dapat menarik balik permintaan yang telah dihantar.

4. Tujuan

Data terhad di atas diproses hanya untuk: (a) membaca resit atas permintaan anda (persetujuan); (b) mengawal had penggunaan berpatutan dan mencegah penyalahgunaan; (c) melayani lesen Pro anda.

5. Pendedahan kepada pihak ketiga

Pendedahan hanya kepada pihak yang diperlukan untuk ciri awan: Cloudflare, Inc. (pengehosan, sebagai pemproses kami) dan Google LLC (bacaan AI — seperti diterangkan dalam seksyen 3, Google turut menggunakan serahan bacaan awan untuk tujuan penambahbaikannya sendiri di bawah terma API-nya) — dan tiada pihak lain, kecuali jika dikehendaki oleh undang-undang Malaysia.

6. Pemindahan rentas sempadan

Bacaan awan mungkin diproses pada infrastruktur Cloudflare dan Google di luar Malaysia (termasuk Amerika Syarikat), hanya dengan persetujuan anda (seksyen 3) dan terhad kepada foto yang dibaca. Ia dilindungi penyulitan semasa penghantaran; Cloudflare mengendalikan foto sebagai pemproses kami di bawah perlindungan kontrak, manakala pengendalian Google — termasuk pengekalan dan penggunaan penambahbaikan yang diterangkan dalam seksyen 3 — tertakluk pada terma API Google. Pemindahan ini bergantung pada persetujuan anda, selaras dengan seksyen 129 PDPA.

7. Pengekalan

Foto yang dihantar untuk bacaan awan: tidak dikekalkan oleh kami; Google mungkin mengekalkannya di bawah terma API-nya (seksyen 3). Kaunter tanpa nama: dikekalkan atas dasar harian bergolek. Rekod lesen: dikekalkan selagi lesen mungkin aktif. Data pada peranti anda kekal sehingga anda memadamnya.

8. Keselamatan

Semua penghantaran disulitkan (HTTPS/TLS). Di pihak pelayan, reka bentuk itu sendiri adalah perlindungan utama: tiada data sensitif disimpan pada pelayan kami (bagi apa yang mungkin dikekalkan oleh Google daripada bacaan awan, lihat seksyen 3).

9. Hak anda di bawah PDPA

Oleh sebab rekod anda berada pada peranti anda, kebanyakan hak dilaksanakan terus dalam aplikasi: akses & kemudahalihan (eksport JSON/CSV/Excel), pembetulan (sunting terus), penarikan persetujuan (Tetapan), pemadaman ("Padam semua data" atau nyahpasang). Bagi apa-apa yang kami pegang di pelayan, hubungi kami melalui e-mel di atas; kami akan membalas dalam tempoh yang ditetapkan PDPA (21 hari bagi permintaan akses/pembetulan).

10. Pemberitahuan pelanggaran data

Sekiranya berlaku pelanggaran data peribadi di pihak kami yang menyebabkan atau berkemungkinan menyebabkan kemudaratan ketara, kami akan memberitahu Pesuruhjaya Perlindungan Data Peribadi tanpa kelengahan (dalam 72 jam) dan pengguna terjejas dalam 7 hari, selaras dengan kehendak pemberitahuan mandatori PDPA (berkuat kuasa 1 Jun 2025).

11. Kanak-kanak

Recap tidak ditujukan kepada kanak-kanak bawah 13 tahun.

12. Perubahan notis

Sebarang perubahan akan disiarkan di sini dengan tarikh kuat kuasa baharu.

13. Aduan

Hubungi kami dahulu di adlohnft@gmail.com. Anda juga boleh membuat aduan kepada Jabatan Perlindungan Data Peribadi (JPDP) — www.pdp.gov.my.

← Back to Recap / Kembali ke Recap