Stripe Connectの仕組みをわかりやすく解説【アカウントタイプと決済フロー】

アイキャッチ画像
  • Stripe Connectの仕組みとは?
  • アカウントタイプと決済フローの関係とは?

本記事ではこのような疑問を解決します。

本店と支店のように各エンドポイントでの支払いを中央で一括管理したいという場面ってありますよね。

例えば、複数の子アカウントで行われる支払い処理を親アカウントが管理したい場合です。

そんな時に便利なのがStripe Connectなのです。


そこで今回はStripe Connectの仕組みをわかりやすく解説します。

Stripe Connectとは?

Stripe Connectとは、Stripe公式HPを見てみると、「ソフトウェアプラットフォームやマーケットプレイスに支払いを組み込むための最短かつ簡単な方法」と記述されています。

少しわかりにくいですが、簡単にいうと、「Stripeアカウント(親アカウント)の、子アカウントを作る仕組み」のことです。

子アカウントを作ることによって、その子アカウントで受け付けた支払いを親アカウントが管理できるようになります。

例えば、Amazonや楽天に出店しているお店が、後日Amazonや楽天から売上金の入金を受けるといったイメージです。

ちなみに、本記事ではプラットフォームアカウントを「親アカウント」として説明していきます。

Stripe Connectのアカウントタイプは3つ

Stripe ConnectではConnectアカウントというものを使用します。

これがいわゆる”子アカウント”です。

そして、このConnectアカウントにはアカウントタイプが3つあるのでそれぞれ解説していきます。

と、その前にアカウントタイプによって何が違うのかというのをこちらで確認しましょう。

アカウントタイプ間での違いは主に以下の2つです。

・親アカウントと子アカウント間の連携自由度

・子アカウント自身のユーザー体験(ダッシュボードなど)

ちなみに、次から説明していくアカウントタイプですが、Standard → Express → Customの順でカスタマイズ性は高くなります。

さらに、よく勘違いされますが、カスタマイズ性とは親アカウントにとってのカスタマイズ性なのでこれを意識してください。

Standard

Standardは、子アカウント自身がStripeのフォーム上でアカウントの作成やダッシュボードによる決済管理をするアカウントです。

親アカウントは、OAuth(複数のWebサービスを連携させる仕組み)のStripe組み込みを実装するだけで、決済処理を開始できます。

ただ、Standardはカスタマイズ性が低いため、例えば子アカウントへの入金タイミングや分配比率などを変更できません。

Express

Expressは、子アカウントの設定やフォームを親カウントがある程度カスタマイズできるアカウントです。

ExpressはStandardと次に説明するCustomの中間に位置するアカウントです。

つまり、「Standardよりはいろいろ自由にできるけど、Customほど完全自由にはカスタマイズできないよ」というアカウントです。

Custom

Customは、決済処理や本人確認、売上の入出金手続きなど、Stripeに関するすべての設定やユーザー体験をカスタマイズできるアカウントです。

Customではカスタマイズ性がグンっとあがるため、プログラミングの知識が必要になります。

決済フローは3パターン

アカウントタイプのあとは、決済フローを解説します。

決済フローも3パターンあります。

Direct charge

Direct chargeは「顧客と子アカウント間で直接決済を行い、決済額の一部を親アカウントへ送金する」 という決済方式です。

このパターンでは、子アカウントが決済に対しての責任を持つことになるため、決済手数料の負担や返金対応は子アカウント自身が行います。


→Standardアカウントにおすすめ

Destination charge

Destination chargeは「プラットフォームに対して支払いが行われ、送金先子アカウントへいくら配分するかを決める」 という決済方式です。

このパターンでは、親アカウントが決済に対しての責任を持つため、決済手数料の負担や返金対応は親アカウントが行います。


→Customアカウントにおすすめ

Separate Charges and Transfers

Separate Charges and Transfersは「決済と送金を分けて行う」 という決済方式です。

具体的には、親アカウントに対して支払いが行われ、親アカウントが任意のタイミングで、任意の子アカウント(複数可)に送金する、という仕組みになります。

このパターンでは、親アカウントが決済に対しての責任を持つため、決済手数料の負担や返金対応は親アカウントが行います。


→Customアカウントのみ利用可能

支払い処理組み込みの3パターン

Stripe Payment Links

Stripe Payment Linksは、Stripe支払いページのリンクを埋め込むor共有することで、自前のWebサイトなしで支払いを受け付けるパターンです。

この方法を使えば、Stripeサイトのみで支払いの処理が完結できます。

また、支払いページのリンクをクリックすることで支払い画面が表示され、支払いの処理を完了できます。

Stripe Checkout

Stripe Checkoutは、自前のWebサイトが必要となり、支払いはStripeがオンラインで提供するチェックアウトページで行うパターンです。

Stripeのページへは自サイトからリダイレクトを行なってアクセスします。

そのため、リダイレクト前のページや支払い処理後のページを自分で作成する必要があります。

したがって、顧客は支払い時のみStirpeサイトを利用することになります。

Stripe Elements

Stripe Elementsは、カスタマイズ可能なUIコンポーネントをWebサイトまたはモバイルアプリ (iOS or Android)に組み込んで顧客から支払い情報を入力してもらうパターンです。

このパターンではStripe Payment Links、Stripe CheckoutのようにStripeがオンラインで提供するページを一切利用しません。

したがって、顧客は1つのWebサイト上で支払い処理を完了できます。

まとめ

以上がStripe Connectの仕組みになります。

よく迷うのがアカウントタイプの選択ですが、どんな決済フローを構築するかを判断基準にすると良いでしょう。


本記事があなたのお役に立てれば幸いです。

関連記事

DjangoでStripeの決済機能を実装する方法とは?StripeのPayment Intentの使い方とは? 本記事ではこのような疑問を解決します。Webアプリを開発する際に、決済機能の実装はほぼマストです。そんな決済機能の実装[…]

アイキャッチ画像

実務1年未満でもOK!フリーランスエンジニアの案件獲得方法はこちら!

必読

フリーランスエンジニアが案件獲得方法とは?自ら営業せずに案件を獲得するには?実務経験1年未満でも大丈夫なの? 本記事ではこのような疑問を解決します。これからフリーランスエンジニアとして独立したい方は、兎にも角にも案件の獲得が急務です[…]

アイキャッチ画像