メインコンテンツまでスキップ

アプリ内無効化購入の検証

当社のサービスは、ユーザーによってキャンセルされたトランザクションや、支払い処理中の予期しない問題によるトランザクションを含む無効化購入 (Voided Purchases) へのアクセスを提供します。無効化購入を正しく連携することで、ユーザーに購入に関する最新かつ正確な情報を提供し、シームレスなエクスペリエンスを確保できます。

このガイドでは、無効化購入をアプリに連携するために必要な手順を順を追って説明し、効率的かつ安全に処理するためのヒントを提供します。


無効化購入が重要な理由

無効化購入を効果的に処理することで、以下のようにユーザーエクスペリエンスが向上します。

  • 購入が無効化された後 (返金、キャンセルなど) に、プレミアムコンテンツへのアクセスを防止します。
  • アプリ、バックエンド、ユーザーのアカウント間で購入記録の同期を維持します。
  • ストアポリシーに準拠し、潜在的な問題を回避します。

無効化購入とは何ですか?

無効化購入とは、Aptoide Connect またはユーザーによって返金またはチャージバックされたトランザクションを指します。これには以下が含まれます。

  • Aptoide Connect によって発行された返金。
  • キャンセルされたサブスクリプションまたはアプリ内購入。
  • 支払いエラーの影響を受けたトランザクション。

無効化購入の連携ガイドライン

無効化購入機能を正しく連携するには、以下のベストプラクティスに従ってください。

1. 無効化購入を管理するバックエンド API

  • 各ユーザーの処理済み無効化購入を管理するバックエンド API を実装します。これは、ユーザーが無効化購入に関する重複した通知や警告を受け取らないようにするために重要です。

2. 無効化購入をユーザーに通知する

  • 購入が無効化されたときに、ユーザーに知らせる明確で親しみやすいメッセージを表示します。専門用語の使用を避け、ユーザーに役立つコンテキストを提供してください。
  • メッセージ例: 「最近の購入がキャンセルされ、プレミアム機能へのアクセスが取り消されました。」

3. ローカルおよびバックエンドの購入記録を更新する

  • 購入履歴の不一致を避けるために、無効化された購入をローカルデータベースとバックエンドで無効化済み (voided) としてマークします。
  • 無効化購入に関連するプレミアムコンテンツ、サブスクリプション、または機能へのアクセスを取り消します。
  • 意図せずにユーザーにプレミアムコンテンツへのアクセスを与えることを避けるために、ローカルとサーバーの両方で購入状態を必ず更新してください。

4. サブスクリプション固有の処理

  • サブスクリプションの場合、無効化時にすぐにではなく、サブスクリプションの有効期限後にのみアクセスを取り消します。これにより、正当で部分的に使用されたサブスクリプションを持つユーザーが早すぎる時点でペナルティを受けないようにします。

実装

アプリケーションの無効化購入を取得するには、以下の手順に従ってください。

  1. 当社のサービスに無効化購入をリクエストします。
    1. 提供されたクエリパラメータを正しく使用して、すでに処理済みのデータを受信しないようにします
  2. VoidedPurchase モデルの orderId パラメータを使用して、無効化購入をユーザーにリンクします。
  3. 受信した無効化購入のステータスについてユーザーに通知します。

次に、無効化購入サービスを API と連携する手順に進みます。

1. 無効化購入をリクエストする

アプリケーションの無効化購入をリクエストするには、当社の無効化購入エンドポイントに従ってください。

無効化購入リクエストの実装

import requests

package_name = "com.example.app"
void_purchases_url = f"https://api.catappult.io/productv2/8.20240101/google/inapp/v3/applications/{package_name}/purchases/voidedpurchases"
response = requests.get(void_purchases_url)
response = response.json()
for voided_purchase in response["voidedPurchases"]:
order_id = voided_purchase["orderId"]
print(f"Handling voided purchase with order id {order_id}")
# Handle your voided purchase here

2. 受信した無効化購入を処理する

サービスから結果を受信したら、カスタムビジネスロジックを適用できます。

3. 無効化購入についてユーザーに通知する

無効化購入をリンクした後、支払いステータスについてユーザーに通知します。


FAQ

この API から受信できる可能な値は何ですか?

利用可能なデータは、エンドポイントのドキュメントで確認できます。