DeviceCheck dari Apple mengingat ponsel milik pelaku penyalahgunaan refund, bahkan setelah mereka mendaftar dengan akun baru
Pemblokiran akun dan pengenal pembelian langsung tidak berguna begitu pelaku penyalahgunaan refund membuat akun baru. DeviceCheck dari Apple dan device recall dari Google Play menyimpan beberapa bit per perangkat di server toko. Berikut apa yang disimpan, kapan harus mengaturnya, dan apa yang Anda hemat.

Poin utama
- DeviceCheck dari Apple memungkinkan server Anda mengatur dan membaca dua bit biner per perangkat, yang disimpan di server Apple. Apple menyebut penandaan perangkat yang terbukti curang sebagai salah satu tujuan penggunaannya.
- Pengingat perangkat (device recall) dari Google Play, fitur beta dari Play Integrity API, menyimpan tiga bit kustom per perangkat di server Google. Bit ini tetap ada setelah aplikasi dipasang ulang dan perangkat direset.
- Nilai device recall digunakan bersama oleh semua aplikasi dalam akun developer Google Play yang sama dan disimpan selama 3 tahun setelah pembacaan atau penulisan terakhir.
- Token Play Integrity dapat dipakai untuk menulis bit device recall hingga 14 hari setelah diverifikasi. Jangka ini mencakup jendela refund mandiri Google Play selama 48 jam.
- Notifikasi refund Apple maupun pembelian yang dibatalkan di Google tidak membawa pengenal perangkat. Jadi perangkat hanya bisa ditandai oleh server yang sudah lebih dulu menghubungkan pembelian dengan akunnya sendiri.
- Penanda perangkat tidak bisa menghentikan refund. Penanda ini menentukan apa yang diberikan aplikasi Anda berikutnya kepada perangkat tersebut, misalnya kredit gratis, uji coba yang Anda danai, atau penawaran promosi yang ditandatangani server Anda.
- Hanya dua alur refund yang memungkinkan developer mengirim bukti sebelum toko memutuskan: CONSUMPTION_REQUEST dari Apple, dijawab dalam 12 jam, dan peninjauan chargeback Google Play melalui orders.reviewrefund, dijawab dalam 24 jam.
Memblokir akun tidak menghentikan pelaku penyalahgunaan refund yang mendaftar lagi di ponsel yang sama. DeviceCheck dari Apple dan device recall dari Google Play dibuat persis untuk celah itu. Keduanya memungkinkan server Anda melekatkan beberapa bit dengan makna Anda sendiri pada perangkat fisik, yang disimpan di server toko. Penanda itu tetap ada saat orang yang sama kembali dengan alamat email baru. Tidak satu pun dari keduanya memberi Anda ID perangkat, dan tidak satu pun bisa menghentikan refund. Yang mereka lakukan adalah memberi tahu Anda, saat pendaftaran atau di paywall, bahwa perangkat ini pernah merugikan Anda.
Berikut apa yang sebenarnya disimpan oleh masing-masing toko, jebakan waktu yang menentukan apakah Anda bisa mengatur penanda sama sekali, dan berapa biaya yang ditimbulkan pelaku berulang sebelum Anda menangkapnya.
Mengapa akun baru mengalahkan setiap pertahanan tingkat akun
Sebagian besar pertahanan refund terikat pada akun. appAccountToken dari Apple mengaitkan transaksi dengan pengguna di database Anda. ID akun tersamar (obfuscated account ID) dari Google Play melakukan hal yang sama di Android. Keduanya memang wajib diatur pada setiap pembelian, dan keduanya menggambarkan akun seseorang, bukan perangkat keras yang ia pegang. Hapus akunnya, daftar dengan email baru, dan riwayat Anda tentang orang itu kembali ke nol.
Toko tidak menutup celah ini untuk Anda. Notifikasi refund App Store memberi tahu transaksi mana yang direfund. Pembelian yang dibatalkan di Google Play memberi tahu token pembelian, ID pesanan, dan voidedReason. Tidak satu pun membawa pengenal perangkat. Seorang developer aplikasi kencan menggambarkan akibatnya di sebuah utas Apple Developer Forums: profil penipu terus membeli keanggotaan premium yang kemudian direfund, dan memblokir perangkat mereka dengan metode buatan developer sendiri tidak membantu.
Apakah akun baru mereset uji coba milik toko?
Tidak, jika masih memakai Apple Account yang sama. Dokumentasi Apple menyatakan bahwa penawaran perkenalan, termasuk uji coba gratis, diberikan kepada pelanggan yang belum pernah menerimanya untuk produk itu atau produk lain dalam grup langganan yang sama. Jadi login baru di dalam aplikasi Anda tidak memberi uji coba Apple yang kedua. Apple Account baru bisa, begitu juga apa pun yang Anda berikan sendiri: kredit pendaftaran, uji coba yang didanai server, bonus referral. Itulah hadiah yang dilindungi oleh penanda perangkat.
Apa yang sebenarnya disimpan DeviceCheck dari Apple
DeviceCheck terdiri dari dua bagian. Di aplikasi, kelas DCDevice menghasilkan token sementara yang mengidentifikasi perangkat. Di server Anda, token itu dikirim ke Apple bersama JSON web token yang ditandatangani dengan kunci dari akun developer Anda, lalu Apple mengizinkan Anda membaca atau memperbarui dua bit untuk perangkat tersebut. Respons pembacaan mengembalikan bit0, bit1, dan last_update_time, dalam bentuk tahun dan bulan. Contoh penggunaan dari Apple sendiri adalah perangkat yang sudah mengambil penawaran promosi dan perangkat yang Anda nilai curang.
Apple menyimpan bitnya, tetapi maknanya milik Anda. Dokumentasinya menyatakan bahwa Anda bertanggung jawab mencatat arti bit tersebut dan memutuskan kapan meresetnya, dengan perangkat yang dijual sebagai contoh. Dua bit memberi empat keadaan. Skema sederhananya adalah satu bit untuk direfund setelah pemakaian berat dan satu bit untuk sudah menerima kredit gratis.
- Token hanya bisa dipakai sekali. Apple menyatakan token tetap berlaku cukup lama untuk mengulang permintaan, tetapi Anda sebaiknya membuat token baru untuk setiap panggilan.
- Build pengembangan berkomunikasi dengan api.development.devicecheck.apple.com. Produksi wajib memakai api.devicecheck.apple.com, jika tidak penanda Anda tersimpan di tempat yang salah.
- Apple menggambarkan DeviceCheck sebagai satu masukan dalam penilaian risiko menyeluruh, bukan sebuah putusan. Anggap bit yang aktif sebagai alasan untuk memeriksa lebih teliti.
Apa yang ditambahkan device recall dari Google di Android
Versi Google berada di dalam Play Integrity API dan masih berstatus beta, dengan akses melalui formulir minat. Setelah Anda disetujui dan mengaktifkannya di Play Console, setiap putusan integritas membawa tiga bit kustom untuk perangkat tersebut. Anda menulisnya melalui panggilan server ke endpoint deviceRecall:write, menggunakan token integritas yang sudah Anda verifikasi. Google menyatakan data ini tetap ada setelah aplikasi dipasang ulang dan perangkat direset, karena data disimpan di server Google.
Dokumentasi Google sangat lugas soal kasus penggunaannya. Google menyebut perangkat dengan bukti penyalahgunaan berat, perangkat yang sudah menukarkan item bernilai tinggi seperti uji coba gratis, dan perangkat yang dipakai berulang kali untuk membuat akun baru demi tujuan penyalahgunaan. Google sama lugasnya soal batasannya: device recall hanya boleh dipakai untuk melindungi keamanan aplikasi dan melawan penyalahgunaan, penipuan, dan akses tidak sah. Fitur ini tidak boleh dipakai untuk fingerprinting atau melacak pengguna individu, dan tidak boleh menyimpan atribut sensitif seperti usia, jenis kelamin, atau lokasi.
| Pertanyaan | Apple DeviceCheck | Google Play device recall |
|---|---|---|
| Status | Tersedia umum | Beta, persetujuan melalui formulir minat |
| Bit per perangkat | 2 | 3 |
| Lokasi penyimpanan | Server Apple | Server Google |
| Bertahan setelah pasang ulang dan reset | Disimpan di sisi server, Apple menyerahkan reset kepada Anda | Ya, keduanya, menurut Google |
| Digunakan bersama antar aplikasi Anda | Terikat pada akun developer Anda | Ya, semua aplikasi di akun developer |
| Stempel waktu | Tahun dan bulan pembaruan terakhir | Tanggal penulisan per bit |
| Retensi | Sampai Anda meresetnya | 3 tahun setelah pembacaan atau penulisan terakhir |
| Token untuk menulis | Token DCDevice baru, sekali pakai | Token integritas terverifikasi, dapat dipakai selama 14 hari |
| Persyaratan tambahan | App ID terdaftar di akun Anda | Play Store dan Play services versi terbaru, pengguna berlisensi Play, bukan emulator |
Masalah waktu: refund datang setelah token hilang
Kedua alat memerlukan sesuatu dari perangkat itu sendiri sebelum Anda bisa menandainya. Apple memerlukan token DCDevice yang baru. Google memerlukan token integritas dari perangkat itu yang usianya tidak lebih dari 14 hari. Sementara itu, refund tiba di server Anda melalui notifikasi toko yang tidak tahu apa pun tentang perangkatnya. Jadi pertanyaannya bukan apakah perlu menandai perangkat. Pertanyaannya adalah apakah Anda masih punya cara menjangkau perangkat itu saat refund tiba.
Refund 48 jam Google muat di dalam jendela 14 hari
Refund mandiri Google Play hanya tersedia dalam 48 jam setelah pembelian, jauh di dalam 14 hari masa berlaku token integritas untuk penulisan. Jalankan pemeriksaan integritas tepat saat pembelian, simpan token terverifikasi di samping ID pesanan, dan saat pembelian yang dibatalkan untuk pesanan itu tiba, Anda bisa langsung menulis bitnya. Chargeback adalah kasus yang lebih sulit, karena sengketa bank bisa datang jauh setelah hari ke-14.
Refund Apple memerlukan perangkat untuk kembali
Refund Apple bisa datang berminggu-minggu setelah pembelian, dan token DeviceCheck yang disimpan tidak dimaksudkan untuk dipakai ulang. Jawaban praktisnya adalah menandai akun lebih dulu, lalu perangkatnya. Saat notifikasi refund tiba, tandai akun di database Anda. Lain kali akun itu membuka aplikasi, minta token DeviceCheck dan atur bitnya. Pelaku yang tetap menyimpan konten setelah refund biasanya memang kembali, karena memakainya adalah tujuan mereka.
- Saat pembelian, catat transaksi ke akun Anda sendiri melalui appAccountToken atau ID akun tersamar.
- Saat refund atau pembatalan, tandai akun itu di server Anda.
- Pada sesi berikutnya dari akun yang ditandai, ambil token perangkat dan atur bit Anda.
- Pada setiap pendaftaran, baca bitnya sebelum Anda memberikan apa pun yang memakan biaya.
Berapa biaya yang ditimbulkan pelaku refund berulang
Harga yang direfund adalah bagian yang terlihat. Sisanya adalah semua yang sudah digerakkan oleh pembelian itu. Jika aplikasi Anda mengeluarkan uang untuk menghadirkan apa yang dijualnya, setiap siklus beli, pakai, dan refund membuat uang itu tetap terpakai: waktu GPU untuk gambar yang dihasilkan, panggilan berbayar ke API model atau data, penyimpanan untuk ekspor yang tetap dipegang pelanggan, dan pembayaran ke kreator yang dihitung dari penjualan. Akun baru membuka siklus itu lagi, dan pembukuan Anda mencatatnya sebagai pelanggan yang benar-benar baru.
Pemberian gratis bocor dengan cara yang sama, bahkan tanpa refund sama sekali. Perangkat yang memanen kredit pendaftaran di sepuluh akun menghabiskan sepuluh kali daya komputasi yang Anda anggarkan untuk satu uji coba. Di Google Play, chargeback atas pesanan setelah 3 Agustus 2026 juga membebani Anda sebesar harga pembelian dikurangi biaya layanan Google, ditambah biaya bank. Jadi orang yang mengajukan sengketa dari akun baru setiap kali membuat Anda menanggung biaya sengketa penuh lagi.
| Pos biaya | Tanpa penanda perangkat | Dengan penanda perangkat |
|---|---|---|
| Kredit pendaftaran atau uji coba yang Anda danai | Diberikan lagi di setiap akun baru | Ditahan atau dikurangi pada perangkat yang ditandai |
| Komputasi dan panggilan API berbayar | Terpakai lagi di setiap siklus | Terpakai sekali, lalu dibatasi |
| Pembayaran kreator atau afiliasi | Dibayar atas penjualan yang kembali sebagai refund | Ditahan untuk ditinjau pada perangkat yang ditandai |
| Chargeback Google Play setelah 3 Agustus 2026 | Harga dikurangi biaya layanan, ditambah biaya bank, setiap kali | Sama per sengketa, tetapi sengketa berulang lebih sedikit |
| Keputusan refund toko | Diputuskan oleh toko | Tetap diputuskan oleh toko |

Apa yang dilakukan terhadap perangkat yang ditandai
Penanda menjawab satu pertanyaan: apakah perangkat ini layak mendapat sesuatu secara gratis lagi? Jaga agar respons Anda proporsional, karena bit yang aktif adalah indikasi, bukan bukti. Ponsel dijual kembali, keluarga berbagi iPad, dan Google secara eksplisit meminta Anda mempertimbangkan untuk mengabaikan atau mereset data lama karena alasan itu.
- Lewati kredit pendaftaran, uji coba yang didanai server, atau bonus referral pada perangkat yang ditandai, dan tawarkan paket berbayar sebagai gantinya.
- Jangan menandatangani penawaran promosi untuk perangkat yang ditandai. Di App Store, server Anda yang membuat tanda tangan untuk membuka penawaran promosi, jadi keputusannya ada di tangan Anda.
- Wajibkan pembayaran selesai sebelum mengirim item habis pakai yang mahal ke perangkat yang ditandai.
- Gunakan stempel waktunya. Penanda yang diatur bulan lalu lebih berbobot daripada yang diatur dua tahun lalu.
- Beri orang cara menghubungi dukungan. Pembeli ponsel bekas yang keliru ditandai berhak mendapat jawaban, dan Anda bisa mereset bitnya.
Bisakah perangkatnya langsung diblokir?
Anda bisa menolak memberikan bonus gratis milik Anda sendiri, dan di situlah penanda perangkat paling bermanfaat. Pemblokiran total lebih berisiko. Orang yang memegang ponsel hari ini belum tentu orang yang menyalahgunakannya, dan ketentuan Google sendiri membatasi device recall untuk pencegahan penyalahgunaan, bukan pelacakan orang. Batasi apa yang memakan biaya dan biarkan jalur berbayar tetap terbuka.
Bagaimana dengan Keychain (rantai kunci) atau pengenal perangkat?
Developer sering bertanya apakah penanda di Keychain atau ID perangkat keras bisa melakukan hal yang sama. Penanda yang disimpan aplikasi Anda di ponsel hilang setelah perangkat direset, dan Apple tidak memberi aplikasi pengenal perangkat keras yang stabil untuk keperluan ini. DeviceCheck dan device recall adalah jawaban yang disetujui toko, justru karena bitnya berada di server Apple dan Google, bukan di ponsel.
Di mana toko tetap memutuskan
Penanda perangkat mengubah apa yang diberikan aplikasi Anda berikutnya. Penanda itu tidak menyentuh refund yang sedang Anda hadapi. Hanya dua alur refund yang memungkinkan Anda mengirim bukti sebelum toko memutuskan. Apple mengirim CONSUMPTION_REQUEST dan meminta data konsumsi dalam 12 jam. Google Play membuka peninjauan chargeback yang Anda jawab dalam 24 jam melalui orders.reviewrefund. Selebihnya, mulai dari refund 48 jam Google Play hingga refund melalui dukungan dan refund otomatis atas pembelian yang tidak dikonfirmasi, diputuskan tanpa Anda. Chargeback bersifat final setelah bank memutuskan.
RefundHalt menjawab setiap CONSUMPTION_REQUEST dan peninjauan chargeback Google Play di dalam jendela waktunya dengan data pemakaian Anda yang sebenarnya, dan mengaitkan setiap refund kembali ke akun yang mengajukannya. Dengan begitu server Anda tahu perangkat mana yang perlu ditandai saat perangkat itu terhubung lagi.
Pertanyaan yang sering diajukan
- Untuk apa DeviceCheck dari Apple digunakan?
- DeviceCheck memungkinkan server Anda menyimpan dan membaca dua bit per perangkat di server Apple. Contoh dari Apple sendiri adalah menandai perangkat yang sudah mengambil penawaran promosi dan menandai perangkat yang Anda nilai curang. Anda yang menentukan arti bit tersebut dan kapan meresetnya.
- Apakah DeviceCheck tetap berfungsi setelah pengguna menghapus aplikasi atau membuat akun baru?
- Ya. Bit tersebut melekat pada perangkat dan disimpan di server Apple, bukan di dalam aplikasi Anda atau akun pengguna. Jadi pendaftaran baru di perangkat yang sama membaca bit yang sama setelah aplikasi dipasang ulang. Apple menyerahkan reset kepada Anda, misalnya saat perangkat dijual.
- Apakah ada padanan DeviceCheck di Android?
- Ya, device recall di Play Integrity API. Fitur ini menyimpan tiga bit kustom per perangkat di server Google, tetap ada setelah pemasangan ulang dan reset perangkat, digunakan bersama oleh semua aplikasi di akun developer Anda, dan menyimpan data selama 3 tahun setelah akses terakhir. Fitur ini masih beta dan memerlukan persetujuan.
- Bisakah penanda perangkat mencegah pelanggan mendapatkan refund?
- Tidak. Apple dan Google memutuskan refund sendiri. Penanda perangkat hanya mengendalikan apa yang ditawarkan aplikasi Anda berikutnya, seperti kredit gratis atau penawaran promosi. Bukti Anda hanya diperhitungkan dalam CONSUMPTION_REQUEST dari Apple, dijawab dalam 12 jam, dan peninjauan chargeback Google Play, dijawab dalam 24 jam.
- Apakah boleh memblokir perangkat karena penyalahgunaan refund?
- Google hanya mengizinkan device recall untuk keamanan aplikasi serta pencegahan penyalahgunaan, penipuan, dan akses tidak sah, dan melarang penggunaannya untuk fingerprinting atau melacak pengguna. Karena perangkat dijual kembali dan dipakai bersama, penggunaan yang lebih aman adalah menahan bonus gratis pada perangkat yang ditandai, bukan mengunci akses ke fitur berbayar.
Sumber dan bacaan lanjutan
- Apple Developer: DeviceCheck
- Apple Developer: Accessing and modifying per-device data
- Apple Developer: DCDevice
- Apple Developer: Implementing introductory offers in your app
- Android Developers: Detect repeat abuse using device recall (beta)
- Apple Developer Forums: Refund abuse
- Google Play Help: Apps, games, and in-app purchases refund policies
- Play Console Help: Updates to refund protection and chargeback cost responsibility
RefundHalt
Autopilot refund untuk App Store dan Google Play
Baca selanjutnya
Biaya alternative billing Google Play di AS berlaku sejak 1 Oktober, dan refund atas penjualan itu tetap urusan Anda
Sejak 1 Oktober 2026, Google Play memungut biaya layanan atas pembelian di AS yang dilakukan lewat alternative billing atau external content links. Google tetap tidak menangani satu pun refund-nya. Berikut isi tabel biayanya, cara melaporkan refund ke Google, dan berapa biaya setiap refund bagi Anda.
Permintaan refund yang berlebihan bisa merugikan Anda lebih dari nilai refund itu sendiri, karena kedua toko aplikasi menganggapnya sinyal kualitas
Pedoman 5.6.4 Apple menyebut permintaan refund berlebihan sebagai tanda aplikasi tidak memenuhi standar kualitas, dan Perjanjian Distribusi Google mengizinkannya menghapus aplikasi developer baru berdasarkan tingkat refund. Berikut isi aturan tiap toko, biaya penghapusan, dan cara menghindarinya.