Chapter 06
Update products in Stripe
You manage your products in the Framer CMS. The plugin creates them in your Stripe account, keeps the prices in line and writes the Stripe price IDs back into the CMS.
What an update does
- For every product in the CMS, the plugin creates a product with a price in your Stripe account, and one price per variant.
- It writes Stripe's price IDs back into the CMS, into the Stripe Price ID and Stripe Variant IDs fields. Those IDs tell the checkout what is being sold.
- If a price has changed, it creates a new price in Stripe. Past payments are not affected.
- Drafts and deleted items are archived in Stripe, so nobody can buy them.
- Products that haven't changed are left alone.
Set it up once: choose products
- In the plugin, open "Products".
- Under "Collection", choose the collection that holds your products. In the template it is called Products.
- Check the field mapping: "Name", "Price" and "Image", and "Description" and "Slug" if you like. In kspr templates they are already suggested correctly.
- If needed, map the fields for "Sold out", "Billing interval" and "Variants" (see below).
- "Price ID field" shows the Stripe Price ID field, "Variant IDs field" the Stripe Variant IDs field. If your collection is missing one, "Create "Stripe Price ID"" and "Create "Stripe Variant IDs"" add it.
- Choose the "Currency" (CHF, EUR, USD or GBP). The plugin guesses it from your prices and warns you if a price shows a different currency.
Which prices the plugin understands
The price field can be a number (4.9) or text the way visitors see it: CHF 12.50, Fr. 12.50, 12,50 €, $4.90 or 1'250.00. Each site uses one currency. Products without a readable price are skipped, and the plugin tells you which ones.
Variants
If a product comes in several sizes or pack sizes, write them into the CMS field Variants, separated by semicolons, each with a name and a price:
1 Bag = 4.90; 3 Bags = 13.50; 6 Bags = 25.00 sold out
A sold out at the end marks a single variant as sold out. The plugin creates a price in Stripe for each variant and writes the IDs into the Stripe Variant IDs field.
Sold out
Switch on Sold Out in the CMS when a product is unavailable. If it is still in someone's cart, the checkout shows "Sold out" and asks them to remove it.
Subscriptions for your customers
With the CMS field Billing Interval you sell a product as a subscription, for example a snack box every month. Values: One-time (default), Week, Month or Year. The plugin keeps the Billing Interval Key field up to date when updating; it is used to connect "Add to Bag" (without a template). More under subscriptions for your customers.
Update
- In "Products", click "Update products". In the "Compact view" the button is right on the first screen.
- The plugin shows what happened to each product: created, updated, unchanged, skipped, or an error with the reason. It then reports how many price IDs it wrote to the CMS.
- The plugin reminds you: "Publish your site now, so the new prices are live." In Framer, click "Publish" and "Update".
Afterwards you'll find the products in the Stripe dashboard under "Products". In test mode they only show up when test mode is switched on at the top.
When to update again
- You added a new product or a variant.
- You changed a price, a name, an image or the billing interval.
- You deleted a product or set it to draft.
- You changed the tax settings (shipping and options).
- You switch from test mode to live mode (see test and go live).
Always publish afterwards. Rule of thumb: edit the CMS, "Update products", publish, in that order.
Products without a price ID
A product that hasn't been updated to Stripe yet can still be added to the cart. At checkout, customers then see "Shop not set up yet". This lets you work on the design before Stripe is connected.