コンテンツにスキップ

決済フロー設計

概要

tanomu-aiの決済は代理受領型を採用し、資金決済法の資金移動業登録を回避する。決済基盤には Stripe Connect(Express) を使用し、受注者への即時入金を実現する。

設計方針

項目決定事項
決済基盤Stripe Connect
ConnectアカウントタイプExpress
課金フローDestination Charges
手数料負担依頼者側に上乗せ(受注者の手取りは表示額どおり)
合計手数料率8%(tanomu-ai 4.4% + Stripe 3.6%)
検収自動承認完了報告から24時間
受注者への入金即時(tanomu-aiが自己資金で立替。Stripe Instant Payoutsは不使用)
tanomu-aiへの精算週次でStripeから受取
対応地域国内限定(MVP)

手数料モデル

依頼者の支払額 = タスク単価 × 1.08(合計手数料8%)

内訳: tanomu-ai手数料 4.4% + Stripe手数料 3.6%

受注者の受取額 = タスク単価(そのまま)

タスク単価依頼者支払 (8%)Stripe 3.6%tanomu-ai取り分 (4.4%)受注者の受取額
500円540円約19円21円500円
1,000円1,080円約38円42円1,000円
3,000円3,240円約113円127円3,000円

手数料率の設定

手数料率はキャンペーン施策等で変更しやすいよう、環境変数で定義する。

環境変数説明デフォルト値
PLATFORM_FEE_RATEtanomu-ai手数料率(Stripe手数料を除く)0.044
STRIPE_FEE_RATEStripe手数料率(参照用。実際はStripe側で決定)0.036
TOTAL_FEE_RATE依頼者に提示する合計手数料率0.08

依頼者への請求額は TOTAL_FEE_RATE から算出し、tanomu-aiの取り分は TOTAL_FEE_RATE - STRIPE_FEE_RATE で決まる。

資金フロー

依頼者のカード ──→ Stripe ──→ 受注者のConnectアカウント(即時入金)
└──→ tanomu-aiプラットフォームアカウント(週次精算)

立替モデルのため、tanomu-aiは検収完了時に自己資金から受注者へ即時入金し、Stripeからの週次入金で回収する。Stripe Instant Payoutsは使用せず、tanomu-aiからの振込で即時性を実現する。これにより Instant Payouts の追加手数料(約0.5%)が不要となる。最大7日分の報酬に相当する運転資金が必要。


正常系フロー

依頼者 tanomu-ai Stripe 受注者
│ │ │ │
│ ① タスク投稿 │ │ │
│─────────────────────→│ │ │
│ │ ② オーソリ(与信確保)│ │
│ │────────────────────→│ │
│ │ 与信OK │ │
│ │←────────────────────│ │
│ │ │ │
│ │ (マッチング・タスク実行) │
│ │ │ │
│ │ │ ③ 完了報告 │
│ │←────────────────────────────────────────│
│ │ │ │
│ ④ 検収依頼 │ │ │
│←─────────────────────│ │ │
│ ⑤ 検収承認 │ │ │
│─────────────────────→│ │ │
│ (または24h経過で │ │ │
│ 自動承認) │ │ │
│ │ ⑥ キャプチャ(実課金)│ │
│ │────────────────────→│ │
│ │ │ │
│ │ ⑦ 受注者に即時入金(tanomu-ai立替) │
│ │────────────────────────────────────────→│
│ │ │ │
│ │ ⑧ 週次精算 │ │
│ │←────────────────────│ │

ステップ詳細

  1. タスク投稿(①): 依頼者がAPIまたはUI経由でタスクを投稿。報酬額・業務内容・納期を設定。
  2. オーソリ(②): 依頼者のクレジットカードに与信枠を確保。実課金は検収後まで行わない。オーソリの有効期限は7日間(Stripe標準)。タスクの最大実行期間もこれに合わせる。
  3. 完了報告(③): 受注者が成果物を提出し、タスク完了を報告。
  4. 検収依頼(④): 依頼者(AIエージェント)に検収を依頼。
  5. 検収承認(⑤): 依頼者が成果物を承認。AIエージェント経由の場合は即時自動検収を想定。未応答の場合は24時間で自動承認
  6. キャプチャ(⑥): 検収完了をトリガーに、オーソリ済みの金額を実課金。
  7. 即時入金(⑦): tanomu-aiが自己資金から受注者の銀行口座に即時振込(Stripe Instant Payoutsは不使用)。
  8. 週次精算(⑧): Stripeからtanomu-aiのプラットフォームアカウントに週次で売上を入金。

異常系フロー

タスクキャンセル(open → cancelled)

  • 受注者が未確定の段階
  • オーソリを解放するだけで実課金は発生しない
  • 受注者への支払いなし
  • 依頼者のみキャンセル可能

タスクキャンセル(accepted → cancelled)

依頼者 tanomu-ai Stripe
│ キャンセル要求 │ │
│────────────────────→│ オーソリ取消 │
│ │────────────────────→│
│ 完了 │ │
│←────────────────────│ │
  • 依頼者・受注者の双方がキャンセル可能
  • オーソリを解放するだけで実課金は発生しない
  • 受注者への支払いなし
  • 受注者がキャンセルした場合、タスクは open に戻すか cancelled にするかは運用判断

タスクキャンセル(in_progress → cancelled)

  • 受注者が作業を開始しているが未完了の場合
  • 依頼者・受注者の双方がキャンセル可能
  • 依頼者都合の場合: 全額支払い(キャプチャを実行し、受注者に全額を即時入金)
  • 受注者都合の場合: 支払いなし(オーソリを解放)
  • 依頼者都合のキャンセル率が高い場合、アカウント制限を検討

タスク期限切れ(open → expired)

  • 受託期限(expires_at)を過ぎたタスクは自動で expired に遷移
  • オーソリを解放
  • cancelled とは別の終了状態(誰の責任でもない自動失効)

検収不合格

依頼者 tanomu-ai 受注者
│ 不合格(理由付き) │ │
│─────────────────────→│ 再作業依頼 │
│ │────────────────────→│
│ │ │
│ │ (再提出 or 紛争申立)│
│ │←────────────────────│
  • 不合格の場合、受注者は1回まで再作業可能
  • 再作業後も不合格の場合、紛争解決フローに移行
  • オーソリは検収完了まで維持(7日間の制約に注意)

紛争解決

当事者 tanomu-ai
│ 紛争申立 │
│─────────────────→│
│ │ 事実確認・証拠収集
│ │
│ 裁定通知 │
│←─────────────────│
  • 1,000円以下: tanomu-aiが自動裁定(依頼者に全額返金 or 受注者に全額支払い)
  • 1,000円超: サポートが介入して個別判断
  • 裁定に不服がある場合の最終手段は当事者間の民事解決(利用規約に明記)

オーソリ期限切れ

  • タスクの実行がオーソリ有効期限(7日間)を超えた場合
  • 再オーソリを試行し、失敗した場合はタスクを強制キャンセル
  • 受注者が作業中であった場合は、作業途中キャンセルと同様の扱い

立替振込失敗

  • 受注者の銀行口座情報に問題がある場合
  • 振込を保留し、受注者に口座情報の更新を依頼
  • 3日以内に解決しない場合、サポートが介入

運転資金の見積もり

立替モデルのため、常時プールしておく運転資金が必要。

段階日次取引量平均単価日次立替額必要運転資金(7日分)
MVP初期10件/日1,000円1万円7万円
成長期100件/日1,000円10万円70万円
拡大期1,000件/日1,000円100万円700万円

Stripe Connect構成

アカウント構造

tanomu-aiプラットフォームアカウント(Stripe通常アカウント)
├── 受注者A(Express Connectアカウント)
├── 受注者B(Express Connectアカウント)
└── ...

受注者オンボーディング

  1. tanomu-aiアプリ内で「報酬を受け取る」設定を開始
  2. Stripe Express Onboardingフローにリダイレクト
  3. 本人確認(身分証明書)・銀行口座情報を登録
  4. 完了後、tanomu-aiアプリに戻る

APIフロー概要

# ① オーソリ(タスク投稿時)
POST /v1/payment_intents
amount: タスク単価 + 手数料
capture_method: manual
transfer_data[destination]: 受注者のConnectアカウントID
# ② キャプチャ(検収完了時)
POST /v1/payment_intents/{id}/capture
# ③ 即時入金(検収完了時)
# tanomu-aiの自己資金から受注者の銀行口座に振込
# Stripe Instant Payoutsは使用しない(立替モデルのため不要)
POST /v1/transfers
amount: タスク単価
destination: 受注者のConnectアカウントID
# tanomu-aiプラットフォームアカウントから受注者へ

法的整理

代理受領型の構造

利用規約において以下を明記する:

  1. 受注者はtanomu-aiに対し、依頼者から支払われる代金を代理して受領する権限を付与する
  2. tanomu-aiが代金を受領した時点で、依頼者の受注者に対する支払い義務は消滅する
  3. tanomu-aiは受領した代金を、所定の手数料を控除せず、受注者に速やかに支払う(手数料は依頼者負担のため控除なし)

立替との整合性

  • 検収完了時点でtanomu-aiが代理受領権限に基づき代金債権を取得
  • 受注者への即時支払いは代金債権の早期精算と位置づける
  • Stripeからの入金は債権回収

注意: この法的整理は弁護士による確認を推奨する。


制約・前提

  • 国内限定: クロスボーダー収納代行に該当するリスクを回避するため、MVP段階では国内の依頼者・受注者のみ対応
  • オーソリ有効期限: 7日間。タスクの最大実行期間はこれに合わせて設計する
  • 即時入金: tanomu-aiの自己資金から立替振込するため、Stripe Instant Payoutsの銀行対応制限に依存しない
  • 60日ルール: フリーランス新法により、成果物受領から60日以内の支払いが義務。即時入金モデルでは問題にならない

参考ドキュメント