ドラフト・オーダー (draft order) の決済処理

ハブ・レベルで「ドラフトについて決済処理を有効化」フラグを設定することにより、決済処理をドラフト・オーダー (draft order) に有効にすることができます。 これにより、ドラフト・オーダー (draft order) を確認する前にドラフト・オーダー (draft order) に対する支払いの処理が可能になります。

さらに、ドラフト・オーダー (draft order) の作成時に請求トランザクション・テーブルおよび支払ステータスにデータが設定されます。 このフラグは、デフォルトではオンです。 ドラフト・オーダー決済処理には、以下のフィーチャーが含まれています。

  • processOrderPayment API は、新規支払方法を受け入れ、持続します
  • 失敗した承認に関するエラー・メッセージを表示します
  • 失敗した支払方法を変更します
  • ドラフト・オーダー (draft order) に対する料金を無視します
  • 料金シーケンスに基づいて決済処理を実行します
  • 請求トランザクションを集約します

processOrderPayment API は、新規支払方法を受け入れ、持続します

processOrderPayment API は、オーダーに対する新規支払方法を受け入れ維持するために拡張されます。 これにより、オーダーについて無請求の支払方法および無許可の支払方法を修正したり、削除したりすることができます。

失敗した承認に関するエラー・メッセージを表示します

エラー・メッセージは、processOrderPayments API 出力 XML に返され、YFS_PMNT_TRANS_ERROR テーブルに格納されます。 決済処理が完了した後にエラー・メッセージを取り出すためには、getOrderDetails API を呼び出します。

失敗した支払方法を変更します

ドラフト・オーダー (draft order) に対する支払方法が承認に失敗した場合は、その支払方法を削除したり、修正したりすることができます。 この場合、オーダーの支払ステータスは「失敗」で、請求トランザクション・ステータスはエラーでなければなりません。 支払方法を変更するには、支払いキーと支払タイプを除き、支払方法の属性のいずれかを変更します。

ドラフト・オーダー (draft order) に対する料金を無視します

「ドラフトに対する料金を無視」フラグが有効であれば、このフラグを使用して、ドラフト・オーダー (draft order) に対する要請金額を計算するときに請求要請を無視することができます。 例えば、合計 $100 のドラフト・オーダー (draft order) に $20 のクレジット・カード (credit card) 承認と、$20 の小切手 (請求要請) がある場合、getOrderDetails API は $80 の要請金額を返します。 「ドラフトに対する料金を無視」フラグは、デフォルトではオフであり、ハブ・レベルで構成されます。 「ドラフトに対する料金を無視」フラグを構成する前に、「ドラフト・オーダー処理を有効化」フラグをオンに設定する必要があります。

料金シーケンスに基づいて支払処理を行います

processOrderPayment API で、各支払方法の料金シーケンスにより、ドラフト・オーダー (draft order) に対して処理される承認および料金の順序が決定されます。 デフォルトでは、支払方法は同等の料金シーケンスを持っているため、ランダムな順序で処理されます。

請求トランザクションを集約します

オーダーが変更されるたびに、請求トランザクション・レコードが作成されます。 このため、1 つのオーダーについて多くの請求トランザクション・レコードが存在することがあります。 confirmDraftOrder API は、1 つのオーダーについて、すべての請求トランザクション・レコードを単一のレコードに集約します。