アプリ内課金

最新のSwiftベースのインターフェイスを使用して、追加のコンテンツやサービスをユーザーに提供します。

最新の英語ドキュメント

In-App Purchase

概要

In-App Purchase APIは、並行処理などのSwiftの機能を活用したもので、アプリ内課金のワークフローをシンプルにしてくれます。このAPIを使用することで、プロダクト情報の読み込み、アプリ内課金の表示、コンテンツやサブスクリプションへのアクセス管理、App Store署名付きのトランザクション情報の受け取りを行うことができます。このAPIは、非同期の操作にデリゲートオブジェクトを使用するのではなく、Swiftの並行処理機能を使って結果をインラインで返します。

In-App Purchase APIでは、以下のものが提供されます。

  • App StoreによるJSON Web Signature(JWS)フォーマットでの署名付きトランザクション情報

  • クライアントで簡単に解析することが可能なトランザクションおよびサブスクリプションステータス情報

  • エンタイトルメントAPIであるcurrentEntitlements。このAPIを使用すると、エンタイトルメントを評価して、ユーザーに対してコンテンツやサービスのロック解除処理が簡素化されます。

アプリでストアをサポートするには、以下の機能を実装します。

  • トランザクションリスナーのupdatesを使用してトランザクションステータスの変更を検知し、アプリの実行中に最新のサービスとコンテンツを提供します。

  • プロダクトリクエストのproducts(for:)を使用して、アプリで表示するプロダクトをApp Storeからリクエストします。

  • purchase(options:)を使用して、ユーザーがアプリ内プロダクトをApp Storeから購入できるようにします。

  • トランザクション関数のcurrentEntitlementsを使用してユーザーのアプリ内課金を順次処理し、購入されたコンテンツやサービスのロックを解除します。

  • オプションで、APIから受け取った署名付きのトランザクションや署名付きのサブスクリプションステータス情報を検証します。

App Store Connectでのアプリ内課金の構成

アプリ内課金を使用するには、まずApp Store Connectでプロダクトを構成する必要があります。アプリの開発状況に応じて、プロダクトを追加したり削除したりすることができ、また既存のプロダクトの改善や再構成を行うことができます。詳細については、「アプリ内課金を設定するためのワークフロー」を参照してください。

また、複数のプラットフォームで動作するアプリやアプリ内課金を、1回の購入で提供することもできます。ユニバーサル購入の詳細については、「ユニバーサル購入の提供」を参照してください。

トピック

プロダクトとサブスクリプション

トランザクションの履歴とエンタイトルメント

サブスクリプションステータス

JWS検証

App Storeのやり取り

ストアフロント

アプリ内課金のテスト

エラー

関連項目

アプリ内課金