Pengembalian dana Family Sharing membalikkan satu pembayaran tetapi bisa membuat lima orang lain tetap memakai aplikasi Anda, dan hanya server Anda yang dapat memutus akses mereka
Pengembalian dana Family Sharing membalikkan satu pembayaran tetapi bisa membuat hingga lima anggota keluarga tetap menikmati fitur berbayar Anda. Apple mengirim REVOKE dan mengharapkan server Anda mengakhiri akses tersebut. Berikut cara kerja pengembalian dana berbagi keluarga dan berapa biayanya.

Poin utama
- Apple menandai setiap transaksi berbagi keluarga dengan inAppOwnershipType bernilai FAMILY_SHARED dan setiap pembelian langsung dengan PURCHASED. Kolom ini hanya muncul pada pembelian dalam aplikasi non-konsumsi dan langganan perpanjangan otomatis, dua jenis produk yang didukung Family Sharing.
- Satu pembelian yang bisa dibagikan ke keluarga dapat memberi hak kepada hingga enam orang, pembeli ditambah lima anggota keluarga, sehingga satu pembayaran bisa mendorong komputasi, panggilan API, penyimpanan, dan pembayaran senilai enam orang yang dibelanjakan produk Anda untuk melayaninya.
- Ketika Apple mengembalikan dana kepada orang yang membeli pembelian bersama, ia mengirim REVOKE App Store Server Notification, dan mencabut akses tersebut, termasuk setiap salinan berbagi keluarganya, adalah tugas server Anda. Apple mengembalikan uangnya tetapi tidak mengakhiri hak Anda untuk Anda.
- Transaksi FAMILY_SHARED dalam sebuah REVOKE membawa revocationDate hanya ketika pencabutan disebabkan oleh pengembalian dana kepada pembeli. Jika anggota keluarga sekadar meninggalkan grup, REVOKE yang sama tiba tanpa revocationDate, menurut insinyur Apple sendiri.
- Apple menunda pembelian berbagi keluarga yang baru sekitar satu jam sebelum sampai ke anggota keluarga, secara sengaja, agar pembeli punya waktu menonaktifkan berbagi sebelum orang lain mendapatkan akses.
- Mengaktifkan Family Sharing pada pembelian dalam aplikasi di App Store Connect tidak bisa dibatalkan, jadi begitu sebuah produk bisa dibagikan, ia tetap bisa dibagikan, dan penanganan pengembalian dana Anda harus memperhitungkan transaksi FAMILY_SHARED sejak saat itu.
- Produk konsumsi tidak pernah dibagikan ke keluarga, jadi anggota keluarga tidak pernah memicu CONSUMPTION_REQUEST atau muncul dalam pelaporan konsumsi Anda. Pengembalian dana Family Sharing hanya pernah melibatkan produk non-konsumsi dan langganan perpanjangan otomatis.
Satu pembelian dalam grup Family Sharing bisa memberikan aplikasi Anda kepada enam orang. Orang yang membayar adalah salah satunya. Lima lainnya tidak pernah membuka dompet mereka, dan Apple tetap mengharapkan aplikasi Anda berfungsi untuk mereka semua. Itulah kesepakatan yang Anda pilih begitu Anda mengaktifkan Family Sharing untuk pembelian dalam aplikasi. Itu juga sebabnya pengembalian dana Family Sharing adalah makhluk yang berbeda dari yang biasa. Ketika pembeli mendapatkan uangnya kembali, penjualan dibalik untuk satu akun, tetapi akses yang Anda berikan kepada sebanyak lima orang lain tidak mati dengan sendirinya. Server Anda yang harus melakukannya, dan jika ditulis untuk hanya mengawasi pembeli, ia tidak akan melakukannya.
Berikut gambaran lengkapnya dalam satu tempat. Ini menjelaskan bagaimana Apple menandai pembelian bersama, satu kolom yang membedakan pembeli dari keluarga, tepatnya kapan Apple mengirimi Anda REVOKE dan cara membacanya, detail tenang yang memisahkan pengembalian dana dari seseorang yang sekadar meninggalkan keluarga, dan berapa biaya sebenarnya pengembalian dana bersama setelah Anda menghitung komputasi yang sudah Anda belanjakan untuk orang-orang yang tidak pernah membayar Anda.
Apa yang diberikan Family Sharing, dan kepada berapa banyak orang
Aktifkan Family Sharing untuk sebuah produk dan Anda mengubah siapa pelanggan yang membayar Anda. Grup keluarga di Apple bisa menampung hingga enam orang, satu penyelenggara dan hingga lima anggota. Ketika siapa pun dalam grup membeli produk yang bisa dibagikan ke keluarga, semua orang dalam grup mendapatkan aksesnya. Mereka tidak membayar. Mereka tidak muncul dalam pendapatan Anda. Mereka hanya muncul di aplikasi Anda dengan hak yang sah, karena Apple menerbitkan untuk masing-masing dari mereka sebuah transaksi yang menunjuk ke pembelian yang sama.
Hanya dua jenis produk yang bisa dibagikan, dan konsumsi bukan salah satunya
Family Sharing mencakup tepat dua jenis pembelian dalam aplikasi: non-konsumsi dan langganan perpanjangan otomatis. Produk konsumsi, produk koin-dan-kredit, tidak pernah dibagikan, itulah sebabnya anggota keluarga tidak pernah memicu CONSUMPTION_REQUEST atau muncul dalam pelaporan konsumsi Anda. Jika aplikasi Anda hanya menjual produk konsumsi, pengembalian dana Family Sharing bukan masalah Anda. Jika Anda menjual buka kunci seumur hidup atau paket berulang, itu masalah Anda.
Kolom yang membedakan pembeli dari penerima manfaat
Setiap transaksi yang diterbitkan Apple membawa inAppOwnershipType. Ia memiliki dua nilai. PURCHASED berarti akun ini membayar produk tersebut dan bisa mengelolanya, termasuk membatalkannya atau meminta pengembalian dana. FAMILY_SHARED berarti akun ini adalah anggota keluarga yang memiliki akses melalui pembelian orang lain. Keduanya memberi hak kepada orang tersebut untuk memakai produk Anda. Hanya satu dari mereka yang membayar. Kolom ini ada pada transaksi StoreKit, tanda terima, dan App Store Server API, sehingga Anda bisa membacanya di mana pun Anda sudah memeriksa hak.
| inAppOwnershipType | Siapa dia | Bisa mengelola atau mengembalikan dana pembelian | Apakah mereka membayar Anda |
|---|---|---|---|
| PURCHASED | Akun yang membeli produk | Ya | Ya |
| FAMILY_SHARED | Anggota keluarga dengan akses berbagi | Tidak | Tidak |
Bagaimana pengembalian dana Family Sharing sampai ke server Anda
Pengembalian dana atas pembelian bersama dimulai dengan cara yang sama seperti pengembalian dana Apple mana pun. Pembeli, satu-satunya orang yang bisa, meminta uangnya kembali kepada Apple. Apple memutuskan. Jika Apple mengabulkannya, pembelian pembeli dibalik dan Apple mengirim server Anda sebuah REVOKE App Store Server Notification. Baik V1 maupun V2 notifikasi tersebut membawanya. REVOKE adalah satu sinyal Anda bahwa hak di baliknya, dan setiap salinan berbagi keluarga darinya, kini batal.
Jangan cabut satu transaksi, baca ulang seluruh riwayatnya
Panduan Apple tentang REVOKE tegas: jangan memperlakukannya sebagai satu sakelar tunggal. Ketika Anda menerimanya, telusuri seluruh riwayat transaksi pelanggan dan bangun ulang hak mereka dari awal, karena seseorang bisa memegang lebih dari satu transaksi yang memberikan produk yang sama atau berbeda. Cabut hanya transaksi yang disebutkan dalam notifikasi dan Anda bisa saja meninggalkan anggota keluarga yang sudah dikembalikan dananya dengan akses aktif, atau memutus seseorang yang masih memiliki hak kedua yang sah. Bangun kembali gambaran lengkap setiap kali.

Satu detail yang memisahkan pengembalian dana dari perpecahan keluarga
Inilah jebakan yang menghabiskan satu sore debugging bagi tim. Sebuah REVOKE bisa berarti dua hal yang sangat berbeda untuk transaksi FAMILY_SHARED, dan cara Anda membedakannya adalah sebuah kolom yang terkadang sekadar tidak ada. Ketika pembeli mendapatkan pengembalian dana, transaksi FAMILY_SHARED datang dengan revocationDate. Ketika anggota keluarga sekadar meninggalkan grup, jenis REVOKE yang sama tiba tanpa revocationDate sama sekali. Insinyur perdagangan Apple telah mengatakannya secara langsung di forum pengembang. Bagaimanapun Anda mencabut aksesnya, tetapi hanya yang bertanggal yang merupakan pengembalian dana, dan hanya pengembalian dana itulah yang juga membalik sebuah pembayaran.
Berapa biaya sebenarnya pengembalian dana bersama bagi Anda
Telusuri uangnya, karena di sinilah Family Sharing diam-diam mengubah hitungannya. Pengembalian dana biasa membalik satu penjualan. Apple mengembalikan harga kepada pembeli dan menyerahkan kembali komisinya, jadi sisi toko hampir impas. Yang tidak pernah kembali adalah apa yang sudah Anda belanjakan untuk mengirimkan produk itu. Dengan Family Sharing, Anda tidak membelanjakannya sekali. Anda membelanjakannya untuk sebanyak enam orang. Pembeli dan hingga lima anggota keluarga masing-masing menjalankan komputasi Anda, memanggil API Anda, mengisi penyimpanan Anda, dan menarik pembayaran apa pun yang Anda danai, semuanya atas dasar satu pembayaran.
Sekarang pembeli mengembalikan dananya. Satu pembayaran itu dibalik. Akses setiap anggota keluarga seharusnya berakhir pada saat yang sama, karena hal yang membenarkan melayani mereka, satu pembelian berbayar, sudah tiada. Jika server Anda hanya mencabut transaksi PURCHASED dan membiarkan transaksi FAMILY_SHARED tetap aktif, hingga lima orang tetap menikmati fitur berbayar Anda secara gratis, dan Anda terus membayar untuk melayani mereka, tanpa ada yang tersisa dalam sistem untuk ditagih. Itu bukan kesalahan pembulatan. Itu lima kali biaya pengiriman dari penjualan yang baru saja Anda kembalikan.
| Apa yang Anda cabut pada pengembalian dana bersama | Siapa yang kehilangan akses | Apa yang terus Anda bayar |
|---|---|---|
| Seluruh riwayat transaksi | Pembeli dan semua anggota keluarga | Tidak ada, akses berakhir untuk semua orang |
| Hanya transaksi PURCHASED | Pembeli saja | Hingga lima anggota keluarga, masih di komputasi, API, penyimpanan, dan pembayaran Anda |
| Tidak ada, karena Anda melewatkan REVOKE | Tidak ada | Pembeli dan hingga lima anggota, semuanya gratis |
Langganan membuat kebocorannya berulang
Untuk produk non-konsumsi, anggota keluarga yang tidak dicabut adalah kerugian satu kali yang berjalan sampai Anda menyadarinya. Untuk langganan perpanjangan otomatis, keadaannya lebih buruk, karena haknya sudah berulang. Pengembalian dana atas pesanan langganan seharusnya mengakhiri berbagi untuk seluruh grup, tetapi anggota keluarga yang dibiarkan aktif tetap memegang tingkat berbayar setiap periode penagihan yang gagal Anda tutup. Perbaikannya sama, bangun kembali hak dari seluruh riwayat pada setiap REVOKE, tetapi biaya melewatkannya bertumpuk.
Melakukannya dengan benar, dan mengujinya sebelum pengembalian dana nyata melakukannya
Tidak ada yang eksotis untuk dibangun di sini. Seluruh pekerjaannya adalah mengaitkan akses pada hak, bukan pada pembeli, dan membangun kembali akses itu pada setiap REVOKE.
- Simpan akses berdasarkan transaksi dan
inAppOwnershipType-nya, bukan berdasarkan satu akun pembeli, sehingga transaksiFAMILY_SHAREDmemberikan akses sendiri dan bisa dicabut sendiri. - Pada notifikasi REVOKE apa pun, baca ulang seluruh riwayat transaksi pelanggan dan hitung ulang hak, alih-alih mematikan satu transaksi yang disebutkan.
- Perlakukan transaksi
FAMILY_SHAREDdenganrevocationDatesebagai pengembalian dana dan akhiri akses anggota tersebut. Perlakukan yang tanparevocationDatesebagai kepergian keluarga dan akhiri juga. - Jangan terburu-buru menyajikan pembelian bersama yang baru. Apple menahannya sekitar satu jam agar pembeli bisa membatalkan, jadi hormati transaksi yang benar-benar diterbitkan Apple alih-alih memberikan akses saat ketukan beli.
- Latih dulu. Alat Testing Family Sharing dari Apple memungkinkan Anda menyimulasikan transaksi bersama, dan pengembalian dana sandbox memicu REVOKE yang sama yang akan diterima server produksi Anda.
Lakukan itu dan pengembalian dana Family Sharing menjadi bukan peristiwa apa-apa. Pembeli mendapatkan uangnya, seluruh grup kehilangan akses dalam ketukan yang sama, dan Anda berhenti membayar untuk melayani orang-orang yang tidak pernah membayar Anda.
Pertanyaan yang sering diajukan
- Apa itu inAppOwnershipType dan apa saja nilainya?
- inAppOwnershipType adalah kolom yang Apple sematkan pada setiap transaksi pembelian dalam aplikasi, dengan dua nilai: PURCHASED untuk akun yang membeli produk, dan FAMILY_SHARED untuk anggota keluarga yang memiliki akses melalui pembelian orang lain. Ia hanya muncul pada produk non-konsumsi dan langganan perpanjangan otomatis, jenis produk yang didukung Family Sharing.
- Apakah Apple mencabut akses anggota keluarga secara otomatis ketika pembeli mendapatkan pengembalian dana?
- Tidak. Apple membalik pembayaran pembeli dan mengirim server Anda sebuah REVOKE App Store Server Notification, tetapi mencabut hak tersebut, termasuk setiap salinan berbagi keluarganya, adalah tugas server Anda. Jika Anda tidak menindaklanjuti REVOKE, anggota keluarga tetap memiliki akses setelah pengembalian dana.
- Bagaimana cara saya membedakan pengembalian dana Family Sharing dari anggota keluarga yang meninggalkan grup?
- Periksa adanya revocationDate pada transaksi FAMILY_SHARED. Ketika pencabutan disebabkan oleh pengembalian dana kepada pembeli, transaksi membawa revocationDate. Ketika anggota keluarga sekadar meninggalkan grup, REVOKE tiba tanpa revocationDate. Kedua kasus mengakhiri hak, tetapi hanya yang bertanggal yang membalik sebuah pembayaran.
- Berapa banyak orang yang bisa memakai satu pembelian berbagi keluarga?
- Hingga enam, penyelenggara ditambah sebanyak lima anggota keluarga. Satu pembayaran karena itu bisa memberi hak kepada enam orang atas produk Anda, itulah sebabnya pengembalian dana bersama bisa meninggalkan hingga lima orang pada fitur berbayar Anda jika Anda hanya mencabut transaksi pembeli.
- Bisakah saya menonaktifkan Family Sharing untuk pembelian dalam aplikasi setelah mengaktifkannya?
- Tidak. Mengaktifkan Family Sharing pada pembelian dalam aplikasi di App Store Connect tidak bisa dibatalkan. Begitu sebuah produk bisa dibagikan, ia tetap bisa dibagikan, jadi penanganan pengembalian dana Anda harus memperhitungkan transaksi FAMILY_SHARED sejak saat itu.
- Apakah pembelian produk konsumsi dibagikan dengan keluarga?
- Tidak. Family Sharing hanya mencakup produk non-konsumsi dan langganan perpanjangan otomatis. Produk konsumsi tidak pernah dibagikan, jadi anggota keluarga tidak pernah memicu CONSUMPTION_REQUEST atau muncul dalam pelaporan konsumsi Anda.
Sumber dan bacaan lanjutan
- Apple Developer: inAppOwnershipType (App Store Server API)
- Apple Developer Tech Talks: Explore Family Sharing for In-App Purchases
- Apple Developer: Supporting Family Sharing in your app
- Apple Developer: Testing Family Sharing
- App Store Connect Help: Turn on Family Sharing for in-app purchases
- Apple Developer Forums: family sharing REVOKE server-to-server notifications
- Apple Support: How Family Sharing works
RefundHalt
Autopilot refund untuk App Store dan Google Play
Baca selanjutnya
Penanganan refund rusak dengan diam-diam, jadi uji refund pembelian dalam aplikasi di sandbox sebelum pelanggan asli melakukannya
Penanganan refund Anda hanya berjalan setelah pelanggan sudah pergi, jadi bug di dalamnya tetap tak terlihat sampai merugikan uang sungguhan. Kedua toko memungkinkan Anda memicu refund di lingkungan uji terlebih dahulu. Berikut cara menguji refund pembelian dalam aplikasi di App Store dan Google Play sebelum satu pun menjadi nyata.
Biaya sebuah refund untuk aplikasi Anda lebih besar daripada harga yang Anda kembalikan
Harga yang direfund adalah baris terkecil pada tagihan. Sebuah refund juga membalikkan komisi toko, jadi Anda kehilangan bagian Anda, dan komputasi, panggilan API, penyimpanan, serta pembayaran yang sudah Anda keluarkan pun hilang. Sebuah chargeback Google Play setelah 3 Agustus 2026 menambahkan biaya bank di atasnya. Inilah tagihan lengkapnya.