DEMO | 「ManaV(マナヴィー)」決済まわり(Stripe Connect)の実装イメージ ・ はちあ様の募集要項をもとに作成
キャンセル・返金

キャンセルと返金のルール

生徒都合のキャンセルは24時間前まで全額返金、24時間以内は原則返金なし。講師都合の場合は全額返金。シンプルですが、Stripe 上ではそれぞれ処理が違います。下のシミュレーターで確認できます。

🕐 生徒都合 / 24h以上前

全額返金。講師への送金はまだなので、決済を返金するだけ。

全額返金

⏳ 生徒都合 / 24h以内

原則返金なし。レッスンは実施扱いとなり、講師へ80%が支払われます。

返金なし

🎤 講師都合

時間にかかわらず全額返金。講師への支払いは行われません。次回クーポンを付与。

全額返金+クーポン

🛠 システム障害・講師no-show

全額返金+再予約クーポン。ManaV 負担でお詫び対応。

全額返金+補償

返金シナリオ・シミュレーター

レッスン料金 ¥3,500(講師へ80% = ¥2,800)を例に計算します。

※ ManaV は「レッスン完了+返金期限の経過後」に送金する設計なので、通常は「まだ」の状態でキャンセルを受けます。「送金済み」は例外対応の確認用です。

生徒への返金
講師への支払い
ManaV の負担/収益
Stripe 決済手数料の扱い

実行される処理:

    エッジケースの扱い

    ケースManaV の挙動関連する Stripe 処理
    決済は成功したが予約レコードが作られなかったWebhook で検知して予約を復旧。復旧不能なら自動全額返金+アラートpayment_intent.succeeded 受信時に予約を冪等 upsert
    同じ枠に二重予約が入った先着のみ確定。後発は即時全額返金し、他の枠を案内refunds.create(full)
    講師がオンボーディング未完了のまま予約された予約を受け付けない(payouts_enabled=false の講師は枠を公開しない)account.updated を監視して公開状態を制御
    レッスンが途中で切れた(回線不良など)実施時間・ログを確認し、半額返金または再レッスンを提示(部分返金)refunds.create({ amount }) + 送金額を調整
    生徒がカード会社に不正利用を申告(チャージバック)証跡(予約・出席ログ・通話記録の有無)を提出。確定したら講師送金を差し戻しcharge.dispute.createdtransfer_reversals.create
    返金したのに Stripe 決済手数料が戻らない少額のため原則 ManaV 負担。多発する講師にはヒアリングStripe の返金では決済手数料は返還されない(前提として設計)

    ※ ここに書いた挙動・金額はデモ用の想定です。実装時は Stripe の最新仕様と、確定した利用規約に合わせて調整します。