ワークフロー公開プレビュー
ワークフローの機能とコンポーネントについて説明します。
Stripe ダッシュボードには Workflows のビジュアルビルダーが用意されており、順番に実行される一連のアクションを定義することで、タスクやプロセスを自動化できます。Workflows は複数ステップのプロセスに最適で、複数の Stripe プロダクト間で互換性があるため、プロセスの合理化、ビジネスルールの適用、手作業の削減が可能になります。
各ワークフローは、トリガーと、順番に実行される一連のステップで構成されます。ステップは、アクションまたは条件のいずれかです。ワークフローは、次のコンポーネントで構成されています。
コンポーネント | 説明 |
---|---|
トリガー | トリガーは、新規顧客のサインアップや支払いの失敗など、ワークフローを自動的に開始する特定の Stripe イベントです。各ワークフローにトリガーは 1 つしかありません。 |
ステップ | ワークフローのステップは、アクションまたは条件のいずれかです。各ワークフローには、最大 12 のステップ (アクションまたは条件) を含めることができます。 |
アクション | アクションは、支払いの返金やメールの送信など、ワークフローがトリガーされた後に実行される自動化されたタスクです。 |
条件 | データに基づいてワークフローの進め方を決定するルールで、特定の条件に応じて異なるパスを作成できます。トリガーに条件を直接適用して、ワークフローを実行するときに絞り込めます。また、ワークフロー内のステップとして条件を追加して、分岐ロジックを作成することもできます。別のステップとして使用する条件は、12 のステップのうちの 1 つを構成します。 |
ワークフローは、トリガーと条件に基づいて一連のアクションを順番に実行することで、タスクを自動化します。複数のワークフローが同じトリガーイベントを共有する場合、各ワークフローは、独自に定義されたステップとビジネスロジックに従って独立して実行されます。
アクティブなワークフローと非アクティブなワークフロー
ワークフローをアクティブ化、非アクティブ化、または削除できます。ワークフローを非アクティブにすると、Stripe はワークフローを無効と見なし、トリガーに応答しなくなります。非アクティブなワークフローは、いつでも再度アクティブにできます。一度に最大 6 つのアクティブなワークフローを維持でき、アクティブなワークフローと非アクティブなワークフローの両方を含む合計 20 のワークフローを持つことができます。
ワークフローがすでに 20 個ある場合、別のワークフローを作成することはできません。アクティブなワークフローが 6 つあり、別のワークフローをアクティブにする場合は、まず既にアクティブなワークフローを非アクティブにする必要があります。
トリガー
ワークフローは、Stripe API イベントによって開始されます。各ワークフローには 1 つのトリガーがあり、常にワークフローの最初のステップです。トリガーは、イベントに関するデータを提供します。このデータはワークフローに渡され、後続のステップで使用できるようになります。トリガーが起動し、そのデータが提供されると、ワークフローはそのデータを使用してアクションを実行します。
顧客に関連するワークフローを発生させる場合は、次のトリガーを適用できます。
トリガー | 説明 |
---|---|
顧客が作成されました | 新しい顧客が作成されたときに発生します |
顧客更新情報 | メールアドレスやメタデータなど、顧客の詳細が変更されたときに発生します。 |
Stripe を使用して決済 (Stripe Checkout や CheckoutSessions API など) を受け付けている場合、次のトリガーを適用できます。
トリガー | 説明 |
---|---|
Checkout セッションが完了しました | 顧客が決済プロセスを正常に完了したときに発生します。これは、支払いが正常に処理され、必要な顧客、支払い、および注文の詳細が収集されたことを示します。これは、取引が想定どおりに完了し、売上がキャプチャーされる準備ができているか、すでにキャプチャーされていることを確認するものですが、設定によって異なります。 |
Checkout セッションの期限が切れています | Checkout セッションが完了せずに期限切れになり、取引が起こらなくなったときに発生します。デフォルトでは、セッションは作成後 24 時間で期限切れになります。 |
支払いインテントが失敗しました | 処理中のいずれかの時点で決済の試行が失敗したときに発生します。原因としては、カードの有効期限切れ、残高不足、認証の失敗、その他の問題などが考えられます |
支払いインテントが成功しました | 認証 (3D セキュア)、オーソリ、売上キャプチャーなど、決済が完全に完了すると発生します。これは決済ライフサイクル全体を表し、確認および完了した決済に依存するワークフローに最適です。これは、決済が成功する最も一般的なトリガーです |
請求書の支払いに失敗しました | 多くの場合、カードの有効期限が切れていたり、残高が不足していたりして、顧客の請求書の支払いに失敗したときに発生します。 |
Stripe を使用して、銀行振込や BNPL (支払いの詳細を確認するためにさらに時間がかかる) などの非同期の決済手段を受け付けている場合、次のトリガーを適用できます。
トリガー | 説明 |
---|---|
非同期決済セッションの支払いに失敗しました | 口座振替などの遅延型の決済手段が失敗した場合に発生します。企業はこのイベントを利用して、顧客への通知や支払いの再試行などのアクションを実行し、ユーザーエラーや残高不足などの問題に対処できます。 |
非同期決済セッションの支払いに成功しました | 口座振替などの遅延型の決済手段が成功し、十分な残高や本人確認などの条件が満たされていることが確認された場合に発生します。一部のビジネスでは、注文をすぐにフルフィルメントし、決済に失敗した場合は後でアクセスを取り消す場合があります。 |
資金移動の結果、または支払いの成否に基づいてワークフローをトリガーする場合は、次のトリガー条件を適用できます。ほとんどの Stripe システムでは、支払いイベントを直接リッスンする代わりに、Checkout イベントまたは PaymentIntent イベント (例: Checkout セッションが完了しました) が使用されます。
トリガー | 説明 |
---|---|
支払いに失敗しました | 顧客の支払い方法への請求が失敗したときに発生します。支払いとは、お金の移動の試みを表します。このイベントは、支払いインテントのライフサイクルの一部として発生することがあります (たとえば、支払いが支払いステージで失敗した場合など)。 |
支払いに成功しました | 支払いが正常に処理されたときに発生します。これにより、支払いが承認され、キャプチャーされたことが確認され、入金スケジュールに従って顧客のカードからお客様のアカウントに売上が移動したことを確認できます。 |
サポートされているトリガー
ワークフローは、Stripe v1 と v2 の両方のトリガーとしてほとんどのイベントをサポートします。サポートされていないイベントは、ダッシュボードでは使用できません。
Connect をトリガーと共に使用する
Stripe Connect プラットフォームおよびマーケットプレイスは、プラットフォームアカウントからのイベントを使用してワークフローをトリガーできますが、連結アカウントからのイベントはトリガーできません。つまり、支払いが成功したときなど、プラットフォームアカウント内の何かのワークフローをトリガーすることはできますが、連結アカウントで発生したイベントから直接ワークフローをトリガーすることはできません。
アクション
アクションは、トリガーまたは前のステップからのデータに基づいて、自動的に実行されるタスクです。すべてのワークフローには少なくとも 1 つのアクションが必要であり、ほとんどのワークフローに複数のアクションが順に含まれています。
一般的なアクションには、次のようなものがあります。
- 顧客を更新する: 追跡やレポート作成の目的でメタデータフィールドを使用してカスタムデータを追加するなど、既存の顧客の詳細を変更します。
- 請求書を取得する: ステータスなど、特定の請求書の最新の詳細を取得します。これは通常、請求書の更新や現在の状態に基づく意思決定など、後のステップで使用されるデータを収集するために使用されます。
- サブスクリプションを取得するを参照してください。プランや請求サイクルなど、顧客のサブスクリプションの最新の詳細を取得します。これは通常、サブスクリプションの更新や条件ロジックの適用など、後のステップで使用するサブスクリプションデータを収集するために使用されます。
- サブスクリプションを更新する: プランの変更、請求サイクルの更新、割引の適用など、アクティブなサブスクリプションを変更します。
ワークフローステップは、トリガーイベントの後に開始され、順番に実行されます。各ステップは、動的フィールドを使用して、トリガーおよび前のステップからの情報にアクセスできます。これらのフィールドはスマートプレースホルダーとして機能し、ワークフローの進行に合わせてリアルタイムのデータが自動的に入力されます。このシステムにより、各ステップがワークフローを流れるデータに適応し、柔軟で応答性の高いワークフローが可能になります。
アクションは、アクションが実行された時点でのオブジェクトの最新の状態に対して動作します。つまり、最初のトリガーと後続のアクションの間にオブジェクトが変更された場合、アクションはオブジェクトの最新バージョンに影響します。ただし、動的参照は、最後に取得された時点のオブジェクトの状態を使用します。
サポートされているアクション
Workflows は、Stripe v1 と v2 の両方でほとんどの API アクションをサポートしています。サポートされていないアクションは、ダッシュボードでは使用できません。現在、すべての Stripe リストアクションはアクションとしてサポートされていません (たとえば、不審請求の申し立てのリストアクションなど)。
Connect をアクションと共に使用する
Stripe Connect プラットフォームとマーケットプレスは、プラットフォームアカウントを介してワークフローでアクションを使用できますが、連結アカウントを介して使用することはできません。つまり、ワークフローでは、支払いの返金やプラットフォームアカウントの顧客の更新などのアクションを実行できますが、連結アカウントでは直接アクションを実行できません
ワークフローに固有のアクション
以下はワークフローに固有のアクションであり、ダッシュボードのビジュアルビルダーを使用してのみ使用でき、パブリック API の一部ではありません。
アクション | 説明 | 目的 | 結果 | 例 |
---|---|---|---|---|
チームメンバーにメールを送信する | Stripe アカウントに関連付けられている内部メールを生成して送信します | ワークフローがトリガーされ、特定の条件が満たされた後に内部チームメンバーに通知するため | ワークフローが実行されると、チームに通知が届きます | 顧客の合計支出額が 1,000 USD を超える場合は、社内チームに通知メールを送信します。 |
条件
条件を使用すると、ワークフローにロジックを追加して、ワークフローを続行するかどうか、およびどのように処理すべきかを制御するルールを定義できます。条件は、通常、トリガーまたはそれ以前のステップからのデータを評価するチェック機構です。使用方法に応じて、条件によって、ワークフローを実行するかどうか、続行するかどうか、またはどのパスをたどる必要があるかが決まります。使用できる条件は、ワークフローが参照する予定のデータによって異なります。
トリガー条件
トリガー条件は、ワークフローを開始するイベントを絞り込みます。ワークフローは、トリガー条件が true の場合にのみ実行されます。これらは、ワークフローを特定のユースケースに絞り込む場合 (たとえば、特定の金額を超える支払いが成功した場合にのみワークフローを実行する、など) に便利です。その主な目的は、ワークフローを実行する必要があるかどうかを判断することです。

ダッシュボードでのトリガー条件の設定
仕組みは以下のとおりです。
- Stripe アカウントでイベントが発生します。
- トリガー条件は、このイベントが特定の基準を満たしているかどうかをチェックします。
- 条件が満たされると、ワークフローが開始されます。満たされない場合、何も起こりません。
1 つの条件を作成して、1 つのトリガーに適用できます。以下に例を挙げます。
トリガー | 請求書が作成される |
トリガー条件 | 請求書のステータスは確定済みに 一致 します。すなわち、請求書は変更できなくなっています。 |
結果 | 「ワークフローは、確定された請求書に対してのみ実行されます。 |
また、複数の条件を作成してトリガーに適用することもできます。以下に例を挙げます。
トリガー | 支払いに失敗しました |
トリガー条件 | 支払い金額は 100 USD を 超過 しています。 |
トリガー条件 | 最後の支払いエラーコードは残高不足に「一致」します。 |
結果 | このワークフローは、残高不足が原因でエラーコードが発生した 100 USD を超える支払いの失敗に対してのみ実行されます。 |
条件は、ワークフローを特定の状況に絞り込むのに役立ち、ワークフローの精度を調整するのに役立ちます。
ステップとしての条件
トリガー条件に加えて、ワークフロー内に条件ステップを追加できます。これらの条件ステップにより、ワークフロー開始後の動作を制御できます。
たとえば、特定の条件が満たされているかどうかをチェックし、ワークフローを続行する必要があるかどうかを判断するための条件を、ステップとしてワークフローに追加できます。条件ステップを追加することで、値を評価し、続行するかどうかを決定できます。条件が true の場合、ワークフローは次のステップに進みます。ただし、false の場合、ワークフローは停止し、成功としてマークされます。このアプローチを使用して、アクション完了後に結果を確認します。
分岐条件
条件ステップの別の例は、条件を分岐として使用することです。これにより、ワークフロー内に決定ポイントを導入し、指定した条件に基づいて複数のパスに分岐させることができます。条件ステップから複数のパスを構築して、ワークフローがさまざまなパスをたどり、さまざまな条件に基づいてさまざまなアクションを実行するようにできます。このアプローチは、顧客の国や購入金額に基づいて異なるメールをアカウントチームごとに送信するなど、複数のシナリオを処理する場合に使用します。
2 つの分岐を作成する条件の例:
トリガー | 顧客が作成されました |
アクション | 条件を追加します。
|
アクション | 次の条件に当てはまる場合: 顧客のメタデータを更新して、North America の場所を割り当てます (メタデータキー: Location 、値: North America )。 |
アクション | 次の条件に当てはまらない場合: 顧客のメタデータを更新して、Global の場所を割り当てます (メタデータキー: Location 、値: Global )。 |
結果 | このワークフローでは、条件ステップを使用して顧客の国を確認し、異なるパスに振り分けます。各パスには、顧客のメタデータを地域固有のラベルで更新するアクションが含まれており、レポートやロジックなどのダウンストリームで使用することが可能です。 |
条件を追加して、2 つ以上の分岐を作成することもできます。これにより、ワークフローは 1 つの決定ポイントから複数のシナリオを処理できます。
3 つの分岐を作成する条件の例:
トリガー | 顧客が作成されました |
アクション | 条件を追加します。
|
アクション | 次の条件に当てはまる場合: 顧客のメタデータを更新して、North America の場所を割り当てます (メタデータキー: Location 、値: North America )。 |
アクション | 次の条件に当てはまる場合: 顧客のメタデータを更新して、Europe の場所を割り当てます (メタデータキー: Location 、値: Europe )。 |
アクション | どの条件にも当てはまらない場合: 顧客のメタデータを更新して、Global の場所を割り当てます (メタデータキー: Location 、値: Global )。 |
結果 | このワークフローでは、条件ステップを使用して顧客の国を確認し、異なるパスに振り分けます。各パスには、顧客のメタデータを地域固有のラベルで更新するアクションが含まれており、レポートやロジックなどのダウンストリームで使用することが可能です。 |
各条件は、ビジュアルビルダーで左から右の順に評価されます。ワークフローは、最初に一致したパスをたどり、他のパスはスキップします。トリガー条件は、ワークフローを実行する必要があるかどうかを決定します。条件ステップは、ワークフローの開始後の動作を制御し、続行するか、別のパスに分岐するかを決定します。
多くの場合、トリガーごとまたはステップごとに同じ条件ロジックが適用されます。条件を適用する場所は、制御する内容、ワークフローを開始する必要があるかどうか、開始後に続行する必要があるかどうか、または実行中にどのパスをたどる必要があるか、によって異なります。
追加の構築済み機能
再帰検出
意図しない無限ループやワークフローの暴走を防ぐために、ワークフローはそのような再帰を自動的に識別して停止します。たとえば、顧客情報を更新するアクションも含む、顧客イベントによってトリガーされる、ワークフローについて考えてみます。このアクションを実行すると、別の顧客更新イベントが発生し、同じワークフローが再トリガーされ、無限ループに陥る可能性があります。これを防ぐため、ワークフローで認められている再帰の発生は 1 回のみです。ただし、複数回発生した場合にはワークフローはエラーで終了します。
自動での再試行
信頼性を向上させるため、Workflows では、再試行可能なエラーが発生したアクションを自動的に再試行します。つまり、一時的な問題が原因でアクションが失敗した場合、ワークフローは手動による介入を必要とせずにアクションの再実行を試みます。これにより、一時的なエラーが原因でワークフローが失敗することがなくなり、スムーズで一貫性のあるワークフロー実行が促されます。
べき等
べき等性により、同じリクエストが複数回送信された場合でも、アクションは 1 回しか実行されません。ワークフローは重複するリクエストを自動的に処理し、意図しないアクションの繰り返しを防ぎます。このセーフガードは、ネットワークの問題やエラーがリクエストの再試行につながる可能性がある場合に、ワークフローの整合性を保つのに役立ちます。
オブザーバビリティ
オブザーバビリティは、ワークフロー内の問題をすばやく監視、トラブルシューティング、解決するのに役立ちます。ワークフローは、以下の機能でオブザーバビリティを補強しています。
- 実行ステータス: ワークフローのステータスは、「実行中」、「成功」、「失敗」の 3 つのいずれかになります。障害が発生した場合は、問題の診断と解決に役立つ詳細なエラーメッセージが表示されます。
- 実行の詳細: 個々のワークフロー実行を調査して、実行されたステップ、使用されたパラメーター、発生したエラーなど、正確な実行パスを表示できます。この視認によって、ワークフローのどのステップでエラーが起こったかをすばやく特定したり、実行でたどったパスを把握したりすることが可能になります。