Turn a price list into Stripe payment links
Creates every product in your price list in Stripe and records its shareable payment link on a tab, never twice.
Apps it connects
Authenticate each one once and the workflow is ready to run.
What it does
The integration steps this workflow runs, in the order it first runs them.
- 1
Google SheetsCreate tab - 2
Google SheetsAppend row - 3
Google SheetsRead column - 4
Google SheetsRead rows - 5
StripeCreate product - 6
StripeCreate price - 7
StripeCreate payment link
How it works
Everything the template sets up, and what to fill in before the first run.
Point this at a Google Sheet of what you sell and it creates each line in Stripe - a product, a price, and a payment link you can send to a customer.
Your price list tab needs a header row with a 'Product' column and a 'Price' column. Write the price the everyday way, as a plain figure with no currency symbol: 49.99 means forty-nine ninety-nine, and the workflow converts it to the cents Stripe expects. Set 'currency' to the three-letter code those prices are in, such as usd, eur or gbp. Currencies with no smaller unit, such as jpy, are refused rather than multiplied by a hundred.
Nothing in your price list is ever changed. The workflow adds a 'Payment links' tab alongside it and appends a line there for every link it publishes, with the product name, the price it charged, the link itself and the Stripe ids behind it. That tab is what makes a second run safe: a product already listed there is skipped, so re-running never leaves two live links for the same thing. If a link is created but the tab cannot be written, the run stops immediately rather than carrying on blind.
'maxLinksThisRun' starts at 1 so your first run is a test: one link is published, you open it and check the price reads correctly, then you raise the number and run it again to carry on down the list. A row priced above 'maxPricePerItem' is skipped so a mistyped figure cannot quietly go on sale, and a row with no name or no usable price is reported and skipped rather than published.
This workflow only publishes links. It never charges anyone: a customer pays by choosing to open the link. To change a price, give the product a new name or delete its line from the 'Payment links' tab, and the next run will publish a fresh link for it.
Fill in 'sheetUrl', 'priceListTabName' and 'currency' to set it up.
Start from a workflow that already works.
Add "Turn a price list into Stripe payment links" to your workspace, connect its apps, and make it yours. No credit card required.
Free plan available · No credit card required
