Stripe

Payments Secret key Windmill docs

Manage payments, subscriptions, invoices and customers from any Windmill script, flow or app.

Set up in 3 steps

1

Copy your secret key

In the Stripe dashboard, open Developers then API keys and reveal the secret key. Use the test key while you build — it starts with sk_test_.

2

Add the resource in Windmill

Open Resources, add a resource of type stripe, and paste the key.

3

Run your first script

Fork any script below and start with a read, like Retrieve Balance or List Customers, before creating anything.

Scripts

Building blocks, if none of the projects above fit. Fork one, run it, or call it as a step inside your own flow.

Submit a script →

Trigger flows from Stripe

Stripe is not only a destination. These inbound paths are supported today.

Stripe events: create the route

Add an HTTP route trigger on the script or flow that should handle events: method POST, request type Async, authentication Signature with the Stripe provider and your endpoint's signing secret (whsec_…). Windmill checks the Stripe-Signature header and rejects anything Stripe did not sign before the job starts. The event's top-level fields arrive as the script's arguments, so declare id, type and data parameters and read the object from data.object.

Stripe events: register the endpoint

Run the Create Webhook Endpoint script with the route URL and the events you want (for example customer.created, invoice.paid, checkout.session.completed, or * for all), and copy the secret from its result: Stripe only returns it once. You can also add the endpoint in the Dashboard under Developers, Webhooks. Stripe retries failed deliveries for up to three days, so make the handler safe to run twice for the same event id.

Resource type

The shape of the credential every script on this page expects.

FieldTypeRequiredWhat it is
tokenstringYesSecret key (sk_test_… / sk_live_…) or restricted key (rk_…) from Developers > API keys in the Stripe Dashboard (https://dashboard.stripe.com/apikeys). The key decides test or live mode.

Questions

Test mode or live mode?

The key decides. A test key only ever touches test data, so keep two resources and switch the one a flow points at.

Can I restrict what the key can do?

Yes. Stripe restricted keys grant per-resource read or write permissions, and work here in place of the secret key.

Is my key stored on the hub?

Never. It lives only in your own Windmill workspace, encrypted at rest.