強力な顧客認証トランザクション

2022年3月14日以降、金融行動監視機構(FCA:Financial Conduct Authority)により、英国のユーザーを対象として強力な顧客認証(SCA:Strong Customer Authentication)が義務付けられます。これにより、英国のユーザーによるオンライン購入の手続きが影響を受ける可能性があります。この要件は、欧州経済地域(EEA:European Economic Area)のユーザーには、2020年12月31日以降にすでに適用されています。App StoreおよびApple PayはSCAに対応していますが、各デベロッパは、アプリにStoreKitおよびApple Payが実装されており、購入を適切に処理できることを確認する必要があります。

変更の内容

英国および欧州連合の規制では、詐欺等の不正防止のため、特定のオンライン購入にSCAを義務付けています。Webサイト、アプリ、App Storeでクレジットカードまたはデビットカードを使用したトランザクションを開始する場合、銀行またはペイメントサービスプロバイダによる認証を実施してからでなければ、トランザクションを完了することができません。

  • 自動更新サブスクリプションの場合は、初回のトランザクションのみSCAが義務付けられています。それ以降の更新は、この規制の対象外となり、適用されません。
  • €30未満または£25未満の購入では、SCAが不要な場合があります。
  • Apple Payを使用した購入の場合は、Apple PayがすでにSCAの要件を満たしているため、追加の認証は必要ありません。
  • キャリア決済その他の決済サービスApple IDの残高を使用した購入の場合、追加の認証は必要ありません。

StoreKitによるトランザクションの処理

アプリ内課金でSCAが必要な場合は、ユーザーにクレジットカードまたはデビットカードの認証を求めるメッセージが表示されます。購入フローは一時的に中断し、ユーザーは銀行またはペイメントサービスプロバイダのWebサイトまたはアプリに誘導され、そこで認証を行います。その後App Storeにリダイレクトされ、購入完了を知らせるメッセージが表示されます。このトランザクションの中断への対応方法は、承認と購入のリクエストを使用した購入(ファミリーオーガナイザーから購入への承認を得る必要がある場合)や、更新されたApp Storeの利用規約に同意しないと完了できない購入などの対応方法に類似しています。

トランザクションの中断にアプリが適切に対応するよう、トランザクションオブザーバを初期化し、新しいトランザクションに応答して保留中のトランザクションをAppleと同期させてください。このオブザーバにより、ユーザーがアプリから離れることでペイメントキューのステータスが「failed(失敗)」または「deferred(遅延)」に更新され、アプリがSCAのトランザクションに対応できるようになります。認証後にユーザーがApp Storeにリダイレクトされると、ステータスが「purchased(購入済み)」の新しいトランザクションがただちにオブザーバに通知されます。この際に、transactionIdentifierプロパティの値が新しくなることがあります。購入が中断されたトランザクションのテストは、特定のSandbox Apple IDのSandbox環境で行うことができます。

リソース

Apple Payによるトランザクションの処理

Apple Payには認証機能が組み込まれているため、銀行による追加の認証は必要ありません。ただし、アプリおよびWebサイトでのApple Payによる支払いの問題発生を防ぐため、ペイメントリクエストで正しい国コードを使用し、ペイメントシートに最終的な金額を表示するようにしてください。

アプリの場合はPKPaymentRequest、Webサイトの場合はApplePayPaymentRequestのリクエストに対するcountryCodeの値は、支払われる金額が処理される国に該当する、正確な2文字の国コードに設定する必要があります。国コードを正しく設定することで、マーチャントのcountryCodeとユーザーのカード発行会社の所在地がいずれも欧州経済領域(EEA)内である場合に、クリプトグラムをPSD2に準拠させることができます。

ペイメントシートには、未確定の金額ではなく、最終的な金額を表示してください。これは、トランザクションの金額とマーチャントIDがクリプトグラムに含まれている動的リンクで、トランザクションの発信元および正当性を証明する上で役立ちます。

Apple Payに関するドキュメントを見る