この機能が必要な理由
今回のリリースまでは、複数の当事者のために1件の支払いを回収するプラットフォームは、全額を1つの Payments Account で受け取っていました。その後、支払いが届いてから各当事者の取り分を計算し、自分で資金を移す必要がありました。そのため消込の手間が増え、各当事者に資金が届くまでに時間がかかり、プラットフォーム手数料を受け取る仕組みも用意されていませんでした。 この機能では、Hello Clever が Payin の一部として支払いを配分します。各 Allocation Account の取り分はそれぞれの残高に反映されて元の Payin に紐づき、プラットフォーム手数料は Collecting Payments Account に残ります。着目すべきサイン
次のいずれかに当てはまる加盟店は、この機能に適している可能性があります。
加盟店は事前準備の条件も満たす必要があります。残高モデルはオンボーディング後に変更できないため、Aggregated Balance を利用する加盟店はこの機能を使えません。
事前準備
加盟店に手順を案内する前に、次の3点をすべて確認してください。- Dedicated Balance。 Merchant Portal で Payments Accounts > All Balances を開きます。Dedicated Balance のアカウントでは、ページタイトルの下に Dedicated balance と表示されます。
- 対応通貨。 Fund splitting は AUD、USD、JPY、VND、ARS、IDR、INR、KES で有効化できます。
- その通貨で fund splitting が有効になっていること。 Hello Clever が通貨ごとに有効化します。有効になっていない場合、すべてのリクエストが
Fund splitting is not enabled for this currencyで失敗します。
加盟店の利用開始手順
1
ステップ1: 支払いを回収する Payments Account を作成する
加盟店は Merchant Portal の右上にある Create account をクリックし、顧客の支払いを回収するための Payments Account を追加します。これが Collecting Payments Account です。加盟店は、このアカウントの
app-id と secret-key を使って Payin を作成します。2
ステップ2: Allocation Accounts を作成する
加盟店は、取り分を受け取る当事者ごとに Payments Account を1つずつ追加します(たとえば販売者ごとに1つ)。これも Create account から行います。どのアカウントも Collecting Payments Account と同じ通貨である必要があります。新しいアカウントは All Balances 画面の Payments Accounts の表に、ステータス Active で表示されます。Allocation Accounts を一覧するには、Collecting Payments Account の
app-id と secret-key を使って Get Allocation Recipient Accounts を呼び出します。レスポンスには各アカウントの account_uuid が含まれます。Collecting Payments Account は配分を受け取れないため、一覧には含まれません。3
ステップ3: allocation profile を設定する
allocation profile は Merchant Portal で作成します。
- 通貨を選び、Payments Accounts > All Balances を開いて Manage allocation profiles をクリックします。Allocation Profiles の一覧に、各 profile とそのステータスが表示されます。
- Allocation Profiles の横にある + をクリックします。
- General で Profile name を入力します。
- Allocation Rules で Platform fee を入力します。取引金額に対する割合に、profile の通貨での任意の固定額を加えたものです。割合のみの手数料にする場合は、固定額を
0.00のままにします。 - Recipients で、スロットごとに Allocation share を入力します(Recipient 1、Recipient 2 など)。1つの profile に設定できるスロットは最大5つです。配分率はそれだけで合計 100% にする必要があります。プラットフォーム手数料は先に差し引かれ、この合計には含まれません。配分率は手数料を差し引いた残りを分けるものです。ここではアカウントを選びません。アカウントはステップ4の API 呼び出しで指定します。
- Live Preview を確認します。一般的な Transaction amount を入力し、加盟店が受け付ける Payment method を1つずつ選びます。対象は PayID、Visa、Mastercard、American Express (Amex)、Diners(それぞれ国内と海外)と Other card です。各手段に Processing fee が表示されます。Collecting Payments Account のパネルには、各受取先への配分額、Platform fee collected、Processing fee、Amount (Net) が表示されます。各受取先のパネルには Transaction amount と Amount (Net) が表示されます。
- Save をクリックします。profile が一覧に Active として表示されます。
- profile を選び、Profile ID(
map_...)の横にあるコピーアイコンをクリックします。加盟店はステップ4でこの ID を使います。
今回のリリースでは、保存した profile を編集できません。Edit ボタンは使用できません。配分を変更するには、新しい profile を作成し、古い profile の Deactivate をクリックします。無効にした profile は新しい Payin に使えません。
4
ステップ4: API で支払いを処理し、資金を配分する
加盟店は Collecting Payments Account のキーを使い、各 v2 Payin または各 Payment Gateway 3 の決済リンクに
allocation_profile オブジェクトを追加します。uuid: ステップ3の Profile ID です。profile は Active で、Payin と同じ通貨である必要があります。recipients: ステップ2のaccount_uuidを、スロットの順番どおりに指定します。最初のアカウントが Recipient 1 の取り分を受け取ります。スロットごとに Allocation Account をちょうど1つ、それぞれ1回だけ指定し、Collecting Payments Account は指定しません。
allocation_profile に、適用された配分が返されます。決済リンクの場合は、顧客の支払い後に表示されます。まずサンドボックスで一連の流れを加盟店にテストしてもらってください。リクエスト、レスポンス、サンドボックスでのテストの全体は Split Payins with Platform Fees を参照してください。結果の確認
たとえば、プラットフォーム手数料 5%、固定額 AUD 2.00、Recipient 1 を 40%、Recipient 2 を 60%(40 + 60 = 100)に設定した profile では、AUD 1,000.00 の PayID の Payin は次のように配分されます。
加盟店に表示される内容:
- Allocation Accounts: 各取り分は、そのアカウントの履歴に独立した Payin として表示され、元の Payin に紐づきます。Allocation Accounts には個別の Webhook は送信されません。
- Collecting Payments Account: 受け取ったプラットフォーム手数料とともに元の Payin が表示されます。Webhook は、通常の Payin と同様にこのアカウントのエンドポイントに送信されます。
- カード決済: カードへの請求後、カードブランドと決済手数料が判明した時点で配分が表示されます。銀行振込、PayID、QR などカード以外の Payin は、Payin の作成時に配分されます。
- 精算: 各 Payments Account が自分の残高を精算します。