vibes.diy/docs Home Discord
creator docs · works with

Works with Stripe

Let a table pay its check, take tips, sell tickets, take a deposit, collect dues or run a paid membership into your own Stripe account, connected once with Connect Stripe — the card on Stripe's page, the money in your account, the record in your app.

What you can build

Apps that take real money for something people already want: a restaurant check a table pays from its phones, a tip jar, a donation page, tickets for an event with a date, a deposit that holds a booking, dues for a club with a roster, a shop with checkout, a monthly membership that unlocks members-only content. Ask for the payment in your prompt and the builder writes the part that talks to Stripe, keeps the card on Stripe's own page, and keeps the record of who paid in your app.

How it connects

Connect Stripe, once. Press Connect Stripe under Payments on your app's Settings tab, and Stripe walks you through its own setup pages, signing in with your Stripe login or creating one. Confirm the Country beside the button first (it starts on where you are, and is set when Stripe setup finishes; while setup is unfinished, choose the right Country and then press Start over). Already use Stripe for a shop? Sign in with your usual Stripe login: Connect Stripe adds a separate account for your Vibes DIY apps under it, shown in your account switcher beside your others, and your shop's account is untouched. Stripe offers to reuse the business and bank details it already has. Buyers see your Stripe public business name on checkout and your statement descriptor on their card statement; set both in your Stripe account's settings. vibes.diy holds the credential; your backend.js calls ctx.stripe to open a Stripe Checkout page for each order and to read the payment back before it marks anything paid. Your Stripe account belongs to your Vibes DIY account and serves every app you make. Until Stripe is connected, your app shows you a Setup screen with the exact steps, and your buyers see a calm "not open yet".

What it can read and do

Recipe Your app can
One-time payments Open Stripe Checkout for one order, mark it paid once Stripe confirms the payment for that order at that amount, and settle orders whose buyer closed the tab
A check at the table Let anyone at the table pay the whole check with one button, or split it by what they had or evenly, with paid and left updating live and each item paid once
Memberships Start a subscription on Stripe Checkout, unlock members-only content while it is active, follow renewals and cancellations, and send members to Stripe's Customer Portal to change a card or cancel

Every payment lands in your Stripe account, and the order list in your app agrees with your Stripe dashboard because the app only copies Stripe's answer.

Starter prompts

  • Make a page to sell tickets for our garden concert, with a count of seats left that goes down as people pay at checkout.
  • Make a page for my restaurant where staff open each table's check and diners scan its QR code to pay the bill with a tip, or split the check.
  • Make a members page for my book club with a $5 monthly paid membership that unlocks the reading notes.

Good to know

  • Test payments first, then live one app at a time. Connect Stripe and pay with the card 4242 4242 4242 4242; while the app is in test mode, everyone who opens it sees a Test mode badge beside the Pay button. When you are ready for real money, press Go live with Stripe on the Settings tab, then Take live payments in this app on each app's Setup screen when it is ready for real money.
  • Building it for a friend? The app belongs on their Vibes DIY account, made there or remixed into it, so they press Connect Stripe and the payouts land with them. They can give you developer access to keep building it: Take payments § Building a payment app for a friend.
  • One merchant per app. Every buyer pays you, the app's owner, and vibes.diy takes no cut.
  • Apps made with a pasted key keep working. An app that already has STRIPE_SECRET_KEY in its Secrets keeps using it.
  • Guests pay without an account. A check, a tip, a donation or a ticket bought on the spot is paid on Stripe's page, which asks for the payer's email and sends the receipt; nobody needs a Vibes DIY account. Your app's backend writes every payment record for the guest. Your app's Setup screen has a step that lets guests pay: publishing from the editor turns it on, and after a CLI push it gives you the exact vibes-diy app anon-write line.
  • Members sign in. A membership, dues on a roster, or a "my orders" page belongs to a person over time, so those buyers sign in, and a signed-out visitor sees "Sign in to join".
  • Apple Pay and Google Pay work on Stripe's checkout page, which opens in a new tab.
  • Memberships follow Stripe's status. To end someone's access, cancel their subscription in Stripe and the app picks it up on its next read.

Go deeper