アプリ内購入
Microsoft Teams は、アプリ内購入を実装して無料から有料の Teams アプリにアップグレードするために使用できる API を提供しています。 アプリ内購入を使用すると、ユーザーをアプリから直接無料プランから有料プランに変換できます。
アプリ内購入では、ユーザーは新しい有料サブスクリプションを購入でき、既存の有料サブスクリプションで追加または異なるライセンスを購入することはできません。 プランを切り替えるには、アプリ内購入で新しいサブスクリプションを購入する前に、既存のユーザー サブスクリプションを取り消す必要があります。
注:
アプリ内購入は、 個人用アプリ コンテキストでのみサポートされます。
アプリ内購入の実装
アプリ内購入エクスペリエンスをアプリのユーザーに提供するには、次の情報を確認します。
アプリは、 Microsoft Teams JavaScript クライアント ライブラリ (TeamsJS) を使用して構築されています。
アプリは、トランザクション可能な SaaS オファーで有効になっています。
アプリは RSC アクセス許可で有効になっています。
アプリは
openPurchaseExperience
API で呼び出されます。
アプリ内購入エクスペリエンスは、manifest.json
ファイルを更新するか、[開発者ポータル] の [アクセス許可] セクションから [アプリ内購入オファーを表示] を有効にすることで有効にできます。
マニフェストを更新する
アプリ内購入エクスペリエンスを有効にするには、開発者ポータルの [アクセス許可] セクションから RSC の permissions.se オファーを追加して、Teams アプリの manifest.json
ファイルを更新します。 これにより、アプリユーザーはアプリの有料バージョンにアップグレードして、新しい機能の使用を開始できます。 アプリ マニフェストの更新プログラムは次のとおりです。
"authorization": {
"permissions": {
"resourceSpecific": [
{
"name": "InAppPurchase.Allow.User",
"type": "Delegated"
}
]
}
}
購入エクスペリエンス API
アプリのアプリ内購入をトリガーするには、Web アプリから openPurchaseExperience
API を呼び出します。
次のコード スニペットは、Microsoft Teams JavaScript クライアント ライブラリを使用してビルドされた Teams アプリから API を呼び出す例です。
<div>
<div class="sectionTitle">openPurchaseExperience</div>
<button onclick="openPurchaseExperience()">openPurchaseExperience</button>
</div>
</body>
<script>
function openPurchaseExperience()
microsoftTeams.initialize();
let callbackcalled = false;
microsoftTeams.monetization.openPurchaseExperience((e) => {
console.log("callback is being called");
console.log(e);
if (!!e && typeof e !== "string") {
alert(JSON.stringify(e));
}
return;
});
console.log("after callback: ",callbackcalled);
}
</script>
次のステップ
Platform Docs