Portal Community
This is a webhook receiver node — it does NOT call the Stripe API. The Stripe node is a trigger that receives inbound webhook events sent by Stripe. When Stripe fires an event to the BizFirst endpoint (e.g. charge.succeeded, payment_intent.payment_failed), this node starts a workflow run and passes the parsed event data to downstream nodes. The settings class is StripePaymentNodeSettings.

Supported Event Types

Stripe EventMeaning
charge.succeededA payment was captured successfully.
charge.failedA payment attempt failed.
charge.refundedA refund was issued against a charge.
payment_intent.succeededA PaymentIntent was confirmed and funds captured.
payment_intent.payment_failedA PaymentIntent failed — card declined or authentication failed.
charge.dispute.createdA customer opened a dispute (chargeback) against a charge.
charge.dispute.closedA dispute was resolved — won, lost, or withdrawn.

How to Configure the Stripe Webhook

After saving your Stripe node in BizFirst, register the BizFirst endpoint in your Stripe Dashboard:

  1. In the Stripe Dashboard, go to Developers > Webhooks > Add endpoint.
  2. Set the Endpoint URL to the BizFirst Stripe webhook endpoint provided in the node settings panel.
  3. Select the events you want to receive — choose from the 7 supported event types above.
  4. After saving, Stripe shows a Signing Secret (starts with whsec_). Copy this value.
  5. Paste the signing secret into the WebhookSecret field in your BizFirst Stripe node settings.
  6. BizFirst will now verify every incoming event using Stripe's HMAC signature before starting any workflow.
Always set WebhookSecret in production. Without signature verification, anyone who knows your endpoint URL could send fake payment events. With WebhookSecret configured, BizFirst verifies the Stripe signature header on every request and rejects tampered or spoofed payloads.

Filtering Events

The node settings give you multiple filters to control which events trigger a workflow run:

What This Node Does Not Do

The Stripe node does not create payment intents, customers, subscriptions, refunds, or invoices. It does not call the Stripe API at all. It only receives and parses events that Stripe sends to it. If you need to call the Stripe API from a workflow, use an HTTP Request node with your Stripe secret key.

Business Use Cases

Payment Success — Provision Service

When charge.succeeded or payment_intent.succeeded fires, extract the customer ID and metadata, update the order status in your database, send a receipt email, and provision access to the purchased service — all in a single automated workflow.

Payment Failure — Retry and Notify

When payment_intent.payment_failed fires, check the failure reason, send a personalised recovery email with a payment update link, and schedule a follow-up reminder if no update is received within 3 days.

Refund — Update Order Status

When charge.refunded fires, update the order record to refunded, reverse any access grants or fulfilment steps, and send a refund confirmation to the customer.

Dispute — Pause Account and Alert

When charge.dispute.created fires, immediately pause the customer account, alert the billing team in Slack, and open a case in your CRM with the dispute amount and reason.

All Charge Events via Wildcard

Configure AllowedEventTypes to charge.* to receive all charge lifecycle events in a single workflow and route them using a Switch node on event_type.

In This Guide

Configuration

All StripePaymentNodeSettings fields — webhook secret, event filters, amount range, currency, and idempotency.

Input & Output

Output field schemas per event type — charge, payment_intent, and dispute events.

Examples

Five examples: payment success provisioning, failure retry, refund order update, dispute response, and wildcard charge filter.