iOS 月額コミットメント請求プラン
このプラグインのインストールステップとフルマークダウンガイドまでの全てのステップを含む設定プロンプトをコピーする
Appleは、顧客に12か月間の契約を約束しながら、毎月請求するサブスクリプションをサポートしています。StoreKitと実行中のOSがこの請求計画をサポートする場合、 @capgo/native-purchases 価格条件を公開し、購入時に月額請求計画を選択し、取引と更新情報のコミットメントメタデータを返します。
年間サブスクリプションのオファーに使用してください。ユーザーが毎月の支払いを好みますが、還元と予測可能性のある12か月間のコミットメントの年間サブスクリプションを維持したい場合。
- App Store ConnectまたはXcodeのStoreKitテストで、月額請求と12か月間のコミットメントの請求計画を設定してください。
- XcodeのSDKでiOSアプリをビルドし、StoreKitと
pricingTermsiOSバージョンで実行してください。StoreKitコミットメント請求計画をサポートします。billingPlanType. - 要件
- __CAPGO_KEEP_0__の標準の請求オプションを、コミットメント価格の条件を返さないデバイスやストアフロントに常に用意してください。
価格条件を読み込んで表示する
価格条件を読み込んで表示するセクションのタイトルです。呼び出し getProducts() 通常通り呼び出してください。サポートされているiOSのサブスクリプション製品ごとに、各製品には pricingTerms.
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
const { products } = await NativePurchases.getProducts({ productIdentifiers: ['com.example.app.premium.yearly'], productType: PURCHASE_TYPE.SUBS,});
const premiumYearly = products.find( (product) => product.identifier === 'com.example.app.premium.yearly',);const monthlyCommitment = premiumYearly?.pricingTerms?.find( (term) => term.billingPlanType === 'monthly',);ストアから提供された値を代わりにハードコードされた価格で表示する:
| ハードコードされた価格の代わりにストアから提供された値を表示するフィールド | 使用する |
|---|---|
billingDisplayPrice | __CAPGO_KEEP_0__ |
billingPeriod | __CAPGO_KEEP_0__ |
commitmentInfo.priceString | __CAPGO_KEEP_0__ |
commitmentInfo.period | __CAPGO_KEEP_0__ |
subscriptionOffers | __CAPGO_KEEP_0__ |
例:月額課金
function commitmentLabel(term: NonNullable<typeof monthlyCommitment>) { const total = term.commitmentInfo?.priceString; return total ? `${term.billingDisplayPrice} billed monthly, ${total} total commitment` : term.billingDisplayPrice;}購入コミットメントプラン
月額コミットメントプランを選択した場合、コピー billingPlanType: 'monthly'.
const transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'com.example.app.premium.yearly', productType: PURCHASE_TYPE.SUBS, billingPlanType: 'monthly', appAccountToken: userStoreUuid,});使用するには、明示的に標準の前払い請求計画を選択する必要がある場合のみです。 その場合を省略すると、StoreKitは製品の購入動作を使用します。 billingPlanType: 'upFront' 標準の前払い請求計画を選択する必要がある場合のみ使用してください。 その場合を省略すると、StoreKitは製品の購入動作を使用します。 billingPlanTypeヒント
トランザクションには、StoreKitが提供する場合にのみ、請求計画とコミットメントの進行状況が含まれます。
クリップボードにコピー更新情報には、次のコミットメント状態が含まれることがあります。
if (transaction.billingPlanType === 'monthly') { console.log('Current billing period:', transaction.commitmentInfo?.billingPeriodNumber); console.log('Total billing periods:', transaction.commitmentInfo?.totalBillingPeriods); console.log('Commitment ends:', transaction.commitmentInfo?.expirationDate); console.log('Commitment total:', transaction.commitmentInfo?.price);}「コミットメントメタデータを読みます」というセクション
const { purchases } = await NativePurchases.getPurchases({ productType: PURCHASE_TYPE.SUBS, onlyCurrentEntitlements: true,});
for (const purchase of purchases) { const commitment = purchase.renewalInfo?.commitmentInfo; if (!commitment) continue;
console.log('Renews into another commitment:', commitment.willAutoRenew); console.log('Next billing plan:', commitment.renewalBillingPlanType); console.log('Next renewal date:', commitment.renewalDate);}__CAPGO_KEEP_1__ expirationDate と isActive 特典決定のためのフィールドを使用してください。 commitmentInfo.expirationDate 購入者にフルコミットメントのタイムラインを説明するために使用してください。
App Store レビュー用メモ
「App Store レビュー用メモ」というセクション- 購入前に、繰り返し請求価格と合計コミットメント価格を表示してください。
- 購入ボタン近くでコミットメント期間を明示的に表示してください。
- __CAPGO_KEEP_2__
product.title,product.priceString,pricingTerms[].billingDisplayPrice__CAPGO_KEEP_3__pricingTerms[].commitmentInfo.priceStringStoreKitからハードコードされた価格の代わりに価格を取得してください。 - iOS 月額コミットメント請求計画で支払いと購入を計画する場合、@__CAPGO_KEEP_0__/native-purchasesと接続します。
関連ガイド
「関連ガイド」セクションiOS 月額コミットメント請求計画から進む
「iOS 月額コミットメント請求計画から進む」セクション__CAPGO_KEEP_0__/native-purchasesを使用している場合 iOS 月額コミットメント請求計画 __CAPGO_KEEP_0__/native-purchasesと接続する 使用中のcapgo/native-purchases native capabilityの使用に@capgo/native-purchasesを使用します。 Capgoの価格設定 native capabilityの製品ワークフローにCapgoの価格設定を使用します。 決済システム native capabilityの実装詳細に決済システムを使用します。 @capgo/native-purchases @capgo/native-purchasesの実装詳細を使用します。 Getting Started Getting Startedの実装詳細を使用します。