コンテンツにスキップ
アカウント作成/サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成サインイン
導入方法
決済管理
売上管理
プラットフォームとマーケットプレイス
資金管理
開発者向けリソース
API & SDKヘルプ
概要すべての商品を見る
API について
    API ツアー
    Payment Intents API
    Setup Intents API
    PaymentIntents と SetupIntents の仕組み
    Payment Methods API
    Payment Records API
    商品と価格
構築を開始する
アカウントを作成する
クイックスタート
開発の開始
LLM を活用して構築
ノーコードで Stripe を使用する
Stripe に移行
一般的なユースケース
概要スタートアップとしてシンプルな決済を受け付けるSaaS スタートアップとしてサブスクリプションを販売する使用量ベースの料金設定でサブスクリプションソリューションを構築する対面支払いを受け付ける請求書を送信して支払いを回収する
アメリカ
日本語
ホーム導入方法About the APIs

Stripe API の概要

Stripe API オブジェクトがどのように連携するか、またその組み合わせのベストプラクティスについてご紹介します。

Customers v1 と Accounts v2 のリファレンスを比較する

顧客が Accounts v2 の事業体に該当する場合は、ガイドを参照して、コード内の Customer とイベントの参照先を、同等の Accounts v2 API リファレンスに置き換えてください。

Stripe API は、使い方がわかると、強力で柔軟なツールとなります。この API の説明では、API の理解を深めるために重要な情報をご紹介します。

  • API 全体で使用される中心となる概念
  • 成功する支払いの道筋
  • 役割を果たすオブジェクトと、それらが必要な場合の特定方法
  • これらのオブジェクトを組み合わせて使用するための共通パターンとベストプラクティス

これらのパターンを理解すると、Stripe のチュートリアルにある事前に作成されたコードを超える機能を実現できます。以前の組み込みを移行して、最新のパターンを使用し、シンプルなパターンを新しい方法で組み合わせ、さらに将来の成長に向けて計画を立てることができます。

中心となる概念

すべてがオブジェクト

API を使用して作成したかに関わらず、Stripe アカウントのすべての要素はオブジェクトです。たとえば、残高は Balance (残高) オブジェクトに対応し、顧客は Customer (顧客) オブジェクトで追跡され、支払いの詳細は PaymentMethod (支払い方法) オブジェクトに保存されます。

ローコードまたはコーディング不要の組み込みでも、これらのオブジェクトは生成されます。ダッシュボードで実行したアクションについても同様です。たとえば、ダッシュボードで顧客を手動で作成した場合でも、Customer オブジェクトが作成されます。

オブジェクトはリアルタイムで変化する

Stripe の組み込みは複雑なプロセスに対応します。

API は 1 つのオブジェクトを使用して各プロセスを追跡します。プロセスの開始時にオブジェクトを作成し、それぞれのステップの後で status を参照して、次に実行する必要のある操作を確認できます。これは「ステートマシン」と呼ばれることがあります。

たとえば、決済の完了時に顧客が複数の支払い方法を試す場合があります。1 つの支払い方法が失敗すると、requires_payment_method の status が、顧客に別の支払い方法をリクエストするようお客様に知らせます。

組み込みは連携オブジェクトで構成される

決済を受け付けるために、システムは複数のコアオブジェクトを作成し、複数の状態を使用してコアオブジェクトを管理する必要があります。

Stripe の組み込みは、Stripe とやり取りしてこのような作成と管理を処理するシステムです。

実装によっては、顧客の追跡、サブスクリプションの管理など、さらに多くの機能を実行します。それでも、中心となる決済機能は同じオブジェクトとステップから提供され、そのコアの周りにさらにオブジェクトが追加されます。

決済オブジェクト

Stripe は、決済を円滑化するためにさまざまな関連オブジェクトを使用します。特定のニーズに合った実装を構築する前に、これらのオブジェクトがどのように連携するかを理解しておく必要があります。

決済オブジェクトの役割と機能の概要を説明しているこのビデオをご覧ください。

動画コンテンツの読み込み中...

Stripe の決済の導入オプションの詳細については、以下のガイドをご覧ください。

  • Payment Links
  • Checkout
  • Subscriptions
  • Invoicing
  • Payment Intents

支払いの道筋

最新の Stripe の導入では、決済ごとに PaymentIntent (支払いインテント) と呼ばれるオブジェクトが使用されます。名前のとおり、このオブジェクトは支払いを回収するお客様の「意図」を示し、これを実行する過程の各ステップを追跡します。

たとえば、顧客がカートに 100 USD の商品を入れて購入ボタンをクリックするとします。まだ顧客の購入前であり、購入されない可能性もあります (ある時点で顧客が決済フローを中断したり、カード発行会社が支払いを拒否する場合など)。それでも、購入をクリックすることで顧客の購入する「意図」が示され、お客様にはこれをサポートする意思があります。この時点で、組み込みは金額が 100 USD の PaymentIntent オブジェクトを作成し、残りのプロセスを追跡します。

成功する PaymentIntent の道筋はいくつかのステータスを遷移します。これを簡略化した図を次に示します。

決済手段

PaymentIntent は requires_payment_method のステータスで開始します。Stripe ではこれを先に進めるため、顧客の支払い方法に関する詳細 (カード番号または他の決済システムの認証情報) が必要になります。

実装は PaymentMethod (支払い方法) と呼ばれる API オブジェクトを使用して、このような詳細情報を表します。一部の実装では、このオブジェクトを作成して PaymentIntent に関連付けるコードをお客様が記述します。それ以外では、Stripe が詳細を収集してこの操作を行います。Setup Intents API を使用して、今後の PaymentIntents で使用する支払い方法を作成し、保存することもできます。

確定

次のステータスは requires_confirmation です。インタラクティブな決済フローでは、顧客は支払いを行う意思と、指定した手段でそれを実行する意思を確定する必要があります。1 回限りのオンライン決済では、通常支払うボタンをクリックしたときに確定します。

顧客が支払うをクリックするか、インテントを確定すると、API コールで Stripe に通知が届きます。実装によっては、このコールを実行するコードをお客様が作成します。Stripe は Stripe Elements という埋め込み可能な UI エレメントを用意しています。これを利用すると、コードを作成できるようになるとともに、カスタムの実装を構築する柔軟性も提供されます。Stripe Checkout や Payment Links といったその他の実装では、Stripe がコールを実行して、後続のステップを処理します。Stripe を導入し、さまざまなオブジェクトを組み合わせて実際のユースケースに対応するための方法が多数用意されています。オンライン決済向けの導入オプションの詳細をご確認ください。

ほとんどの場合、PaymentIntent が確定されると、資金を移動するという特定の試行を表す Charge (支払い) が作成されきます。Charge は成功または失敗します。失敗した場合、通常は新しい支払いの詳細を指定して PaymentIntent を再度確定すると、支払いを再試行できます。PaymentIntent を新たに作成せずに試行を直ちに実行することを許可すると、購入完了率が上がる傾向にあります。

処理中および成功

インテントの状態は processing になり、Stripe はこの時点で決済の処理を試みます。

この処理はいつでも Stripe によって実行され、複数のステップに分かれる場合があります (クレジットカードの場合、これらのステップはカードの仕組みに含まれています)。ステップが実行されると、インテントの状態が結果で更新され、succeeded になるか、失敗した場合は requires_payment_method に戻ります。

処理が終わると、最後のオブジェクトである Event (イベント) を使用します。Event オブジェクトを使用することでアクティビティが表示されます。このとき、アクティビティは「支払いが成功しました」または「支払いが失敗しました」と表示されます。一部のシステムでは、Webhook エンドポイントを使用してイベントに応答するカスタムコードを記述することになります。Checkout や Payment Links などを連携する場合、Stripe がイベントをリッスンし、事前に用意したレスポンスで返します。

このページはお役に立ちましたか。
はいいいえ
  • お困りのことがございましたら 、サポートにお問い合わせください。
  • 変更ログをご覧ください。
  • ご不明な点がございましたら、お問い合わせください。
  • LLM ですか?llms.txt を読んでください。
  • Powered by Markdoc
関連ガイド
PaymentIntents の仕組み