Semua artikel
Deep diveWaktu baca 9 menit

Setiap pengembalian dana upgrade langganan adalah keputusan toko, bukan keputusan Anda, dan uangnya langsung keluar dari pendapatan Anda

Ketika pelanggan pindah ke tingkat yang lebih tinggi, toko mengeluarkan pengembalian dana upgrade langganan untuk hari yang belum terpakai pada paket lama, dan itu otomatis mengurangi pendapatan Anda. Berikut cara kerja pengembalian dana upgrade di App Store dan Google Play, serta alasan Apple menyembunyikan jumlahnya dari server Anda.

Tuas kuningan didorong ke posisi yang lebih tinggi sementara koin-koin meluncur jatuh dari tepi meja ke dalam bayangan, menggambarkan pengembalian dana upgrade langganan yang keluar dari pendapatan Anda

Poin utama

  • Pengembalian dana upgrade langganan bersifat otomatis. Ketika pelanggan pindah ke tingkat yang lebih tinggi di tengah siklus, toko mengkredit atau mengembalikan dana untuk hari yang belum terpakai pada paket lama tanpa bertanya kepada Anda, dan uangnya keluar dari pendapatan yang sudah Anda catat.
  • Di App Store, upgrade langsung berlaku dan Apple mengembalikan jumlah prorata dari langganan asli. Downgrade menunggu hingga tanggal perpanjangan berikutnya dan tidak mengembalikan apa pun.
  • Apple tidak mengirimkan jumlah pengembalian dana upgrade ke server Anda. Transaksi upgrade ditandai isUpgraded, tetapi kolom harga tetap menampilkan harga penuh tingkat baru, sehingga pendapatan yang Anda hitung dari App Store Server Notifications menjadi terlalu tinggi.
  • Laporan keuangan App Store Connect adalah satu-satunya tempat pengembalian dana upgrade prorata dicatat. Staf Apple mengatakan jumlahnya tidak tersedia melalui App Store Server API, Notifications, atau StoreKit.
  • Google Play tidak mengembalikan uang ke kartu saat upgrade. Ia mengkredit waktu yang belum terpakai atau menagih selisih harga, dan mana yang terjadi bergantung pada mode penggantian yang Anda tetapkan. Default-nya adalah WITH_TIME_PRORATION.
  • Pengembalian dana upgrade bukanlah permintaan pengembalian dana dari pelanggan. Tidak ada CONSUMPTION_REQUEST dan tidak ada tinjauan chargeback, jadi tidak ada jendela 12 hours atau 24 hours dan tidak ada yang bisa ditolak. Anda merekonsiliasinya, bukan melawannya.
  • Mode penggantian adalah keputusan pendapatan. WITH_TIME_PRORATION memberi pelanggan waktu berbayar tambahan yang Anda sediakan dengan biaya tingkat yang lebih tinggi, sedangkan CHARGE_PRORATED_PRICE menagih selisihnya sekarang, sehingga default yang salah membocorkan margin sedikit demi sedikit, satu upgrade setiap kali.

Seorang pelanggan menekan upgrade, pindah dari tingkat five dollar Anda ke tingkat ten dollar Anda, dan Anda mencatat penjualan yang lebih besar. Pada saat yang sama, toko melakukan hal lain, dan Anda tidak pernah melihatnya. Ia memberi pelanggan itu pengembalian dana upgrade langganan untuk hari-hari yang sudah mereka bayar pada paket lama, dan uang itu keluar dari pendapatan Anda. Tidak ada yang bertanya kepada Anda. Di App Store, Anda bahkan tidak akan menemukan jumlahnya di dalam event yang diterima server Anda.

Ini bukan pengembalian dana yang bisa Anda lawan. Ini bukan Apple CONSUMPTION_REQUEST dan bukan tinjauan chargeback Google Play. Ini adalah prorata, yang tertanam dalam cara kedua toko membiarkan orang mengganti paket, dan ia berjalan sendiri setiap kali pelanggan naik satu tingkat. Berikut apa sebenarnya pengembalian dana upgrade di setiap toko, alasan Apple menyembunyikan jumlahnya dari server Anda, dan berapa biaya dari pengaturan Google Play yang salah.

Apa sebenarnya pengembalian dana upgrade langganan itu

Pengembalian dana upgrade adalah cara toko menyelesaikan hitungan untuk waktu yang pelanggan bayar tetapi tidak akan mereka gunakan. Ini tidak ada kaitannya dengan keluhan, sengketa, atau kebijakan pengembalian dana Anda. Ia terpicu semata-mata oleh mekanisme perubahan paket.

Ini prorata, bukan keluhan pelanggan

Ketika pelanggan pindah ke tingkat yang lebih tinggi di tengah periode penagihan, mereka sudah membayar sampai akhir periode itu dengan harga lama. Toko menutupi bagian yang belum terpakai untuk mereka. Apple mengeluarkan pengembalian dana prorata dari langganan asli. Google Play mengkredit nilai yang belum terpakai ke paket baru. Tidak satu pun melewati alur yang bisa Anda tanggapi, dan tidak satu pun menunggu persetujuan Anda.

Hanya upgrade yang memicunya

Arah perubahan menentukan uangnya. Di App Store, upgrade adalah perpindahan ke produk berperingkat lebih tinggi dalam grup langganan yang sama, dan hanya perpindahan itu yang langsung dan dikembalikan dananya. Downgrade adalah perpindahan ke peringkat yang lebih rendah, dan ia berlaku pada perpanjangan berikutnya tanpa pengembalian dana. Crossgrade adalah perpindahan antar produk pada peringkat yang sama, dan waktunya bergantung pada durasi yang terlibat. Beri produk peringkat yang salah di App Store Connect dan perubahan yang Anda kira upgrade akan berperilaku seperti hal lain.

Perubahan App StoreKapan berlakuApa yang terjadi pada uangnya
Upgrade ke tingkat yang lebih tinggiSegeraApple mengembalikan jumlah prorata dari langganan asli
Downgrade ke tingkat yang lebih rendahPada tanggal perpanjangan berikutnyaTidak ada pengembalian dana, diperpanjang dengan harga lebih rendah
Crossgrade, durasi sama dibayar di mukaSegeraLangganan baru dimulai, layanan berbayar berlanjut
Crossgrade, durasi berbedaPada tanggal perpanjangan berikutnyaTidak ada pengembalian dana di tengah siklus

Mengapa App Store menyembunyikan pengembalian dana upgrade dari server Anda

Inilah bagian yang merusak pelaporan pendapatan. Apple mengeluarkan pengembalian dana upgrade, tetapi tidak pernah memberi tahu server Anda berapa jumlah yang dikembalikannya.

isUpgraded adalah satu-satunya sinyal, dan harganya salah

Transaksi baru datang dengan isUpgraded disetel true, yang memberi tahu Anda bahwa perubahan paket terjadi. Kolom harga pada transaksi itu tetap menampilkan harga tampilan penuh tingkat baru, bukan jumlah yang Apple tarik kembali dari yang lama. Tidak ada App Store Server Notification yang membawa angka pengembalian dana. Dalam kata-kata Apple sendiri di forum pengembang, jumlah pengembalian dana prorata tidak tersedia melalui App Store Server API, Notifications, atau StoreKit, dan pelaporan App Store Connect adalah sumber Anda untuk semua tujuan akuntansi keuangan.

Laporan keuangan adalah satu-satunya catatan yang jujur

Laporan keuangan dan penjualan App Store Connect mencatat pengembalian dana upgrade prorata, karena laporan itulah yang menentukan berapa yang sebenarnya Apple bayarkan kepada Anda. Itu menjadikannya sumber kebenaran untuk setiap pelanggan yang pernah naik tingkat. Bangun akuntansi Anda dari laporan, dan perlakukan event server sebagai sinyal hak akses, bukan pendapatan.

Dua kartu tingkat langganan di atas meja dengan tangan menggeser penanda ke atas menuju kartu yang lebih tinggi sementara koin-koin diangkat dari kartu lama, menggambarkan pengembalian dana upgrade langganan yang keluar dari pendapatan Anda

Berapa biayanya bagi Anda, dalam uang

Pengembalian dana upgrade bukan kesalahan pembulatan. Itu pendapatan nyata, dan di Google Play Anda juga memilih berapa banyak waktu belum terpakai yang Anda berikan.

Pengembalian dana adalah pendapatan yang sudah Anda catat

Ambil seorang pelanggan pada tingkat 9.99 per bulan Anda yang upgrade ke 19.99 pada day 20 dari 30 day cycle. Kira-kira sepertiga bulan belum terpakai, jadi Apple mengembalikan sekitar 3.33 dari 9.99 asli. Anda tidak kehilangan seluruh penjualan. Anda mengembalikan bagian yang pelanggan bayar di muka dan tidak akan mereka gunakan. Yang penting adalah pengembalian itu otomatis dan jatuh pada penjualan lama, sehingga pendapatan yang sudah Anda hitung menyusut setelahnya. Kalikan itu dengan setiap pelanggan yang naik tingkat di tengah siklus dan itu adalah baris yang seharusnya bisa Anda lihat, bukan celah yang Anda temukan di pembayaran.

Di Google Play, mode penggantian adalah tuas biaya yang sebenarnya

Google Play tidak mengembalikan uang ke kartu saat upgrade. Ia menyelesaikan waktu yang belum terpakai dengan salah satu dari beberapa cara, dan Anda memilih yang mana dengan mengoper mode penggantian saat meluncurkan alur pembelian. Pilihan itu menentukan apakah Anda memberi pelanggan waktu berbayar atau menagih selisihnya. Google merekomendasikan CHARGE_PRORATED_PRICE untuk upgrade dan DEFERRED untuk downgrade, tetapi default library adalah WITH_TIME_PRORATION, sehingga alur yang tidak pernah Anda konfigurasikan diam-diam mengkredit waktu.

Mode penggantian Google PlayKapan berlakuApa yang terjadi pada waktu yang belum terpakai
WITH_TIME_PRORATION (default)SegeraDikreditkan sebagai waktu tambahan pada paket baru, tanggal penagihan berikutnya digeser mundur
CHARGE_PRORATED_PRICE (hanya upgrade)SegeraSelisih harga untuk periode tersisa ditagih sekarang, tanggal penagihan tidak berubah
WITHOUT_PRORATIONSegeraTidak ada yang diselesaikan sekarang, harga baru dimulai pada perpanjangan berikutnya
CHARGE_FULL_PRICESegeraHarga penuh paket baru ditagih sekarang, nilai tersisa dibawa alih atau diprorata
DEFERREDPada perpanjangan berikutnyaPaket saat ini berjalan sampai kedaluwarsa, lalu paket baru dimulai

Cara agar pengembalian dana upgrade tidak mengejutkan pembukuan Anda

Anda tidak bisa mematikan prorata, dan Anda pun tidak akan mau, karena itulah yang membuat perubahan paket adil bagi pelanggan. Yang bisa Anda lakukan adalah melihatnya, menghargainya dalam uang, dan memisahkannya dari pengembalian dana yang benar-benar bisa Anda tolak.

Rekonsiliasi upgrade Apple ke laporan keuangan

Karena jumlah pengembalian dana tidak pernah sampai ke server Anda, laporan keuangan dan penjualan App Store Connect adalah satu-satunya tempat pengembalian dana upgrade prorata muncul. Rekonsiliasi pendapatan pelanggan dengan laporan itu setiap periode, dan jangan menghitung pendapatan dari total berjalan Server Notifications. Bendera isUpgraded memberi tahu Anda bahwa perubahan terjadi. Laporan memberi tahu Anda berapa biayanya.

Pilih mode penggantian Google Play dengan sengaja

Oper mode penggantian untuk setiap perubahan paket dengan sengaja. Gunakan CHARGE_PRORATED_PRICE ketika Anda ingin selisih harga ditagih sekarang pada upgrade. Biarkan WITH_TIME_PRORATION terpasang hanya ketika Anda bermaksud memberi pelanggan sisa waktu. Gunakan DEFERRED untuk downgrade agar Anda mempertahankan pendapatan saat ini sampai masa berlaku berakhir. Default adalah sebuah keputusan, dan default yang salah memberikan margin sedikit demi sedikit, satu upgrade setiap kali.

Pisahkan pengembalian dana upgrade dari pengembalian dana yang bisa Anda tolak

Pengembalian dana upgrade bersifat otomatis dan final secara desain. Itu bukan pelanggan yang meminta uang mereka kembali. Pengembalian dana yang benar-benar bisa Anda pengaruhi adalah yang diprakarsai pelanggan, di mana Apple mengirim CONSUMPTION_REQUEST dan memberi Anda 12 hours untuk merespons, dan di mana Google Play membuka tinjauan chargeback melalui orders.reviewrefund dengan jendela 24 hours. Tandai data Anda agar keduanya tidak pernah tercampur. Satu baris Anda rekonsiliasi. Baris lain Anda jawab, dengan waktu berjalan.

Versi singkatnya

Ketika pelanggan meng-upgrade langganan, toko menyelesaikan waktu yang belum terpakai untuk mereka secara otomatis. Apple mengembalikan jumlah prorata dari paket lama seketika dan tidak pernah mengirim angkanya ke server Anda, jadi laporan keuangan App Store Connect adalah satu-satunya catatan yang akurat. Google Play mengkredit waktu atau menagih selisihnya bergantung pada mode penggantian yang Anda tetapkan, dan default memberi pelanggan waktu berbayar yang Anda sediakan dengan biaya sendiri. Tidak ada satu pun yang melewati CONSUMPTION_REQUEST atau tinjauan chargeback, jadi tidak ada yang bisa ditolak. Rekonsiliasi pengembalian dana upgrade, tetapkan mode Google Play Anda dengan sengaja, dan pisahkan dari pengembalian dana yang masih bisa Anda lawan.

Pertanyaan yang sering diajukan

Apakah pengembalian dana upgrade langganan meminta persetujuan saya?
Tidak. Pengembalian dana upgrade langganan bersifat otomatis. Ketika pelanggan pindah ke tingkat yang lebih tinggi di tengah siklus, toko menyelesaikan waktu yang belum terpakai pada paket lama sendiri, tanpa permintaan kepada Anda dan tanpa jendela untuk merespons. Apple mengembalikan jumlah prorata dari langganan asli, dan Google Play mengkredit waktu yang belum terpakai atau menagih selisih harga bergantung pada mode penggantian yang Anda tetapkan.
Mengapa pendapatan App Store saya tidak cocok dengan pembayaran saya setelah upgrade?
Karena Apple tidak mengirimkan jumlah pengembalian dana upgrade ke server Anda. Transaksi upgrade membawa isUpgraded disetel true, tetapi kolom harga tetap menampilkan harga penuh tingkat baru, dan tidak ada App Store Server Notification yang menyertakan pengembalian dana. Pendapatan yang dihitung dari event server menghitung penjualan baru dan melewatkan pengembalian dana pada paket lama, jadi hasilnya terlalu tinggi sampai Anda merekonsiliasinya dengan laporan keuangan App Store Connect.
Apakah Google Play mengembalikan uang ke kartu ketika pelanggan upgrade?
Tidak. Google Play memperlakukan waktu yang belum terpakai sebagai kredit, bukan pengembalian dana tunai. Bergantung pada mode penggantian, ia mengkredit sisa waktu ke paket baru dan menggeser mundur tanggal penagihan berikutnya, atau menagih selisih harga untuk periode tersisa. Mode default adalah WITH_TIME_PRORATION, yang mengkredit waktu.
Bisakah saya menolak pengembalian dana upgrade langganan?
Tidak. Pengembalian dana upgrade bukanlah permintaan pengembalian dana dari pelanggan. Tidak ada CONSUMPTION_REQUEST dari Apple dan tidak ada tinjauan chargeback dari Google Play, jadi tidak ada jendela 12 hours atau 24 hours dan tidak ada yang bisa dikirim. Pengembalian dana upgrade Anda rekonsiliasi. Anda hanya menolak pengembalian dana dan chargeback yang diprakarsai pelanggan.
Apakah downgrade memberi pelanggan pengembalian dana?
Tidak. Di App Store, downgrade berlaku pada tanggal perpanjangan berikutnya dan tidak mengembalikan apa pun, karena pelanggan tetap memegang tingkat yang lebih tinggi sampai periode berbayar berakhir. Di Google Play, cara yang direkomendasikan untuk menangani downgrade adalah mode penggantian DEFERRED, yang mempertahankan paket saat ini sampai kedaluwarsa lalu memulai yang lebih rendah.
Mode penggantian Google Play mana yang harus saya gunakan untuk upgrade?
Google merekomendasikan CHARGE_PRORATED_PRICE untuk upgrade, yang menagih selisih harga untuk periode tersisa seketika dan membiarkan tanggal penagihan tidak berubah. WITH_TIME_PRORATION default justru mengkredit waktu yang belum terpakai sebagai layanan tambahan pada tingkat yang lebih tinggi, jadi gunakan hanya ketika Anda berniat memberikan waktu itu.

Sumber dan bacaan lanjutan

RefundHalt

Autopilot refund untuk App Store dan Google Play

Baca selanjutnya

Permintaan refund berikutnya sudah menuju kepada Anda.

Siapkan RefundHalt dalam waktu yang dibutuhkan untuk membaca satu lagi email dukungan tentang refund yang tidak sempat Anda sengketakan.