ConnectというCtoCプラットフォームを作るためのStripeのサービスがあります。3つのタイプがありまして、Standardがもっとも講師側にStripeを使いこなすリテラシーが求められるタイプ、Customが一番Stripeを意識させないことが可能なタイプとなっています。https://stripe.com/docs/connect/accounts2年前にCodeBoyを実装した時には、Customを選択しました。Expressも既に存在していたのかもしれませんが、今日ほど充実してなかったんじゃないかなという記憶です。Linksは2020年に発表されていました。Expressが一番開発コストが低く、それでいて講師側のユーザーにとってもフレンドリーだと感じたからです。CodeBoy2がどんなサービスか気になる方はこちらの記事をチェックしてみてください。実装やユーザー体験の流れ以下の記事に書かれてることでもありますが、私の方でも軽くまとめて紹介します。Account作成typeをexpressに指定して、アカウント(講師側)を作成します。Connectのアカウント(講師側)が送金を受け取るためには、本人確認が必要です。そのためのUIがStripeに用意されていて、これがAccountLinksです。このページへのリンクは以下のAPIで作れます。'account_onboarding',});作られたリンクに飛ぶと、以下のようにビジネス情報入力UIに飛びます。免許証やマイナンバーカードを使った本人確認(KYC)のUIも提供してくれていて、これを自分たちで実装するよりは、AccountLinksのUIでやった方が絶対に安全でシームレスなUI体験を作れると思いました。https://stripe.com/docs/api/account_links/create3情報入力が完了したかどうかを確認accountをAPIで取得するか、account.updatedをwebhookで検知してfirestoreを更新するなどして、アカウント(講師側)のステータスを確認することができます。この時に見るparameterがdetails_submittedです。https://stripe.com/docs/api/accounts/retrieve4生徒から講師へ決済するこちらの実装は以下の記事に書きました。Checkoutで行えば、こちらもUIを実装しなくて済みます。Checkoutのデモ↓5講師はExpress管理画面で売上を管理できる管理画面へのリンクは以下のAPIで取得できます。url;https://stripe.com/docs/api/account/create_login_linkこのリンクを実際にPCから開くと、以下のような感じになります。(ちなみにこれは本番環境です。CodeBoy2で実際にいくつかプランを買ってもらいました。Expressには専用アプリが用意されていて、以下のように金額を確認できます。https://apps.apple.com/us/app/stripe-express/id1560214813一連の実装は以上です。できるだけ自前実装せず、Stripeの機能を使いまくっています。Links等を使った際の一連のざっくりとした実装の流れと、体験の紹介をさせていただきました。CtoCサービスを作る際は参考にしてください。個別で僕に実装方法を聞きたい方がいましたら、Flutter大学に入会し、CodeBoy2で僕のメンタープランを買って聞いてください。いまなら30分3000円です。https://flutteruniv.comバッジを贈って著者を応援しようバッジを受け取った著者にはZennから現金やAmazonギフト券が還元されます。Linksのリンク作成3情報入力が完了したかどうかを確認4生徒から講師へ決済する5講師はExpress管理画面で売上を管理できるまとめZennエンジニアのための情報共有コミュニティAboutZennについて運営会社お知らせ・リリースGuides使い方Publicationよくある質問LinksTwitterGitHubメディアキットLegal利用規約プライバシーポリシ。