Rc Alternative Billing

RevenueCat/ai-toolkit/revenuecat-play-billing/skills/rc-alternative-billing

作者 RevenueCatccfc038185ec457b2ac9077f3bbf1ba947a44dbbApache-2.0; see LICENSE收錄於 2026年10月9日更新於 2026年10月9日

Use this skill when scoping Google Play alternative billing work with RevenueCat Android SDK 10.x. Documents the current support status, which flows RevenueCat abstracts and which require direct integration at the time the chapter was written.

AI 產生的概覽

指導使用 RevenueCat Android SDK 規劃 Google Play 替代帳務工作,涵蓋支援狀態與整合路徑。

功能
此技能說明 RevenueCat Android SDK 支援哪些 Google Play 替代帳務流程,以及哪些流程必須直接以 Play Billing Library 實作。內容包含探索階段的問題、在等待 SDK 支援與自行整合之間做選擇,以及驗證步驟。它也指出 RevenueCat Web Billing 與 Google 的替代帳務方案是不同的產品。
適用情境
適用於為使用 RevenueCat SDK 的 Android 應用程式規劃或界定替代帳務工作。適合關於方案資格、SDK 版本支援,以及要等待官方支援或直接整合的早期規劃討論。
執行需求
不含指令碼,僅為說明性內容。涉及 RevenueCat Android SDK、Play Billing Library 與 Play Console 註冊,並指向外部 RevenueCat 文件與更新日誌頁面。

Alternative Billing Programs

Google runs several programs that let you collect payment outside standard Play Store billing. This skill tells you which pieces the RevenueCat Android SDK covers today and which ones you implement yourself against the Play Billing Library.

Per the handbook chapter, RevenueCat has limited support for these programs as of SDK 9.x. Treat that as the status of record; check the RevenueCat changelog for any newer SDK releases before you start work.

Phase 1: Discovery

Answer these before writing any code.

QuestionWhy it matters
Which program are you targeting?User Choice Billing, Alternative Billing Only, External Offers, and External Payment Links each have different Play requirements.
Is your app eligible in the target region?Google gates these programs by country and app category. You enroll through Play Console, not through RevenueCat.
Are you using RevenueCat Web Billing instead?RevenueCat's web checkout is a separate product from Google's alternative billing. Do not conflate the two.
Which RevenueCat SDK version are you on?Support evolves per release. What is unsupported in SDK 9.x may land later.

If you actually want to sell subscriptions via a RevenueCat-hosted web checkout, that is not one of Google's alternative billing programs. Use Offering.webCheckoutURL or Package.webCheckoutURL:

kotlin
val pkg = offerings.current?.monthlypkg?.webCheckoutURL?.let { url ->    startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(url.toString())))}

After the user completes that purchase on the web, they redeem it in-app via deep link handling.

Phase 2: Plan

Decide which of the two paths fits.

Path A: Wait for SDK support. If your launch timeline is flexible, watch the RevenueCat changelog and docs for first-class support of the specific program you need. This avoids running raw Play Billing Library code alongside RevenueCat.

Path B: Hand roll the integration. If you must ship now, implement the Play Billing Library APIs for the target program directly. The RevenueCat SDK owns the BillingClient instance, so running raw BillingClient calls alongside it needs care.

For Path B, set completion ownership so RevenueCat does not interfere with acknowledgement of purchases you are managing:

kotlin
Purchases.configure(    PurchasesConfiguration.Builder(context, apiKey)        .purchasesAreCompletedBy(PurchasesAreCompletedBy.MY_APP)        .build())

Planning checklist:

  • Confirmed the Play program and regional eligibility in Play Console.
  • Read the current RevenueCat docs and changelog for the SDK version you ship.
  • Chose Path A or Path B with a clear reason.
  • If Path B, identified which flows RevenueCat still drives and which you drive.

Phase 3: Execute

What RevenueCat's SDK currently supports in this space, per the chapter:

FlowSDK coverage
RevenueCat Web Billing via Offering.webCheckoutURL / Package.webCheckoutURLSupported. Not a Google alternative billing program.
User Choice BillingNo dedicated SDK APIs. Implement via Play Billing Library alongside RevenueCat.
Alternative Billing OnlyNo dedicated SDK APIs. Implement via Play Billing Library alongside RevenueCat.
External OffersNo dedicated SDK APIs. Implement via Play Billing Library alongside RevenueCat.
External Payment LinksNo dedicated SDK APIs. Implement via Play Billing Library alongside RevenueCat.

When you ship Path B, use PurchasesAreCompletedBy.MY_APP so acknowledgement stays in your hands for the purchases you manage, and leave the standard Play Store purchases to the RevenueCat SDK.

Verification steps:

  • Standard Play Store purchases still flow through RevenueCat and appear in the dashboard.
  • Purchases made through the alternative billing path reach your backend and are reconciled with RevenueCat subscriber state.
  • Acknowledgement happens exactly once per purchase, with no double-handling between your code and the SDK.

References

來源與署名

來源:RevenueCat/ai-toolkit位於revenuecat-play-billing/skills/rc-alternative-billing提交ccfc038

授權條款: Apache-2.0; see LICENSE

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架