Stripe Action Block
The Stripe Action Block runs Stripe operations from your workflow — create charges and payment links, manage customers and subscriptions, issue refunds, send invoices, and more. 42 operations are available.
Payment Automation: Combine this block with the Stripe Trigger — for example, generate a payment link here, then react to payment_intent.succeeded in another workflow when the customer pays.
Key Features
- 42 Operations across charges, customers, subscriptions, checkout, invoices, refunds, products, and more
- Payment Links in One Step: Create a shareable payment URL from a Price ID
- Full Subscription Lifecycle: Create, update, cancel — with trials, proration, and coupons
- Invoice Lifecycle: Create, finalize, send, pay, and void invoices
- Variable Support: Every field accepts
{{variables}}from earlier blocks
Operations
| Group | Operations |
|---|---|
| Charges | Create Charge, Get Charge, List Charges, Update Charge |
| Customers | Create Customer, Get Customer, Update Customer, List Customers, Delete Customer |
| Payments | Create Payment Intent, Get Payment Intent, Create Payment Link |
| Invoices | Create Invoice, List Invoices, Finalize Invoice, Send Invoice, Pay Invoice, Void Invoice |
| Balance | Get Balance |
| Coupons | Create Coupon, List Coupons |
| Cards | Add Customer Card, Get Customer Card, Remove Customer Card |
| Subscriptions | Create Subscription, Get Subscription, List Subscriptions, Update Subscription, Cancel Subscription |
| Checkout Sessions | Create Checkout Session, Get Checkout Session, Expire Checkout Session |
| Refunds | Create Refund, Get Refund, List Refunds |
| Products & Prices | Create Product, List Products, Create Price, List Prices |
| Payment Methods | List Payment Methods, Create Setup Intent, Create Billing Portal Session |
Create Payment Link needs a Price ID (price_...), not a raw amount. Create the product and price first (Create Product → Create Price, or in the Stripe Dashboard), then pass the Price ID. The result contains the shareable URL — reference it as {{blockId.url}}.
Configuration
Each operation shows only the fields it needs. Common ones:
| Parameter | Used by | Description |
|---|---|---|
| Amount | Charges, Payment Intents | Amount in the smallest currency unit (e.g. 2000 = $20.00) |
| Currency | Charges, Payment Intents, Prices | Three-letter code like usd, inr |
| Customer ID | Most customer-related operations | The cus_... id |
| Price ID | Payment Links, Subscriptions, Checkout | The price_... id |
| Success URL / Cancel URL | Payment Links, Checkout | Where the customer lands after paying or canceling |
| Mode | Checkout Sessions | payment, subscription, or setup |
| Cancel At Period End | Subscriptions | true schedules the cancel at period end instead of immediately |
| Metadata (JSON) | Many | JSON object of key/value metadata |
Connecting Stripe
- Add the Stripe block to your workflow and open its settings.
- Click to add a new Stripe connection.
- Paste your Secret Key (
sk_live_...orsk_test_...) from the Stripe Dashboard under Developers → API keys. - Save and select the credential in the block.
This Stripe integration credential (Secret Key) is separate from the Stripe credential used by the bot Payment input block (which stores publishable + secret key pairs). Connecting one does not create the other.
Output
The Stripe API response is stored as the block's output. Reference any field downstream with {{blockId.field}}:
| Example | Description |
|---|---|
{{blockId.url}} | The payment link URL from Create Payment Link |
{{blockId.id}} | The id of the created object (ch_..., cus_..., sub_...) |
{{blockId.status}} | Object status (e.g. succeeded, active) |
{{blockId.data}} | The list of items from List operations |
Example: Send a payment link by email
- Webhook Trigger — receives an order with the customer's email.
- Stripe (Create Payment Link) — passes the Price ID of the ordered product.
- Gmail (Send Email) — emails the customer with
{{stripeBlock.url}}in the body. - A second workflow with a Stripe Trigger on
payment_intent.succeededmarks the order as paid.
Related
- Stripe Trigger — start a workflow when Stripe sends a webhook event