カジノモバイルアプリへのPOLi統合


1)コンテキストと制限

POLi機能:預金のみ;出金-他の方法で(銀行/カード/財布)。
管轄区域:

オーストラリア:POLiの生産中止(2023年9月);オンラインカジノ/AU居住スロットは禁止されています(IGA 2001)。
ニュージーランド:ライセンスされた会場で利用可能なPOLi;モバイル統合は関連しています。
結論:以下は、使用が許可されている市場(NZおよびその他の法域)の技術図です。

2)建築関係の選択

A。リダイレクト/ホストペイメントページ(HPP)

クライアント→キャッシュデスクが支払いセッション→銀行(ブラウザ/アプリケーションバンク)にリダイレクト→「return_url」→webhook/pollingによる確認でリターンを作成します。
長所:最小PCI要件、安定したモデル、少ないリスク。
短所:アプリスイッチとリターンディープリンクの正しい処理に依存します。

B。 Server-to-Server+リダイレクト(ハイブリッド)

サーバーはPOLiプロバイダから支払いを作成し、モバイルクライアントはリダイレクトのみを開始します。最終的なステータスにはwebhookが付属しています。
長所:明確な和解、快適なリトレイ、バックエンドのidempotency。
短所:より多くのサーバロジック。

💡リダイレクトなしの完全な「純粋なAPI」は非現実的です。銀行認証は銀行に切り替える必要があります。

3)ユーザーフロー(モバイルUX)

1.現金デスク→POLi選択。
2.amount→create a payment session (txn\_ id、 state/nonce、 lifetime)を入力します。
3.App-switch:銀行(またはインターネットバンクのあるブラウザ)を開きます。
4.銀行login/2FA→振込確認。
5.アプリケーション→結果画面に'return_url '/deeplinkを返します。
6.バックエンドはWebhookを受け取り、入金を完了します。クライアントは、Webフックが遅れる場合に'txn_id'(プル確認)のステータスを要求します。

4) iOS特異性

ブラウザステップにはASWebAuthenticationSessionまたはSFSafariViewControllerを使用します。ダイレクトWKWebViewはクッキー/リダイレクトのために適していません。
Universal Links 'return_url';'scene(_:continue:)'で処理します。
セッションのタイムアウト≥ 10分、バックグラウンドモードは必要ありませんが、キャッシュレジスタの状態を保存する必要があります。
銀行が別のアプリケーションとして開いた場合は、フレンドリーなバックツーアプリのスクリプトを提供し、返却時にステータスを再取得します。

5)アンドロイド特異性

Webストリーミング用のカスタムタブが推奨されます。銀行アプリケーションの場合-'return_url'のインテントフィルタと検証済みのAppリンク。
結果処理-deeplink-activity;'onResume()'でステータスを再クエリします。
「アクティビティ」に支払いステータスを保存しないでください。構成変更が行われているViewModel/リポジトリを使用します。
銀行/アプリケーションが利用できない場合は、システムブラウザにフォールバックします。

6)統合の保証

TLSはどこにでもあり、保護されていないプロトコルを禁止しています。iOS ATS/Androidネットワークセキュリティ設定-有効。
CSRF/Replay-protection: 1回限りの'state'/'nonce'、リターンの和解。
Idempotency:支払いを作成するためのidempotency-key;再処理するwebhookは安全です。
Webhook:署名、固定送信IP(利用可能な場合)、指数休止付きの再試行、イベント\_idによる重複除外。
ログ:銀行ログイン/OTPをログインしないでください。PIIストアをマスクします:'txn_id'、リダイレクト/リターン時間、ステータスコード。
Root/Jailbreakシグナル:ビジネスルールに従って、ソフトな警告と高リスク操作のブロック。
返却URLの保護:プロバイダとアプリケーション側のホワイトリスト'return_url'。

7)状態の処理および間違いの抵抗

'processing'→'succeeded'/'failed'/'unknown'。
ユーザーが銀行/ブラウザを閉じた場合-画面を表示します「支払いを続ける/別の方法を選択します」。
'unknown':プレーヤーをブロックしない-注文を待機させ、バックエンドを再ポーリングし、Webhookを待ちます。
エラーコード(銀行が利用できない、制限、認証、ユーザーのキャンセル、タイムアウト)を標準化します。
小数点以下の確認を考慮してください(銀行がオフになっており、商人はまだ更新されていません)-これをUIで説明してください。

8)和解と財政

日々の和解:POLiプロバイダがデータベース↔報告します('merchant_ref'、金額、通貨、時間)。
「desynchrony」の別のキュー。手動ケース-バックオフィスのチリング。
「デポジット」ボーナスの場合-'succeeded'の後に発生します。for 'processing'/'unknown'-set hold。

9) UXボックスオフィス慣行(モバイルファースト)

目に見えるプログレスバーとタイマー「銀行セッションが期限切れになります……。」
ボタンの明確なコピー:「銀行に行く」、「確認-アプリケーションに戻る」。
明確な金額/通貨、リダイレクト前の制限の即時検証。
セービングの沈殿物の草案;アプリケーションが復元されたときにセッションを再開します。
可用性:VoiceOver/TalkBackラベル、十分なコントラスト、ダイナミックタイプ/フォントスケール。

10)限界、KYC/AML、責任

限度はPOLiではなく銀行とオペレーターによって設定されます。支払いを開始する前に利用可能な範囲を表示します。
KYC/AMLは方法に依存しません-音量/頻度チェックは同じです。高いリスク-手動検証。
責任あるプレイのポリシー:入金/一時停止の制限はPOLiでも利用できます。チェックアウト時に制限を管理するためのクイックリンクを追加します。

11)地域の特徴とフィッシュフラグ

AU: phicheflag/buildレベルでPOLiを無効にします。免責事項を表示します(サービスが利用できません;オンラインカジノは禁止されています)。
NZ: POLiを許可します。設定(リモートコンフィグ)から銀行/限度のリストを取得します。
ジオフェンシング、通貨/フォーマットのローカリゼーション、国内の商人のサーバー許可リスト。

12)テストマトリックスとQA

銀行:大銀行ごとに少なくとも1つのケースと2FAタイプ(SMS、プッシュ、トークン)。
プラットフォーム:iOS/Android、現在のメジャーバージョン、暗い/明るいテーマ、異なるロケール/言語。
障害シナリオ:銀行のキャンセル、期限切れのセッション、ネットワークブレイク、webviewの終了、誤ったdeeplink、 webhookの繰り返し。
負荷:ピーク時、webhookの遅れ、多くのretrays。

13)監視およびオペレーティングシステム

メトリクス:現金換算、CTR「銀行に行く」、平均「資金に時間」、「知らない」のシェア、Webhookレトレイの頻度、理由のための銀行の失敗。
アラート:webhookタイムアウト、'failed'サージ1回のサージ、'unknown'>しきい値の上昇。
インシデントランブック:メソッドの優先順位の切り替え、ユーザーへの通知、ステータスの強制ポーリング、死後。

14)統合が行わないこと

出金を追加しません。
銀行やオペレーターの限界を迂回しません。
KYC/AMLプロシージャおよび責任がある演劇を取り替えません。

[結果]

モバイルアプリケーションへのPOLiの統合は、正しいアプリスイッチ、リターンデープリンクの信頼性の高い処理、Webhookによる確認、厳格なidempotencyを備えたセキュアリダイレクト/HPPを中心に構築されています。安定性の鍵は、透明な状態、フレンドリーな回復シナリオ、本格的な和解です。オーストラリアでは、POLiは利用できず、オンラインスロットには適用されません。ニュージーランドでは、この方法は依然として機能しており、正確な技術的および法的設定でユーザーに迅速な入金を提供します。