Plugin ini telah dipindahkan ke repository resmi RevenueCat. Silakan lihat dokumentasi resmi untuk informasi lebih lanjut.
Pembelian Capacitor adalah plugin untuk framework Capacitor yang memungkinkan pembelian dalam aplikasi di iOS dan Android. Ini menyediakan antarmuka yang sederhana dan konsisten API di berbagai platform, sehingga memudahkan pengembang untuk mengimplementasikan langganan dan pembelian dalam aplikasi di aplikasi mobile mereka.
One of the key features of the Capacitor Purchases plugin is that it integrates with RevenueCat, a platform that provides tools for in-app subscriptions and in-app purchases. RevenueCat simplifies the process of implementing in-app subscriptions and purchases by providing a simple and consistent API across multiple platforms, and automating tasks such as receipt validation and user management.
RevenueCat memudahkan proses implementasi langganan aplikasi dan pembelian dengan menyediakan __CAPGO_KEEP_1__ yang sederhana dan konsisten di berbagai platform, serta mengotomatisasi tugas seperti validasi bukti pembayaran dan pengelolaan pengguna.
- Dengan RevenueCat, pengembang dapat dengan mudah mengelola langganan, melacak pendapatan, dan melakukan tugas terkait lainnya. Beberapa fitur yang ditawarkan oleh RevenueCat termasuk:
- Validasi bukti pembayaran otomatis
- Pengelolaan pengguna
- Support untuk model harga kustom
By using the Capacitor Purchases plugin with RevenueCat, developers can save time and effort when implementing in-app subscriptions and purchases in their mobile apps, and provide additional features that can help to improve the user experience and increase revenue.
Dengan menggunakan plugin Pembelian Capacitor bersama RevenueCat, pengembang dapat menghemat waktu dan usaha ketika mengimplementasikan langganan aplikasi dan pembelian di aplikasi mobile mereka, serta menyediakan fitur tambahan yang dapat membantu meningkatkan pengalaman pengguna dan meningkatkan pendapatan.
Dengan menggunakan plugin Pembelian __CAPGO_KEEP_0__ dan RevenueCat, pengembang dapat dengan mudah mengelola dan melacak langganan aplikasi dan pembelian, memvalidasi bukti pembayaran, dan mengelola pengguna di berbagai platform. Ini juga memungkinkan membuat model harga kustom dan mendapatkan analitis detail untuk meningkatkan kinerja dan pendapatan.
Be sure to use the latest version of Capacitor and the Capacitor Purchases plugin. You can check the latest version of Capacitor and the Capacitor Purchases plugin on the Capacitor website.
Pastikan untuk menggunakan versi terbaru dari Capacitor dan plugin Pembelian __CAPGO_KEEP_1__. Anda dapat memeriksa versi terbaru dari __CAPGO_KEEP_2__ dan plugin Pembelian __CAPGO_KEEP_3__ di situs web __CAPGO_KEEP_4__.
npm i @capgo/capacitor-purchases
tambahkan plugin ke aplikasi native code
npx cap sync
menambahkan kemampuan pembelian dalam aplikasi di Xcode:
lalu

1. Buatlah Akun RevenueCat
Panduan ini akan membantu Anda untuk memulai menggunakan langganan dan RevenueCat’s SDK dengan hanya beberapa baris kode code.
Daftar untuk akun RevenueCat baru di sini.
📘
💡 Berikut adalah tips!
RevenueCat merekomendasikan membuat akun RevenueCat terpisah untuk setiap aplikasi / proyek yang Anda miliki, terutama jika Anda pernah berencana untuk menjual aplikasi. Ini akan mempercepat proses transfer, karena Anda dapat mentransfer akun secara keseluruhan daripada menunggu dukungan RevenueCat untuk mentransfer proyek individu.
Organisasi / Perusahaan
Kami merekomendasikan menggunakan akun perusahaan ketika mendaftar di RevenueCat dan mengatur aplikasi Anda dalam proyek. Anda akan dapat mengundang tim Anda yang lain sebagai kolaborator ke proyek Anda, tetapi hanya pemilik proyek yang dapat mengelola tagihan. Kolaborator proyek tidak dapat mengelola detail tagihan.
2. Konfigurasi Proyek dan Aplikasi
▶️ Buat Proyek
Navigasikan ke dashboard RevenueCat dan tambahkan proyek baru dari dropdown di menu navigasi atas yang disebut Proyek.

Modal popup untuk membuat Project baru
▶️ Tambahkan Aplikasi / Platform
Dari Pengaturan Project > Aplikasi di menu kiri dashboard project, pilih platform untuk aplikasi yang akan ditambahkan.

Dashboard project untuk memilih platform aplikasi
Bidang Nama Aplikasi diperlukan untuk menambahkan aplikasi ke RevenueCat. Bidang konfigurasi lainnya dapat ditambahkan kemudian. Untuk membuat pembelian uji coba dan produksi, ID Paket (iOS) / Nama Paket (Android) serta Rahasia Bersama (iOS) / Kredensial Layanan (Android) harus dikonfigurasi.

Halaman konfigurasi aplikasi untuk aplikasi App Store Apple
📘
💡 Tips ini!
Setelah mendaftar aplikasi Anda, RevenueCat merekomendasikan mengatur Pemberitahuan Server Platform. Pemberitahuan ini tidak diperlukan, tetapi akan mempercepat webhooks dan pengiriman waktu integrasi dan mengurangi waktu pengupdatean pengikut Anda.
📘
Aplikasi Staging vs. Produksi dan Pengguna
RevenueCat sendiri tidak memiliki lingkungan terpisah untuk staging dan produksi. Sebaliknya, transaksi dasar untuk pengguna dipisahkan oleh sandbox dan produksi.
Aplikasi mana pun RevenueCat dapat membuat pembelian sandbox dan produksi dari toko.
Jika Anda memiliki aplikasi terpisah untuk staging dan produksi, Anda dapat membuat proyek yang lebih dari satu di RevenueCat untuk menggambarkan pengaturan Anda.
Selain itu, pengguna tidak dipisahkan oleh lingkungan, baik. Pengguna yang sama dapat memiliki pembelian aktif sandbox dan pembelian aktif produksi pada saat yang sama.
▶️ Kredensial Layanan Kunci Rahasia App Store Connect, Kredensial Layanan Play, dan Kunci Rahasia Appstore Amazon untuk informasi lebih lanjut.
Perlu diingat bahwa kredensial layanan Play dapat membutuhkan waktu hingga 36 jam untuk menyebarluas di server Google.
3. Konfigurasi Produk
▶️ Pengaturan Toko
Sebelum Anda dapat menggunakan RevenueCat untuk mengambil produk, Anda harus mengonfigurasi produk Anda di toko yang bersangkutan. Lihatlah panduan berikut untuk App Store Connect, Google Play Console, Amazon Appstore, dan Stripe untuk meminta bantuan untuk menavigasi melalui proses ini.
Jika Anda menjual produk iOS, pastikan Anda menandatangani 'Persetujuan Pembayaran Aplikasi' dan isi informasi bank dan pajak Anda di App Store Connect > Perjanjian, Pajak, dan Perbankan. Hal ini harus diselesaikan sebelum Anda dapat menguji pembelian apa pun.
📘
Ingin melompati pengaturan toko saat menguji?
Pada iOS, Anda dapat menunda mengkonfigurasi produk di App Store Connect dengan menguji menggunakan file konfigurasi StoreKit.
File konfigurasi ini memerlukan pengaturan minimal dan dapat dikonfigurasi melalui Xcode secara langsung. Baca lebih lanjut tentang pengaturan file konfigurasi StoreKit di RevenueCat Pengujian Sandbox
guide.
Setelah produk dalam aplikasi Anda telah dikonfigurasi di App Store Connect, Google Play Console, Amazon Appstore, atau Stripe, Anda perlu menyalin konfigurasi tersebut ke dashboard RevenueCat. RevenueCat menggunakan sistem Entitlements untuk mengontrol akses ke fitur premium, dan Penawaran untuk mengelola set produk yang ditawarkan kepada pelanggan.
Entitlements adalah tingkat akses yang dimiliki oleh pelanggan setelah membeli produk tertentu. Penawaran adalah cara sederhana untuk Anda mengorganisir produk dalam aplikasi yang ingin Anda tawarkan di paywall dan mengkonfigurasi mereka secara remote. utilizing these features to simplify your code and enable you to change products without releasing an app update.
menggunakan fitur-fitur ini untuk memudahkan proses Anda dan memungkinkan Anda untuk mengubah produk tanpa perlu mengupdate aplikasi. Lihat untuk mengatur produk Anda dan kemudian mengorganisir mereka menjadi Penawaran atau Entitlements.

4. Menggunakan Purchases RevenueCat SDK
RevenueCat SDK secara otomatis mengimplementasikan pembelian dan langganan di berbagai platform sambil sinkronisasi token dengan server RevenueCat.
Jika Anda mengalami masalah dengan SDK, lihat Panduan Mengatasi SDK untuk petunjuk.
📘
Hanya gunakan kunci publik SDK Anda untuk mengonfigurasi Purchases
Anda dapat mendapatkan kunci publik SDK Anda dari tab API keys di bawah Pengaturan Proyek di dashboard.
Anda hanya dapat mengonfigurasi instance yang dibagikan dari Pembelian satu kali, biasanya pada saat aplikasi diluncurkan. Setelah itu, instance yang sama dapat diakses melalui .shared SDK
Lihat panduan RevenueCat tentang Mengonfigurasi SDK untuk informasi lebih lanjut dan praktik terbaik.
Pastikan Anda mengonfigurasi Pembelian dengan kunci publik SDK saja. Anda dapat membaca lebih lanjut tentang berbagai jenis kunci API yang tersedia di panduan Autentikasi RevenueCat untuk informasi lebih lanjut dan praktik terbaik..
import { CapacitorPurchases } from '@capgo/capacitor-purchases'
import { isPlatform } from '@ionic/vue' // use the right one for your framework
CapacitorPurchases.setDebugLogsEnabled({ enabled: import.meta.env.DEV }) // Enable to get debug logs in dev mode
if (isPlatform('ios')) {
CapacitorPurchases.setup({ apiKey:'appl_******'})
} else if (isPlatform('android')) {
CapacitorPurchases.setup({ apiKey:'goog_******'})
}
Ketika dalam pengembangan, RevenueCat merekomendasikan mengaktifkan log debug yang lebih rinci. Untuk informasi lebih lanjut tentang log-log ini, lihat panduan mereka. Pengembangan Jika Anda merencanakan menggunakan RevenueCat bersama dengan pembelian __CAPGO_KEEP_0__ yang sudah ada, lihat panduan mereka tentang
If you’re planning to use RevenueCat alongside your existing purchase code, refer to their guide on Mengonfigurasi Pembelian dengan ID Pengguna.
📘
Jika Anda memiliki sistem autentikasi pengguna di aplikasi Anda, Anda dapat menyediakan identifier pengguna pada saat pengaturan atau pada tanggal yang lebih lanjut dengan panggilan ke
Untuk mempelajari lebih lanjut, cek panduan RevenueCat tentang
.logIn()Mengidentifikasi Pengguna Pembelian __CAPGO_KEEP_0__ akan secara otomatis mengambil.
The SDK will automatically fetch the dan mengambil informasi produk dari Apple, Google, atau Amazon. Oleh karena itu, produk yang tersedia sudah akan dimuat ketika pelanggan membuka layar pembelian Anda. Mengidentifikasi Pengguna
Contoh berikut menunjukkan cara mengambil Tawaran. Anda dapat menggunakan Tawaran untuk mengorganisir layar pembayaran Anda. Lihat panduan RevenueCat tentang Penggunaan Produk untuk informasi lebih lanjut dan praktik terbaik.
▶️ Ambil dan Tampilkan Produk yang Tersedia
📘
Pengaturan Pembelian dengan ID Pengguna
Jika Anda memiliki sistem autentikasi pengguna di aplikasi Anda, Anda dapat menyediakan identifier pengguna pada saat pengaturan atau pada tanggal yang lebih lanjut dengan panggilan ke
.logIn(). Untuk mengetahui lebih lanjut, cek panduan RevenueCat tentang Pengenalan Pengguna.
The SDK will automatically fetch the yang telah dikonfigurasi dan mengambil informasi produk dari Apple, Google, atau Amazon. Jadi, produk yang tersedia akan sudah dimuat ketika pelanggan membuka layar pembelian Anda.
Contoh berikut menunjukkan cara mengambil Tawaran. Anda dapat menggunakan Tawaran untuk mengorganisir layar pembayaran Anda. Lihat panduan RevenueCat tentang Menampilkan Produk untuk informasi lebih lanjut dan praktik terbaik.
const { offerings } = await CapacitorPurchases.getOfferings()
if (offerings.current !== null) {
// Display current offering with offerings.current
}
Jika Anda mengambil produk Anda Penawaran, produk, atau paket yang tersedia kosong, maka itu karena masalah konfigurasi di toko yang bersangkutan. Alasan paling umum untuk hal ini di App Store Connect adalah perjanjian 'Paid Applications Agreement' yang tidak diperbarui atau produk tidak setidaknya dalam keadaan 'Ready To Submit'. Di Google Play, hal ini biasanya terjadi ketika aplikasi tidak dipublikasikan di jalur tertutup dan pengguna uji yang valid ditambahkan.
Anda dapat menemukan informasi lebih lanjut tentang troubleshooting masalah ini di RevenueCat
Pusat Bantuan ▶️ Lakukan Pembelian.
▶️
The SDK termasuk metode sederhana untuk memfasilitasi pembelian. The purchase:package mengambil paket dari Offering yang ditarik dan memproses transaksi dengan toko aplikasi yang relevan.
The code contoh di bawah menunjukkan proses membeli paket dan mengonfirmasi bahwa itu membuka konten “your_entitlement_id”. Lebih banyak detail tentang metode ini dapat ditemukan di panduan RevenueCat tentang purchase:package Membuat Pembelian ▶️ Periksa Status Langganan.
const purchase = async (p: Package): Promise<PurchaserInfo | null> => {
try {
// console.log('purchase', p)
const data = await CapacitorPurchases.purchasePackage({
identifier: p.identifier,
offeringIdentifier: p.offeringIdentifier,
})
const purchaserInfo = data.purchaserInfo
// console.log('listenBuy', purchaserInfo)
if (purchaserInfo.activeSubscriptions.includes(p.identifier)) {
// set the user as paid
}
return purchaserInfo
}
catch (e) {
console.error('listenBuy error', e)
}
return null
}
Anda dapat menggunakan metode ini kapan saja Anda membutuhkannya untuk mendapatkan status terbaru, dan itu aman untuk memanggil metode ini secara berulang-ulang selama siklus hidup aplikasi Anda.
Pembelian otomatis menyimpan versi terbaru ketika itu diperbarui — sehingga dalam kebanyakan kasus, metode ini mengambil dari cache dan berjalan sangat cepat. CustomerInfo Biasanya, Anda memanggil metode ini ketika memutuskan untuk menampilkan UI apa yang harus ditampilkan kepada pengguna, dan ketika pengguna melakukan aksi yang memerlukan tingkat hak akses tertentu.
💡 Tips! Anda dapat menggunakan metode ini kapan saja Anda membutuhkannya untuk mendapatkan status terbaru, dan itu aman untuk memanggil metode ini secara berulang-ulang selama siklus hidup aplikasi Anda.
📘
Pembelian Otomatis akan menyimpan versi terbaru secara otomatis dan berjalan sangat cepat ketika Anda membutuhkannya untuk mendapatkan status terbaru.
Kamu bisa mengakses informasi lebih banyak tentang langganan daripada hanya apakah itu aktif atau tidak. Lihat panduan RevenueCat tentang Status Langganan untuk mengetahui apakah langganan diatur untuk diperbarui, apakah ada masalah yang terdeteksi dengan kartu kredit pengguna, dan lain-lain.
RevenueCat memungkinkan pengguna untuk mengembalikan pembelian dalam aplikasi, mengaktifkan kembali konten yang sebelumnya dibeli dari akun toko yang sama (akun Apple, Google, atau Amazon). Kami merekomendasikan bahwa semua aplikasi memiliki cara untuk memicu metode restorasi. Perlu diingat bahwa Apple memerlukan mekanisme restorasi dalam kasus pengguna kehilangan akses ke pembelian mereka (misalnya: menghapus/reinstall aplikasi, kehilangan informasi akun, dll).
const res = await CapacitorPurchases.restoreTransactions()
const purchaserInfo = res.purchaserInfo
const ids: string[] = [] // extract active subscriptions ids
purchaserInfo.activeSubscriptions.forEach((id) => {
ids.push(id)
})
Jika dua pengguna dengan ID Pengguna Aplikasi mengembalikan transaksi dari akun toko yang sama (akun Apple, Google, atau Amazon). RevenueCat mungkin mencoba membuat alias antara dua ID Pengguna Aplikasi dan menghitung mereka sebagai pengguna yang sama ke depannya. Lihat panduan RevenueCat tentang Mengembalikan Pembelian untuk informasi lebih lanjut tentang perilaku restorasi yang dapat disesuaikan.
Karena SDK berjalan dengan lancar di mana saja, perubahan informasi pembelian pengguna mungkin berasal dari berbagai sumber. Kamu bisa menjawab perubahan apa pun pada informasi pembelian pengguna CustomerInfo dengan mengikuti metode delegasi opsional, purchases:receivedUpdated:.
Metode ini akan mengeluarkan notifikasi setiap kali SDK menerima update CustomerInfo objek dari panggilan ke getCustomerInfo(), purchase(package:), purchase(product:), atau restorePurchases().
Pengaturan informasi pelanggan tidak dipush ke aplikasi Anda dari backend RevenueCat, update hanya dapat terjadi dari permintaan jaringan keluar ke RevenueCat, seperti yang disebutkan di atas. Terlepas dari aplikasi Anda, mungkin cukup untuk mengabaikan delegasi dan hanya menangani perubahan informasi pelanggan selanjutnya ketika aplikasi Anda diluncurkan atau di blok penyelesaian metode __CAPGO_KEEP_0__.
Depending on your app, it may be sufficient to ignore the delegate and simply handle changes to customer information the next time your app is launched or in the completion blocks of the SDK methods.
CapacitorPurchases.addListener('purchasesUpdate', (data) => {
console.log('purchasesUpdate', data)
})
👍
Anda telah mengimplementasikan sistem pembelian langganan yang lengkap tanpa menghabiskan sebulan menulis server __CAPGO_KEEP_0__. Selamat!
You have now implemented a fully-featured subscription purchasing system without spending a month writing server code. Congrats!
Untuk mengunduh contoh aplikasi yang lebih lengkap dari integrasi __CAPGO_KEEP_0__, silakan kunjungi sumber daya aplikasi RevenueCat contoh.
To download more complete examples of integrating the SDK, head over to RevenueCat sample app resources.
Saya akan segera menerbitkan aplikasi sampel menggunakan Capacitor dan Vue.js.
Jika Anda perlu memindahkan penggunaan mendalam dari Capacitor SDK, silakan memeriksa dokumentasi di sini.
Langkah-Langkah Selanjutnya
\
- Jika Anda belum melakukannya, pastikan produk Anda telah dikonfigurasi dengan benar dengan memeriksa guide RevenueCat tentang hak akses Jika Anda ingin menggunakan identifikasi pengguna sendiri, baca tentang.
- mengatur ID pengguna aplikasi Jika Anda beralih ke RevenueCat dari sistem lain, lihat guide RevenueCat tentang .
- migrasi langganan yang ada Setelah Anda siap untuk menguji integrasi, Anda dapat mengikuti guide RevenueCat tentang.
- menguji integrasi [testing dan debugging].
- Jika Anda memenuhi syarat untuk Program Aplikasi Kecil Bisnis App Store, lihat panduan RevenueCat tentang bagaimana cara mendaftar dan menginformasikan RevenueCat
Jika Anda membutuhkan update langsung dalam aplikasi Anda
Join kami di sini 👇