メインコンテンツへスキップ
このページで

カード分割決済により、顧客はサポートされているDEUNA環境で、1つの注文を複数のカードに分割できます。現在の公開SDKの例では、2つのカードを構成します。 behavior.paymentMethods.creditCard.splitPayments.maxCards.

チェックアウトで Split Payments を確認する#

次のデモは、顧客が DEUNA チェックアウト エクスペリエンスで 1 つの注文を 2 枚のカードに分割する様子を示しています。

Split Payments では、顧客が対応する複数のカードに注文合計を割り当てられます。 YouTube でデモを直接視聴する 埋め込みプレーヤーが利用できない場合。

視覚的な説明のためにデモを使用してください。バックエンドは、フルフィルメントの前にすべての試行を調整し、注文全体の状態を検証する必要があります。

決済フロー#

フロー図
1One merchant order2Card 1 amount andauthorization3Card 2 remainingamount andauthorization4-- Partial or failed5Verify final orderstate6Reconcile attemptsand show recovery
商社または顧客例外または停止結果またはアウトカム
01 · order
1つの注文を作成
合計と通貨をバックエンドで authoritative に保つ。
02 · widget
2つのカードを有効にする
分割動作をPayment WidgetまたはElementsに渡す
03 · customer
割り当てと送信
このエクスペリエンスは、金額を検証し、構成されたカードを処理します。
04 · backend
すべての試行を再調整
必要な最終状態に達するまで、決済は完了しません。

動作を有効にする#

await DeunaSDK.initPaymentWidget({
  orderToken,
  behavior: {
    paymentMethods: {
      creditCard: {
        splitPayments: {maxCards: 2},
      },
    },
  },
  callbacks,
});

WebとReact Nativeタイプは、動作オブジェクトを記述します。iOSとAndroidは、JSONと同じ公開形状を受け入れます。キーのスペルとネストを正確に保持してください。

イベントとコールバック#

信号使用する
onCardBinDetected / onBinDetected生のカードデータを収集することなく、アクティブなカードのBINを検出します。
onInstallmentSelected選択したプランオプションを、構成中のカードに関連付けます。
paymentMethodSplitPaymentsネイティブなElementsイベントは、分割決済のパスを示します。
paymentProcessing / onPaymentProcessing組み合わせ操作が実行中の間、重複操作をロックします。
purchase, purchaseError, purchaseRejectedクライアントライフサイクルのみ。常に注文と試行を再調整します。

クライアントイベントを合計して、財務結果を再構築しないでください。現在のバックエンドの注文とトランザクションレコードを使用してください。

失敗と復旧#

カード分割決済により、部分的な運用結果が生じる可能性があります。1つの試行が別の状態になる可能性があります。機能を使用する前に、復旧パスを設計してください。

シナリオ商社の動作
最初のカードが成功する前に失敗現在の注文の状態が、別の試行を許可する場合にのみ、注文を維持します。
1つのカードが成功し、もう1つのカードが失敗両方の試行を再調整し、新しいフル注文の決済を盲目的に送信しないでください。
顧客がフロー中に終了決済オプションを復元する前に、注文を取得します。
クライアントが接続を失う結果を不明と扱い、バックエンドからの応答を待ちます。
重複タップまたはリトライ既存の操作と、文書化されたアイデンポテンツ戦略を使用します。

テストマトリックス#

  • 正確な割り当てとサポートされている通貨精度で2つのカードを使用
  • 有効なカードで分割払いを使用し、無効なカードでは分割払いを使用しません。
  • 最初のカードと2番目のカードでそれぞれ拒否
  • カード間のバックグラウンド、リフレッシュ、またはネットワーク喪失。
  • 1つのカードを入力後、顧客によるアカウントの停止。
  • 遅い認証と繰り返し送信操作。
  • 最終的なウェブフックとAPIの状態が、顧客の確認画面と一致すること。