OAuthで Stripe を接続すると、サブスクリプションの開始時、トライアルの終了が近づいたとき、請求書の支払いが失敗したときに、ブランドらしいメールを送れるようになります。Brew が Webhook を登録し、対応しているイベントをオートメーションのトリガーとして使えるようにします。
支払い、再試行、返金、サブスクリプションの変更は、引き続き Stripe が担当します。Brew が担当するのは、メールの作成と送信です。
まずは、invoice.payment_failed イベントをトリガーにしたメールを1通用意します。その後にリマインダーを送る場合は、Stripe で請求書のステータスを改めて確認する処理を、アプリケーション側で予約してください。請求書が未払いのままで、顧客が引き続き対象となる場合に限り、別の Brew カスタムイベントを送信します。
「待機」のあとも、イベントのフィールドには元のイベントのペイロードが入ったままです。contact.stripe_subscription_status の条件は、そのノードの実行時点で Brew のコンタクトにあるフィールドの現在の値を読み取ります。Stripe に問い合わせるわけではなく、特定の請求書が支払われたことを証明するものでもありません。コンタクトの更新や新しい支払いイベントによって、それ以前の実行が自動的にキャンセルされることもありません。また、カードの更新は支払いの証明にはなりません。
両方のパスをテストしてください。請求書がまだ未払いで、引き続き対象となる顧客にはリマインダーが届き、予約したチェックの前に支払った顧客には届かないことを確認します。再試行は、ドキュメントに記載された冪等性の仕様に沿ってテストしてください。
Brew は、次の22種類のイベントに対応しています:
顧客とサブスクリプションのイベントで、Brew のコンタクトに請求関連の情報を反映できます。利用できるコンタクトのフィールドには、stripe_subscription_status、stripe_subscription_plan、stripe_plan_amount_cents、stripe_trial_end、stripe_renews_at、stripe_cancel_at_period_end、stripe_delinquent があります。実際に使えるかどうかは、Stripe のイベントと受信したデータによって異なります。
差し込みタグには、選択したイベントで宣言されているペイロードのスキーマを使います。イベントによって、firstName、lastName、amount、currency、status、invoiceNumber、previousPlan、newPlan、failureMessage などのフィールドがあります。スキーマでセント単位と指定されている金額は、セント単位です。
Stripe オブジェクトの識別子は、オートメーションのペイロードから除去されます。請求書やサブスクリプションのIDを差し込みタグとして使えるとは考えないでください。また、Brew は Stripe の顧客IDをコンタクトに保存しません。
イベントごとの「氏名を同期」設定は、Stripe がコンタクトの名前を更新できるかどうかを制御します。トリガーを有効・無効にする設定ではありません。
あとから届いた支払いイベントによって、それ以前の支払い失敗で始まった実行が自動的にキャンセルされることはありません。リマインダーの前にアプリケーション側でのチェックを予約し、請求書がまだ未払いの場合にのみ、新しいイベントを送信してください。
イベントの受信とメールの送信は、別々のステップです。一致するオートメーションが稼働中であることを確認し、そのフィルターと実行履歴を調べたうえで、受信者が対象に含まれるかどうかと、送信ドメインを確認してください。「氏名を同期」の設定が制御するのは、名前の更新だけです。