이 플러그인은 공식 레포지토리로 이전되었습니다. 더 많은 정보를 얻으려면 공식 문서를 참조하세요. 공식 문서 __CAPGO_KEEP_0__ Purchases는 __CAPGO_KEEP_1__ 프레임워크의 플러그인으로 iOS와 Android에서 내 앱 구매를 지원합니다. iOS와 Android에서 내 앱 구매를 지원하는 간단하고 일관된 __CAPGO_KEEP_2__를 제공하여 개발자들이 내 앱 구독 및 구매를 구현하는 것을 쉽게 만듭니다.
Capacitor Purchases is a plugin for the Capacitor framework that allows in-app purchases on iOS and Android. It provides a simple and consistent API across multiple platforms, making it easy for developers to implement in-app subscriptions and purchases in their mobile apps.
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.
__CAPGO_KEEP_0__의 내 앱 구매를 구현하는 방법은 __CAPGO_KEEP_1__ Purchases 플러그인과 RevenueCat을 사용하여 어떻게 구현할 수 있는지 설명합니다.
- 자동 결제 확인
- 사용자 관리
- 사용자 지정 가격 모델 지원
- 상세 분석 - 확장성
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.
Using Capacitor Purchases plugin and RevenueCat, developers can easily manage and track in-app subscriptions and purchases, validate receipts, and manage users across multiple platforms. It also allows creating custom pricing models and get detailed analytics to improve the performance and revenue.
설치
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.
To install the Capacitor Purchases plugin, run the following command:
npm i @capgo/capacitor-purchases
Capgo Purchases 플러그인을 앱의 원시 code에 추가하십시오.
npx cap sync
Xcode에서 앱 내 구매 기능을 추가하십시오:
그런 다음

1. RevenueCat 계정 만들기
이 안내서에서는 SDK와 code의 몇 줄만으로 구독과 RevenueCat의 SDK를 설정하는 방법을 알려드립니다.
새로운 RevenueCat 계정 가입 여기.
📘
💡 여기 팁!
RevenueCat은 각 앱/프로젝트당 별도의 RevenueCat 계정을 만들 것을 권장합니다. 특히 앱을 판매할 계획이라면, 계정 전달이 더 빠르게 진행될 것입니다.
기업/기업
회사 계정을 사용하여 RevenueCat에 등록하고 앱을 프로젝트 내에 설정하는 것을 권장합니다. 팀원들을 프로젝트에 초대하여 협력자 프로젝트에 초대하여 프로젝트 소유자는만 빌링을 관리할 수 있습니다.프로젝트 협력자는 빌링 세부 정보를 관리할 수 없습니다.
2. 프로젝트 및 앱 구성
▶️ 프로젝트 만들기
리밸루캣 대시보드에 접속하여 새로운 프로젝트를 추가하세요. 프로젝트 탭에서 리밸루캣 1단계.

▶️ 앱/플랫폼 추가
앱/플랫폼을 추가하세요.
from the dropdown in the top navigation menu called 'Projects' 프로젝트 설정 > 앱 프로젝트 대시보드의 왼쪽 메뉴에서 앱을 추가할 플랫폼을 선택하세요.

앱 플랫폼을 선택하는 프로젝트 대시보드
필드 앱 이름 RevenueCat에 앱을 추가하려면 필수입니다. 나머지 구성 필드는 나중에 추가할 수 있습니다. 테스트 및 생산 구매를 위해 Bundle ID (iOS) / Package Name (Android) 및 Shared Secret (iOS) / Service Credentials (Android)가 구성되어야 합니다.

Apple App Store 앱의 앱 구성 페이지
📘
💡 여기 팁!
앱을 등록한 후 RevenueCat은 플랫폼 서버 알림. 이 알림들은 필수는 아니지만, 웹후크 및 통합 배달 시간을 가속하고
📘
subscribers의 업데이트 지연 시간을 줄입니다.
Staging vs. Production 앱 및 사용자
RevenueCat은 Staging 및 Production에 대한 별도의 환경을 가지고 있지 않습니다.
사용자의 underlying 거래는 sandbox와 production으로 구분됩니다.
RevenueCat 앱은 모두 sandbox와 production 구매를 스토어에서 할 수 있습니다.
Staging과 Production에 대한 별도의 앱이 있으면, RevenueCat에서 여러 프로젝트를 만들어서 mirror한 설정을 만들 수 있습니다., 또한, 사용자는 환경에 따라 구분되지 않습니다. 사용자는 동시에 sandbox 구매와 production 구매가 활성화될 수 있습니다.▶️ Service Credentials, Amazon Appstore Shared Secret __CAPGO_KEEP_0__
__CAPGO_KEEP_1__
3. 제품 설정
▶️ 매장 설정
앱을 사용하기 전에 RevenueCat에서 제품을 가져오기 전에 제품을 설정해야 합니다. 제품을 설정하는 방법에 대한 지침은 애플 스토어 커넥트, 구글 플레이 콘솔, 아마존 앱스토어, 및 스 트립 이 과정을 안내하는 데 도움이 필요합니다.
iOS 제품을 판매하고 있다면, '구매 앱 계약서'를 서명하고 은행 및 세금 정보를 입력해야 합니다. App Store Connect > 계약, 세금 및 은행. 구매 테스트를 하기 전에 이 작업을 완료해야 합니다..
📘
스토어 설정을 테스트하는 동안 건너 뛰고 싶다면?
iOS에서, App Store Connect에서 제품을 구성하는 것을 늦출 수 있습니다. StoreKit Configuration 파일을 사용하여 테스트할 수 있습니다. 이 config 파일은 최소한의 설정만 필요하고 Xcode를 통해 직접 설정할 수 있습니다.
StoreKit Configuration 파일을 설정하는 방법에 대한 자세한 내용은 RevenueCat에서 읽어보세요. 테스트 환경 guide.
▶️ RevenueCat에서 제품 및 권한을 구성하세요.
App Store Connect에서 앱 내 제품을 구성한 후 Google Play Console에서 제품을 구성하세요., __CAPGO_KEEP_0__, Amazon Appstore, or Stripe, 고객이 특정 제품을 구매한 후에 "해당 제품에 대한 권한"을 "entitled" 한 것입니다.
RevenueCat은 Entitlements의 시스템을 사용하여 프리미엄 기능에 대한 접근을 제어하고, Offerings를 사용하여 고객에게 제공할 제품의 세트를 관리합니다. Entitlements는 "해당 제품을 구매한 고객이 "entitled" 한 권한"의 수준입니다. utilizing these features to simplify your code and enable you to change products without releasing an app update.
RevenueCat은 이러한 기능을 사용하여 __CAPGO_KEEP_0__을 단순화하고, 앱 업데이트를 출시하지 않고도 제품을 변경할 수 있도록 추천합니다. See Configuring Products

4. Using RevenueCat’s Purchases SDK
RevenueCat SDK는 SDK 및 SDK을 SDK 플랫폼 간에 SDK하고 SDK 서버와 SDK하는 것을 SDK합니다.
이미지에 문제가 발생하는 경우 SDK를 참조하십시오. SDK의 문제 해결 __CAPGO_KEEP_0__를 사용할 때는 __CAPGO_KEEP_0__ 키만 사용하십시오.
📘
SDK 키를 SDK에서 SDK하십시오.
SDK 키 API __CAPGO_KEEP_0__ __CAPGO_KEEP_0__ __CAPGO_KEEP_0__ 인스턴스만 __CAPGO_KEEP_0__하십시오.
__CAPGO_KEEP_0__ __CAPGO_KEEP_0__ 앱이 시작될 때 일반적으로 한 번만 호출됩니다. 이후 앱 내에서 __CAPGO_KEEP_0__에 접근하여 동일한 인스턴스를 공유합니다. .shared SDK 인스턴스를 액세스하여 앱 내에서 동일한 인스턴스를 공유합니다.
RevenueCat의 __CAPGO_KEEP_0__ 구성 가이드를 참조하세요. SDK 구성에 대한 자세한 정보와最佳 관행을 위해 RevenueCat의 SDK 구성 가이드를 참조하세요. __CAPGO_KEEP_0__ 키만 사용하여 Purchases를 구성하십시오. RevenueCat의 인증 가이드에서 __CAPGO_KEEP_1__ 키에 대한 다양한 키에 대한 정보를 읽을 수 있습니다.
RevenueCat의 인증 가이드를 참조하세요. 개발 중인 경우 RevenueCat은 더 자세한 디버그 로그를 활성화하는 것을 추천합니다. 디버그 로그에 대한 자세한 정보는 RevenueCat의 디버깅 가이드를 참조하세요. with your public SDK key only. You can read more about the different API keys available in RevenueCat __CAPGO_KEEP_1__.
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_******'})
}
__CAPGO_KEEP_0__ __CAPGO_KEEP_0__ __CAPGO_KEEP_1__
RevenueCat과 함께 사용할 계획이라면 기존 구매 code에 대한 안내는 RevenueCat의 가이드를 참조하십시오. Observer 모드.
📘
구매 설정에 사용자 ID를 제공하는 방법
앱에 사용자 인증 시스템이 있다면, 구성 시점 또는 나중에 호출하는 것으로 사용자 식별자를 제공할 수 있습니다.
.logIn()더 많은 정보를 알아보려면 RevenueCat의 가이드를 확인하십시오. 구매 __CAPGO_KEEP_0__는 자동으로 Apple, Google, 또는 Amazon에서 제품 정보를 가져와 Offerings를 구성합니다..
The SDK will automatically fetch the 구매 __CAPGO_KEEP_0__가 자동으로 Apple, Google, 또는 Amazon에서 제품 정보를 가져와 Offerings를 구성합니다. 구매 Offerings를 가져오는 예시입니다. Offerings를 사용하여 결제 화면을 구성할 수 있습니다. RevenueCat의 가이드인 Displaying Products를 참조하십시오.
Displaying Products 구매 Offerings를 가져오는 예시입니다. Offerings를 사용하여 결제 화면을 구성할 수 있습니다. RevenueCat의 가이드인 Displaying Products를 참조하십시오. Displaying Products
▶️ 제품을 가져와 표시하세요
📘
사용자 ID와 구매를 구성하는 방법
사용자 인증 시스템이 있는 앱이 있다면, 구성 시 또는 나중에 호출하는 것으로 사용자 식별자를 제공할 수 있습니다.
.logIn(). 사용자 식별에 대한 자세한 내용은 RevenueCat의 사용자 식별.
The SDK will automatically fetch the __CAPGO_KEEP_0__은 자동으로 구성된 Offerings
을 가져와 애플, 구글, 또는 아마존에서 제품 정보를 가져옵니다. 따라서 고객이 구매 화면을 열 때 이미 제품이 로드되어 있습니다. 아래는 Offerings를 가져오는 예시입니다. paywall 화면을 조직하기 위해 Offerings를 사용할 수 있습니다. 자세한 내용과最佳 관행에 대한 정보는 RevenueCat의 제품 표시
const { offerings } = await CapacitorPurchases.getOfferings()
if (offerings.current !== null) {
// Display current offering with offerings.current
}
문서를 참조하세요. Offerings를 가져올 때는 제품 및 서비스, 제품또는 사용 가능한 패키지 은 비어 있습니다. 이는 해당 스토어의 구성 문제로 인한 것입니다.
App Store Connect에서 가장 일반적인 이유는 '결제 애플리케이션 계약'이 최신 상태가 아니거나 제품이 '제출 준비' 상태 이상이 아닐 때입니다. Google Play에서는 일반적으로 앱이 폐쇄된 트랙에 게시되지 않았거나 유효한 테스트 사용자가 추가되지 않았을 때 발생합니다.
RevenueCat의 '도움말 센터'에서 이 문제를 해결하는 방법에 대한 자세한 정보를 찾을 수 있습니다. 도움말 센터.
▶️ 구매하기
SDK은 구매를 facilite하는 간단한 방법을 포함합니다. SDK은 fetched Offering에서 패키지를 가져와 각각의 앱 스토어에서 거래를 처리합니다. purchase:package __CAPGO_KEEP_0__ 샘플은 'your_entitlement_id' 콘텐츠가 'your_entitlement_id' 콘텐츠를 해제하는지 확인하는 구매 패키지와 구매 패키지를 구매하는 프로세스를 보여줍니다. __CAPGO_KEEP_0__ 샘플에 대한 자세한 정보는
code 샘플에 대한 자세한 정보는 purchase:package __CAPGO_KEEP_0__의 방법은 RevenueCat 가이드에서 찾을 수 있습니다. 구매를 하는 방법.
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
}
구독 상태를 확인하세요 ▶️
이 메서드를 사용할 때마다 최신 상태를 얻을 수 있으며, 앱의 라이프 사이클 동안 반복적으로 호출하는 것이 안전합니다. 구매 자동으로 최신 구독 상태를 캐싱합니다 — 그래서 대부분의 경우 이 메서드는 캐시에서 데이터를 가져와서 매우 빠르게 실행됩니다. CustomerInfo 일반적으로 이 메서드를 사용하여 사용자에게 보여줄 UI를 결정할 때, 사용자가 특정 권한 수준이 필요한 액션을 수행할 때 호출합니다.
💡 팁입니다!
📘
구독 상태를 확인하는 것만으로는 구독이 활성화되어 있는지 여부만 알 수 있습니다. 구독이 갱신되도록 설정되어 있는지, 사용자의 신용카드에 문제가 있는지 등 더 많은 정보를 얻으려면 RevenueCat 가이드에서 확인하세요.
구독 상태 구독이 갱신되도록 설정되어 있는지, 사용자의 신용카드에 문제가 있는지 등 더 많은 정보를 얻으려면 RevenueCat 가이드에서 확인하세요. 구독 상태
사용자가 앱 내 구매를 복원할 수 있도록 도와줍니다. 복원된 구매는 이전에 구매한 콘텐츠를 다시 활성화합니다. (Apple, Google, 또는 Amazon 계정). 모든 앱은 사용자가 복원 메서드를 트리거할 수 있는 방법을 제공하는 것이 좋습니다. Apple은 사용자가 구매에 접근할 수 없게 되면 (예: 앱을 삭제/설치, 계정 정보를 잃어버리기 등) 복원 메커니즘을 요구합니다. 두 개의 App User IDs
const res = await CapacitorPurchases.restoreTransactions()
const purchaserInfo = res.purchaserInfo
const ids: string[] = [] // extract active subscriptions ids
purchaserInfo.activeSubscriptions.forEach((id) => {
ids.push(id)
})
는 동일한 underlying store 계정 (Apple, Google, 또는 Amazon 계정)에서 복원 거래를 수행할 수 있습니다. RevenueCat은 두 개의 App User IDs 사이에 alias를 생성하고 앞으로도 동일한 사용자로 간주할 수 있습니다. RevenueCat의 구매 복원 에 대한 안내서를 참조하십시오. 복원 동작의 다양한 구성 가능한 동작에 대한 자세한 내용을 확인하십시오. 사용자의 구매 정보가 변경되는 경우, __CAPGO_KEEP_0__는 다양한 플랫폼에서 작동하므로 사용자의 구매 정보가 변경되는 경우에 대한 응답을 할 수 있습니다. 사용자의 구매 정보가 변경되는 경우에 대한 응답을 하려면 optional delegate 메서드를 구현하는 것을 추천합니다. 이 메서드는 __CAPGO_KEEP_0__가 calls to에서 받은 updated object를 받을 때마다 호출됩니다.
Since the SDK works seamlessly on any platform, changes to a user’s purchase info may come from a variety of sources. You can respond to any changes in a customer’s CustomerInfo same store account purchases:receivedUpdated:.
This method will fire whenever the SDK receives an updated CustomerInfo Restoring Purchases getCustomerInfo(), purchase(package:), purchase(product:), or restorePurchases().
CustomerInfo updates are not pushed to your app from the RevenueCat backend, updates can only happen from an outbound network request to RevenueCat, as mentioned above.
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)
})
👍
앱에 따라, 위임을 무시하고 앱이 다시 시작되거나 __CAPGO_KEEP_0__ 메서드의 완료 블록에서 고객 정보를 변경하는 경우에만 변경 사항을 처리할 수 있습니다.
You have now implemented a fully-featured subscription purchasing system without spending a month writing server code. Congrats!
서버 없이 한 달 동안 쓰지 않고 완전한 구독 구독 시스템을 구현했습니다. 축하합니다!
To download more complete examples of integrating the SDK, head over to RevenueCat sample app resources.
RevenueCat 샘플 앱 리소스에 가서 __CAPGO_KEEP_0__를 완전히 통합한 더 많은 예제를 다운로드하세요.
I will soon publish a sample app using Capacitor and Vue.js.
If you need to move deep usage of the Capacitor SDK check the documentation 여기.
다음 단계
\
- __CAPGO_KEEP_0__ 설정이 올바르게 구성되어 있는지 확인하기 위해 RevenueCat을 확인하세요. __CAPGO_KEEP_0__ 권한 설정에 대한 안내서.
- __CAPGO_KEEP_0__ 사용자 식별자를 사용하려면 __CAPGO_KEEP_0__ 앱 사용자 ID 설정 .
- __CAPGO_KEEP_0__ 다른 시스템에서 RevenueCat으로 이동하는 경우, RevenueCat의 구독이 이미 존재하는 것을 이전하는 방법에 대한 안내서 __CAPGO_KEEP_0__ 통합 테스트를 위해 준비되면, RevenueCat의 테스트 및 디버깅에 대한 안내서를 따르세요..
- __CAPGO_KEEP_0__ 앱 스토어 소규모 사업자 프로그램에 자격이 있다면, RevenueCat의 소규모 사업자 프로그램에 대한 안내서를 확인하세요. RevenueCat의 구독이 이미 존재하는 것을 이전하는 방법에 대한 안내서.
- RevenueCat의 테스트 및 디버깅에 대한 안내서 RevenueCat의 소규모 사업자 프로그램에 대한 안내서
앱에서 실시간 업데이트 기능이 필요하시면
여기 가입하세요 👇
__CAPGO_KEEP_0__ 계정 얻기 위해 여기 가입하세요
Keep going from in app purchases for capacitor
__CAPGO_KEEP_0__을 사용 중이시면 in app purchases for capacitor 결제와 구매를 계획하고 연결하려면 Capgo 가격 정책 Capgo 가격 정책에서 제품 워크플로우를 결제 시스템 결제 시스템의 구현 세부 사항을 위해 @capgo/native-purchases @capgo/native-purchases 구현 세부 사항 Getting Started Getting Started 구현 세부 사항 Revenue Playbook Revenue Playbook 구현 세부 사항