Pelanggan yang ditagih dua kali untuk langganan yang sama biasanya membayar di dua platform, dan hanya satu refund yang bisa Anda berikan
Saat pelanggan ditagih dua kali untuk langganan yang sama, biasanya satu paket dibeli lewat App Store dan satu lagi lewat Google Play atau situs web Anda. Berikut siapa yang bisa me-refund masing-masing, berapa biayanya bagi Anda, dan cara menghentikan tagihan kedua.

Poin utama
- Pelanggan yang ditagih dua kali untuk langganan yang sama biasanya membelinya lewat dua toko berbeda, misalnya App Store dan Google Play. Setiap toko menagih dan me-refund pembeliannya sendiri secara terpisah.
- Developer tidak bisa me-refund pembelian App Store. Apple yang memutuskan, melalui reportaproblem.apple.com atau melalui lembar refund yang bisa dibuka aplikasi dengan beginRefundRequest dari StoreKit. Menurut Apple, persetujuan atau penolakan memakan waktu hingga 48 jam.
- Di Google Play, developer bisa me-refund pesanan dari Order management di Play Console atau melalui API orders.refund, yang tidak bisa me-refund pesanan berusia lebih dari 3 tahun.
- Me-refund pesanan terbaru dari langganan Google Play langsung menghapus langganan dan membatalkan perpanjangan berikutnya. Me-refund pesanan yang lebih lama membuat langganan tetap aktif.
- Apple mengirim CONSUMPTION_REQUEST untuk permintaan refund pada semua jenis produk, termasuk langganan yang diperpanjang otomatis. Developer punya waktu 12 jam untuk merespons dengan Send Consumption Information jika pelanggan memberi persetujuan.
- Untuk pesanan Google Play yang dibuat setelah 3 Agustus 2026, chargeback membebani developer sebesar harga pembelian, dikurangi biaya layanan Play, ditambah biaya chargeback dari bank.
- Dengan memasang appAccountToken pada pembelian Apple dan ID akun yang disamarkan pada pembelian Google Play, server Anda bisa melihat satu pelanggan di balik dua langganan toko sebelum tagihan kedua terjadi.
Tidak ada apa pun di sistem penagihan Apple maupun Google yang mencegah satu orang membayar keduanya untuk langganan Anda di bulan yang sama. Saat pelanggan ditagih dua kali untuk langganan yang sama, hampir selalu itulah yang terjadi. Mereka berlangganan di iPhone, lalu berlangganan lagi di tablet Android atau di situs web Anda, dan aplikasi Anda tidak mengenali paket pertama. Pelanggan melihat dua tagihan dan menghubungi Anda. Masalahnya, Anda hanya bisa me-refund salah satunya sendiri, dan itu pun hanya jika tidak dibeli lewat Apple. Berikut cara kerja masing-masing sisi, berapa kerugian akibat duplikat ini, dan cara memastikan hal ini tidak terulang.
Mengapa pelanggan ditagih dua kali untuk langganan yang sama
Setiap toko memiliki pembeliannya sendiri. Apple menagih langganan App Store, Google menagih langganan Google Play, dan pemroses pembayaran Anda menagih paket web. Tidak ada yang tahu keberadaan yang lain. Server Anda satu-satunya tempat kedua pembelian bisa bertemu, dan itu pun hanya jika keduanya membawa ID yang mengaitkannya ke akun yang sama.
Jalur yang biasa berujung pada tagihan ganda terlihat seperti ini:
- Pelanggan berganti ponsel, dari iOS ke Android atau sebaliknya, lalu berlangganan lagi karena aplikasi baru menampilkan paywall.
- Pelanggan berlangganan di situs web Anda, memasang aplikasi, dan belum masuk ke akun, sehingga aplikasi menjual langganan toko di atas paket yang sudah ada.
- Pelanggan mencopot aplikasi dan mengira paketnya ikut berakhir. Bantuan Google menyatakan bahwa mencopot aplikasi tidak membatalkan langganan Google Play-nya, dan paket App Store terus diperpanjang sampai dibatalkan di akun Apple.
“Aplikasi dan situs web Anda jelas tidak saling terhubung”
Itulah keluhan yang akan Anda baca di email dukungan, dan dari sisi pelanggan, keluhan itu wajar. Mereka membayar untuk satu produk. Diminta membayar lagi terasa seperti jebakan, meskipun itu kekeliruan dari kedua belah pihak. Cara tercepat untuk meredakannya adalah menyampaikan dengan jelas pembelian mana yang bisa Anda refund dan mana yang harus mereka ajukan ke Apple.
Siapa yang bisa me-refund setiap tagihan
Di sinilah sebagian besar balasan dukungan keliru. Anda hanya bisa menjanjikan apa yang Anda kendalikan.
| Tempat duplikat dibeli | Siapa yang memutuskan refund | Cara paket berhenti diperpanjang | Peran Anda |
|---|---|---|---|
| App Store | Hanya Apple, melalui reportaproblem.apple.com atau lembar refund di dalam aplikasi Anda | Pelanggan membatalkannya di akun Apple mereka | CONSUMPTION_REQUEST, jawab dalam 12 jam jika pelanggan memberi persetujuan |
| Google Play, dalam 48 jam setelah pembelian | Pelanggan bisa memintanya ke Google, atau Anda bisa me-refund-nya | Me-refund pesanan terbaru membatalkan perpanjangan berikutnya | Tidak ada untuk refund mandiri Google |
| Google Play, setelah 48 jam | Anda, dari Play Console atau orders.refund | Me-refund pesanan terbaru membatalkan perpanjangan berikutnya | Anda yang memutuskan |
| Situs web Anda | Anda, melalui pemroses pembayaran Anda | Anda membatalkannya di sisi Anda | Anda yang memutuskan |
Bisakah developer me-refund langganan App Store?
Tidak. Apple menangani setiap refund App Store. Yang bisa Anda lakukan adalah mempersingkat prosesnya. beginRefundRequest dari StoreKit membuka lembar refund Apple di dalam aplikasi Anda, dengan detail pembelian dan daftar alasan yang sudah terisi. Dokumentasi Apple menyebutkan App Store butuh waktu hingga 48 jam untuk menyetujui atau menolak permintaan. Di luar aplikasi, pelanggan masuk ke reportaproblem.apple.com, memilih “Request a refund”, memilih alasan, lalu memilih langganannya.
Me-refund sisi Google Play sendiri
Di Google Play, Anda yang memegang kendali. Di Play Console, buka Order management, pilih pesanan, lalu refund. Bantuan Play Console tegas soal langganan: refund pesanan terbaru dan langganan langsung dihapus, dengan perpanjangan berikutnya dibatalkan. Refund pesanan yang lebih lama dan langganan tetap aktif. Jika Anda mengotomatiskannya, API orders.refund melakukan hal yang sama, menerima flag revoke untuk langsung mengakhiri akses, dan menolak pesanan berusia lebih dari 3 tahun.
Berapa kerugian akibat langganan duplikat
Duplikat itu sejak awal bukan pendapatan yang boleh Anda simpan. Pertanyaan soal uangnya adalah berapa biaya tambahan di luar refund.
Kasus yang bersih
Misalkan pelanggan membayar $9.99 per bulan di App Store dan Google Play selama tiga bulan sebelum menyadarinya. Itu berarti $29.97 tagihan duplikat. Jika Anda me-refund tiga pesanan Google Play sendiri, Anda mengembalikan $29.97 dan masalah selesai hari itu juga. Jika pelanggan justru mengajukan sisi App Store ke Apple, Apple yang menentukan besaran refund dan Anda baru tahu melalui notifikasi server. Bagaimanapun juga, pendapatan satu platform untuk tiga bulan itu kembali ke pelanggan.
Kasus yang mahal
Kerugian sesungguhnya muncul saat pelanggan menyerah pada tim dukungan dan menelepon bank. Chargeback bersifat final begitu bank memutuskan. Google Play memberi Anda satu kesempatan untuk membela diri, yaitu tinjauan chargeback yang harus Anda jawab dalam 24 jam melalui orders.reviewrefund. Untuk pesanan Google Play yang dibuat setelah 3 Agustus 2026, chargeback yang kalah membebani Anda sebesar harga pembelian, dikurangi biaya layanan Play, ditambah biaya chargeback dari bank. Refund $29.97 yang bisa Anda proses dalam satu menit berubah menjadi $29.97 ditambah biaya yang tidak Anda kendalikan.
Biaya yang terus Anda bayar selama itu
Selama kedua paket aktif, backend Anda melayani satu orang tetapi melihat dua langganan. Jika Anda menghitung kursi, menyinkronkan data, atau memanggil API pihak ketiga berbayar per langganan, Anda mungkin membayar dua kali untuk komputasi, penyimpanan, dan panggilan API bagi satu pelanggan. Menggabungkan kedua catatan itu mengakhirinya.

Cara menangani tagihan ganda di tim dukungan
Jawab dengan cepat dan dalam satu pesan. Setiap balasan tambahan memperbesar peluang sengketa di bank.
- Cari kedua pembelian berdasarkan akun pelanggan, bukan berdasarkan alamat email yang mereka pakai untuk menulis.
- Tanyakan paket mana yang ingin mereka pertahankan. Biasanya paket di perangkat yang mereka pakai sekarang.
- Jika duplikatnya ada di Google Play atau situs web Anda, refund sendiri dan beri tahu mereka bahwa refund sudah diproses.
- Jika duplikatnya ada di App Store, arahkan mereka ke reportaproblem.apple.com, atau ke tombol refund di aplikasi Anda jika sudah ada, dan minta mereka membatalkannya di pengaturan akun Apple mereka.
- Jika Apple kemudian mengirim CONSUMPTION_REQUEST dan pelanggan memberi persetujuan, jawab dalam 12 jam dengan data penggunaan yang akurat. Paket duplikat yang tidak pernah dipakai mudah disetujui Apple.
Cara mencegah tagihan kedua sebelum terjadi
Pencegahan lebih murah daripada refund apa pun, dan alatnya sudah tersedia di kedua toko.
Kaitkan setiap pembelian dengan ID akun Anda
Di iOS, buat UUID untuk setiap akun dan kirimkan sebagai opsi pembelian appAccountToken. Apple mengembalikan nilai yang sama di transaksi dan di informasi perpanjangan langganan. Jika pembelian terjadi di luar aplikasi Anda, endpoint Set App Account Token memungkinkan Anda memasang atau memperbarui token belakangan. Di Android, kirimkan ID akun yang di-hash dengan panjang maksimal 64 karakter ke setObfuscatedAccountId, jangan pernah data pribadi mentah.
Periksa hak akses sebelum menampilkan paywall
Sebelum paywall muncul, tanyakan ke server Anda sendiri apakah akun yang sedang masuk sudah memiliki paket aktif dari platform mana pun. Tampilkan ajakan masuk terlebih dahulu, lalu tampilkan paywall hanya untuk akun tanpa paket aktif.
Pantau dua paket aktif pada satu akun
Jalankan pemeriksaan harian untuk akun yang memiliki lebih dari satu langganan aktif di berbagai toko. Menemukannya di minggu pertama berarti refund satu bulan, bukan tiga bulan, dan email singkat, bukan chargeback.
RefundHalt melacak langganan App Store dan Google Play berdasarkan ID akun Anda sendiri, sehingga pelanggan yang membayar dua kali terlihat sebagai satu orang dengan dua paket sebelum bank mereka menyadarinya.
Pertanyaan yang sering diajukan
- Mengapa pelanggan ditagih dua kali untuk langganan yang sama?
- Biasanya karena mereka membelinya di dua platform, misalnya App Store dan Google Play, atau di sebuah toko dan di situs web Anda. Setiap toko menagih langganannya sendiri dan tidak tahu tentang yang lain, sehingga keduanya terus diperpanjang sampai salah satunya dibatalkan.
- Bisakah saya me-refund langganan App Store untuk pelanggan?
- Tidak. Hanya Apple yang bisa me-refund pembelian App Store. Anda bisa membuka lembar refund Apple di dalam aplikasi dengan beginRefundRequest dari StoreKit, atau mengarahkan pelanggan ke reportaproblem.apple.com. Menurut Apple, persetujuan atau penolakan permintaan memakan waktu hingga 48 jam.
- Bagaimana cara me-refund langganan Google Play yang duplikat?
- Refund pesanan dari Order management di Play Console, atau panggil API orders.refund. Me-refund pesanan terbaru langsung menghapus langganan dan membatalkan perpanjangan berikutnya. API ini tidak bisa me-refund pesanan berusia lebih dari 3 tahun.
- Apakah me-refund langganan juga membatalkannya?
- Di Google Play, me-refund pesanan terbaru membatalkan perpanjangan berikutnya, tetapi me-refund pesanan yang lebih lama membuat langganan tetap aktif. Di App Store, refund adalah keputusan Apple dan pelanggan membatalkan langganan dari akun Apple mereka.
- Bagaimana cara mencegah pengguna berlangganan dua kali di iOS dan Android?
- Pasang ID akun Anda sendiri pada setiap pembelian, dengan appAccountToken di Apple dan ID akun yang disamarkan di Google Play. Lalu periksa server Anda untuk paket aktif di platform mana pun sebelum menampilkan paywall, dan minta pengguna masuk terlebih dahulu.
Sumber dan bacaan lanjutan
- Apple Support: Request a refund for apps or content that you bought from Apple
- Apple Developer: beginRefundRequest(in:)
- Apple Developer: Send Consumption Information
- Apple Developer: appAccountToken
- Play Console Help: Manage your app's orders and issue refunds
- Google Play Developer API: orders.refund
- 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
Jika aplikasi Anda dihapus dari Google Play atau App Store, refund tetap bisa dipotong dari pembayaran Anda
Aplikasi yang dihapus dari Google Play atau App Store berhenti menghasilkan pendapatan, tetapi perjanjian toko tetap membebankan refund kepada Anda dan mengizinkan Apple dan Google menahan pembayaran Anda. Berikut isi setiap perjanjian, apa yang terjadi pada pelanggan, dan berapa biaya sebuah takedown.
Menghapus akun aplikasi tidak membatalkan langganan, dan permintaan refund yang menyusul tetap bisa sampai ke Anda
Apple dan Google Play mewajibkan opsi penghapusan akun aplikasi, tetapi menghapus akun tidak menghentikan penagihan di toko mana pun. Ini aturan tiap toko, mengapa akun yang terhapus bisa membuat Anda tak punya jawaban untuk CONSUMPTION_REQUEST atau peninjauan chargeback, dan data apa yang perlu disimpan.