Lompat ke Konten

Membuat Langganan Auto-Renewable iOS

Langganan otomatis yang dapat diperbarui memberikan akses berulang ke konten, layanan, atau fitur premium di aplikasi iOS Anda. Panduan ini akan membawa Anda melalui pembuatan langganan di App Store Connect.

Langganan otomatis yang dapat diperbarui secara otomatis diperbarui pada akhir setiap periode pembayaran hingga pengguna membatalkan. Mereka sangat cocok untuk:

  • Konten dan fitur premium
  • Pengalaman tanpa iklan
  • Penyimpanan awan dan sinkronisasi
  • Jasa Streaming
  • Alat dan Utilitas Profesional

Sebelum membuat langganan, Anda harus:

  1. Buat kelompok langganan untuk mengorganisir langganan
  2. Mempunyai keanggotaan aktif Program Pengembang Apple
  3. Menyelesaikan informasi perbankan dan pajak di App Store Connect
  1. Navigasi ke Langganan

    In App Store Connect, pilih aplikasi Anda dan pergi ke Monetize > Langganan.

    Pilih kelompok langganan Anda atau buat yang baru jika diperlukan.

    Navigasikan ke langganan

  2. Buat Langganan Baru

    Klik ikon + di samping kelompok langganan Anda untuk menambahkan langganan baru.

  3. Masukkan Informasi Dasar

    Nama Referensi: Nama deskriptif untuk penggunaan internal Anda (tidak ditampilkan kepada pelanggan)

    • Contoh: “Langganan Bulanan Premium”, “Langganan Tahunan Ultimate”, “Rencana Dasar”

    ID Produk: Identifikasi unik untuk langganan ini (tidak dapat diubah kemudian)

    • Format: com.yourcompany.yourapp.premium_monthly
    • Pilih nama yang deskriptif, huruf kecil dengan garis bawah
    • Diperlukan untuk mengonfigurasi plugin native-purchases

    Masukkan detail langganan

  4. Konfigurasi Durasi

    Pilih durasi langganan dari opsi yang tersedia:

    • 1 minggu
    • 1 bulan
    • 2 bulan
    • 3 bulan
    • 6 bulan
    • 1 tahun

    Durasi menentukan berapa sering pengguna dikenakan tagihan.

  5. Set Up Harga

    Klik Tambahkan Harga Langganan untuk mengatur harga:

    Wilayah Dasar: Pilih pasar utama Anda (biasanya negara Anda)

    Harga: Tentukan harga langganan

    • Apple secara otomatis mengonversi ke mata uang lainnya
    • Pilih dari tingkat harga Apple
    • Perhatikan nilai yang dipahami dan tarif pasar

    Konfigurasi harga

  6. Bagikan Keluarga (Opsional)

    Putuskan apakah ingin mengaktifkan Bagikan Keluarga, yang memungkinkan hingga 6 anggota keluarga untuk mengakses langganan.

    Aktifkan jika:

    • Konten sesuai untuk penggunaan keluarga
    • Anda ingin meningkatkan nilai proporsional
    • Model bisnis Anda mendukungnya

    Jangan aktifkan jika:

    • Penggunaan ini hanya untuk individu
    • Konten disesuaikan dengan pengguna
    • Anda ingin meningkatkan pendapatan per pengguna
  7. Tambahkan Lokalisasi

    Tambahkan informasi tampilan langganan di semua bahasa yang digunakan oleh aplikasi Anda:

    Nama Langganan: Nama yang ditampilkan kepada pelanggan (misalnya, “Premium Bulanan”)

    Deskripsi: Deskripsi singkat tentang apa yang termasuk dalam langganan

    • Jaga agar singkat dan fokus pada manfaat
    • Sebutkan fitur utama
    • Tunjukkan proporsi nilai

    Tambahkan lokalisasi

  8. Gambar Promosi App Store (Opsional)

    Unggah gambar promosi untuk langganan ini (312x390 piksel):

    • Tampil di halaman langganan App Store
    • Harus sesuai dengan desain aplikasi Anda
    • Termasuk nama langganan untuk kejelasan
  9. Simpan dan Kirim

    Klik Simpan untuk membuat langganan.

    Untuk Langganan Pertama:

    • Harus disertakan dengan versi aplikasi baru
    • Termasuk dalam pengajuan App Store berikutnya
    • Tidak dapat disubmit secara independen

    Untuk Langganan Selanjutnya:

    • Dapat disubmit langsung dari halaman Langganan
    • Tidak memerlukan versi aplikasi baru
    • Tersedia setelah langganan pertama disetujui

Langganan Anda akan memiliki salah satu status ini:

StatusDeskripsiBisa Dites?
Metadata yang HilangPengaturan Tidak LengkapYa (sandbox)
Siap DikirimSudah Selesai tapi Belum DikirimYa (sandbox)
Menunggu UlasanDikirim ke AppleYa (sandbox)
Dalam TinjauanSedang ditinjau oleh AppleYa (sandbox)
DisetujuiTersedia untuk dibeliYa
DitolakPerlu perubahanYa (sandbox)

Setelah dibuat, referensikan langganan di aplikasi Anda menggunakan ID produk:

import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Fetch subscription products direct from StoreKit
const { products } = await NativePurchases.getProducts({
productIdentifiers: [
'com.yourcompany.yourapp.premium_monthly',
'com.yourcompany.yourapp.premium_annual',
],
productType: PURCHASE_TYPE.SUBS,
});
products.forEach((product) => {
console.log(`${product.title}: ${product.priceString}`);
console.log(`Duration: ${product.subscriptionPeriod}`);
console.log(`Description: ${product.description}`);
});
// Purchase a subscription (StoreKit 2 automatically handles intro pricing and offers)
try {
const transaction = await NativePurchases.purchaseProduct({
productIdentifier: 'com.yourcompany.yourapp.premium_monthly',
productType: PURCHASE_TYPE.SUBS,
});
console.log('Transaction ID:', transaction.transactionId);
// StoreKit receipts are included on iOS for server-side validation
await sendReceiptToBackend(transaction.receipt);
} catch (error) {
console.error('Purchase failed:', error);
}
// Check subscription status using the store's data
const { purchases } = await NativePurchases.getPurchases({
productType: PURCHASE_TYPE.SUBS,
});
const premium = purchases.find(
(purchase) => purchase.productIdentifier === 'com.yourcompany.yourapp.premium_monthly',
);
if (premium?.isActive) {
console.log('Expires:', premium.expirationDate);
console.log('Will renew:', premium.willCancel === false);
console.log('Store state:', premium.subscriptionState);
unlockPremiumFeatures();
} else {
showPaywall();
}

Langganan Bulanan dengan Komitmen 12 Bulan

Judul Bagian “Langganan Bulanan dengan Komitmen 12 Bulan”

Jika langganan App Store Connect Anda dikonfigurasi dengan rencana pembayaran bulanan dan komitmen 12 bulan, StoreKit dapat mengembalikan istilah harga tambahan untuk produk tersebut. Gunakan istilah-istilah tersebut untuk menampilkan biaya bulanan, harga komitmen total, dan periode komitmen penuh sebelum pembelian.

const yearlyProduct = products.find(
(product) => product.identifier === 'com.yourcompany.yourapp.premium_annual',
);
const monthlyCommitment = yearlyProduct?.pricingTerms?.find(
(term) => term.billingPlanType === 'monthly',
);
if (yearlyProduct && monthlyCommitment) {
console.log('Monthly charge:', monthlyCommitment.billingDisplayPrice);
console.log('Total commitment:', monthlyCommitment.commitmentInfo?.priceString);
await NativePurchases.purchaseProduct({
productIdentifier: yearlyProduct.identifier,
productType: PURCHASE_TYPE.SUBS,
billingPlanType: 'monthly',
});
}

Untuk alur pembayaran penuh dan hak akses, lihat Rencana Pembayaran Bulanan iOS dengan Komitmen.

  • Rencana Bulanan: Batasan masuk yang lebih rendah, membentuk kebiasaan
  • Rencana Tahunan: Nilai yang lebih baik, LTV yang lebih tinggi, pengeluaran yang lebih rendah
  • Berbagai Tingkat: Dasar, Premium, Ultimate untuk segmen pengguna yang berbeda
  • Analisis Kompetitor: Mencari aplikasi serupa harga
  • Gunakan nama yang konsisten: company.app.tier_duration
  • Termasuk tingkat dan durasi dalam ID: premium_monthly, ultimate_annual
  • Hindari mengubah ID produk (mereka permanen)
  • Dokumentasikan semua ID produk untuk tim Anda
  • Aktifkan untuk aplikasi keluarga (permainan, pendidikan, hiburan)
  • Pertimbangkan dampak pada pendapatan
  • Uji perilaku berbagi secara menyeluruh
  • Komunikasikan kemampuan berbagi dalam pemasaran
  • Terjemahkan semua nama dan deskripsi langganan
  • Perhatikan perbedaan harga regional
  • Uji tampilan di semua bahasa yang didukung
  • Gunakan bahasa pemasaran yang sesuai dengan budaya
  • Tetapkan gaya visual yang konsisten
  • Termasuk nama langganan dan manfaat utama
  • Perbarui untuk promosi musiman
  • Sesuaikan dengan bahasa desain aplikasi secara keseluruhan
Free App + Premium Subscription
- Basic: Free (limited features)
- Premium Monthly: $4.99
- Premium Annual: $39.99 (save 33%)
- Basic Monthly: $4.99
- Premium Monthly: $9.99
- Ultimate Monthly: $19.99
- Basic Annual: $49.99
- Premium Annual: $99.99
- Ultimate Annual: $199.99
- Credit packs (consumable)
- Monthly subscription (unlimited credits)
- Annual subscription (unlimited + bonus features)

Langganan tidak terbuka di aplikasi:

  • Pastikan ID produk sesuai dengan persis (sensitif kasus)
  • Periksa apakah langganan masuk dalam kelompok langganan
  • Pastikan identifikasi paket sesuai dengan App Store Connect
  • Tunggu 2-3 jam setelah membuat produk

Tidak dapat mengajukan langganan:

  • Lengkapi semua bidang yang wajib (nama, deskripsi, harga)
  • Tambahkan setidaknya satu lokal
  • Pastikan informasi perbankan/pajak disetujui
  • Periksa apakah langganan pertama (memerlukan versi aplikasi)

Tombol Family Sharing dinonaktifkan:

  • Sudah diaktifkan (tidak dapat dinonaktifkan)
  • Periksa dalam detail langganan
  • Jika terjebak, hubungi dukungan Apple

Tingkat harga tidak tersedia:

  • Mungkin terbatas di beberapa wilayah
  • Pilih tingkat alternatif
  • Hubungi Apple untuk pertanyaan harga

“Invalid Product ID” error:

  • Harus dalam format domain yang dibalik
  • Tidak boleh mengandung spasi atau karakter khusus
  • Periksa tipe
  • Pastikan unik di semua produk

Untuk informasi lebih lanjut, lihat Dokumentasi resmi Apple tentang langganan auto-renewable.

Teruskan dari Membuat Subskripsi iOS Otomatis Diperbarui

Judul Bagian “Teruskan dari Membuat Subskripsi iOS Otomatis Diperbarui”

Jika Anda menggunakan Membuat Subskripsi iOS Otomatis Diperbarui untuk merencanakan persetujuan toko dan distribusi, hubungkannya dengan Menggunakan @capgo/native-purchases untuk kemampuan asli dalam Menggunakan @capgo/native-purchases, @capgo/capacitor-in-app-review untuk detail implementasi dalam @capgo/capacitor-in-app-review, Menggunakan @capgo/capacitor-in-app-review untuk kemampuan asli dalam Menggunakan @capgo/capacitor-in-app-review, @capgo/capacitor-native-market untuk detail implementasi di @capgo/capacitor-native-market, dan Menggunakan @capgo/capacitor-native-market untuk kemampuan asli di Menggunakan @capgo/capacitor-native-market.