ActionStripeUpdated September 2026
How do I cancel a Stripe subscription?
Short answer: You can cancel subscription in Stripe by hand from its own interface, but it won’t repeat itself. On TinyCommand, add the Stripe Cancel Subscription action to a workflow, map its 3 inputs from any upstream app, and it runs automatically every time the trigger fires. No code, and a free tier to start.
Inputs
The fields this action accepts.
Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.
| Field | Type | Required | Description |
|---|---|---|---|
Subscription ID subscription_id | string | Required | The subscription to cancel |
When to Cancel cancel_at_period_end | options | Optional | Cancel immediately or at the end of the current billing period |
Prorate prorate | options | Optional | Generate a proration credit for unused time (immediate cancellation only) |
Sample request
{"subscription_id": "sub_abc123","cancel_at_period_end": "{{trigger.cancel_at_period_end}}","prorate": "{{trigger.prorate}}"}
Returns
{"id": "sub_abc123","object": "subscription","status": "canceled","canceled_at": 1700000000,"current_period_end": 1702592000}
Use these fields in downstream nodes for routing, logging, or error handling.
Triggered by
Apps that pair well as the trigger for Cancel Subscription.
Any of these apps can fire this action as part of a workflow.
FAQ
Questions about Cancel Subscription.
What does the Cancel Subscription action do in Stripe?
Cancels a Stripe subscription either immediately or at period end (cancel_at_period_end=true). The latter is the default for customer-friendly churn.
What inputs does Cancel Subscription require?
Required: Subscription ID. Every input accepts a static value or a variable from any upstream node in your workflow.
Can I use dynamic inputs from earlier workflow nodes?
Yes. Any field on this action can pull values from upstream nodes, whether that's a form response, a trigger payload, an AI output, or a lookup result.
What happens if Stripe returns an error?
The run history shows the failed step with its input and the error message Stripe returned, so you can fix the input and run the workflow again. Automatic retries are built into HTTP steps only, where you can also set your own retry count and delay.
Does Cancel Subscription support batch operations?
Run Cancel Subscription inside a loop to process each item in an array. TinyCommand does not throttle calls for you, so for large arrays add a Delay step if you need to stay within Stripe's rate limits.
More actions
Other Stripe actions.
Action
Create Charge
Creates a new charge against a saved source or customer. Legacy API; for new use cases prefer Create Payment Intent to support SCA/3DS automatically.
ActionCreate Checkout Session
Creates a Stripe Checkout session for collecting payments via Stripe-hosted UI. Returns a URL you redirect the customer to; handles tax, address, wallets, and SCA automatically.
ActionCreate Coupon
Creates a discount coupon in Stripe (percent off or amount off, with optional max-redemptions and expiry). Used for promotions or for issuing one-off discounts.
ActionCreate Customer
Creates a new Stripe customer with email, name, phone, address, and metadata. Required before creating a subscription or saving a payment method.
ActionCreate Payment Intent
Creates a payment intent for collecting payment, with amount, currency, customer, and confirmation method. The modern primitive that handles SCA/3DS automatically.
ActionCreate Refund
Refunds a charge or payment intent, fully or partially, with optional reason. The processing fee is generally not returned on refunds.