Help for app owners

Setting up Stripe for Clinic OS

Connect your own Stripe account so your clinics can pay you, and pay by card. It takes about 20–30 minutes. Stripe is optional: until you connect it, everything works with cash or check payments.

What you’ll need

  • A Stripe account in the United States (US Dollar, USD). Your owner console checks the country and currency when you connect.
  • About 20–30 minutes. About 15 of them are in your owner console; the rest is in Stripe.
  • Your sign-in for multipliers.ai, to open your owner console.

Who holds what

  • Connect your own Stripe account. Your clinics’ plan payments go to you, and their clients’ card payments go to them. Multipliers never handles this money.
  • multipliers.ai never sees your Stripe key and never holds your money.
  • Your clinics’ clients pay each clinic directly, into that clinic’s own Stripe account.
  • Plan payments from your clinics go into your Stripe account.
  • If you choose to take a fee on your clinics’ online payments, Stripe sends that fee to your Stripe account.
  • Stripe pays your balance out to your bank automatically.

Never share this key with anyone, including multipliers.ai staff. Paste it only into your owner console (Payments → Connect Stripe → Paste your key). We never ask for it by email, chat or phone.

In Stripe: your account and Connect

Your Stripe account

  1. Sign in to Stripe, or create a free Stripe account.Use the account you want your plan payments and fees to go to.
  2. To take real payments later, activate the account in Stripe: your business details, your identity and a bank account for payouts.Only you can enter these, and only in Stripe — we never fill them in for you. You can do everything in this guide in test mode first.

Turn on Connect

Skip this if Connect is already on. In Stripe’s Connect setup, choose these:

  1. In Stripe, open Connect and click “Get started”.Connect lets your clinics take payments under your Stripe account.
  2. How funds flow: choose “Sellers will collect payments directly”.Each clinic’s customers pay that clinic directly — the money never passes through you or us.
  3. Industry: choose “Business management software”.That’s what this app is to Stripe.
  4. Onboarding: choose “Onboarding hosted by Stripe”.Stripe collects each clinic’s details on its own secure pages.
  5. Dashboard for sellers: choose “Stripe Dashboard”.Each clinic manages refunds and payouts in their own Stripe Dashboard.
  6. Risk and loss liability: choose Stripe.Stripe covers fraud and negative balances, and each clinic pays Stripe’s fees — not you.
  7. Stripe Tax: each clinic that charges tax must set up Stripe Tax in their own Stripe account (Settings → Tax).Card payments are charged on each clinic’s own account, so Stripe calculates the tax there. This app never calculates or stores tax.

Optional: Stripe Tax

Optional: if you want tax added to the plan payments your clinics make to you, set up Stripe Tax in your own Stripe account (Settings → Tax). Stripe calculates the tax; this app never calculates or stores tax.

Create the restricted key

In Stripe’s menu this is under Developers → API keys. Open API keys in Stripe (test mode) (opens in a new tab)

  1. Open API keys in Stripe (opens a new tab) — make sure Stripe is in test mode.This is where Stripe makes keys for other software.
  2. Click “Create restricted key”.A restricted key can only do what you allow — safer than your secret key.
  3. When Stripe asks how you’ll use the key, choose “Powering an integration you built”.You built this integration with us, not with an app from Stripe’s marketplace.
  4. Choose the “Custom” template.Custom lets you set each permission yourself.
  5. Name it the way your owner console shows it, for example “My app on Multipliers”.So you can tell this key apart later.
  6. Set each permission below. Some need the same setting in both columns: “Permissions” (your account) and “Connect permissions” (your clinics’ accounts). Anything not listed stays None.The app asks only for what it needs; everything else stays off.
  7. Click “Create key”, complete Stripe’s check, then copy the key. Stripe shows it only once.You’ll paste it into the next step.

The permissions to set

Stripe’s editor has two columns: “Permissions” (your own account) and “Connect permissions” (your clinics’ accounts). Set each row below. Anything not listed stays None.

Row in StripePermissionsConnect permissionsWhy the app needs it
Accounts v2 (Accounts v2)ReadNoneChecks that Connect is on and reads your clinics’ Stripe accounts.
Customer Configuration (Accounts v2)WriteNoneCreates a Stripe account for each clinic so you can bill its plan.
Merchant Configuration (Accounts v2)WriteNoneLets each clinic take card payments from its own customers.
Account Links (Connect)WriteNoneOpens Stripe’s own setup pages for each clinic.
Accounts (Connect)ReadNoneReads your Stripe account’s country and currency.
Application Fees (Connect)ReadNoneShows the fees you earn on your clinics’ online payments.
Customers (Core)WriteWriteKeeps the billing records for plans (and saved cards in Clinic OS).
PaymentIntents (Core)NoneWriteCharges a confirmed fee to a saved card.
SetupIntents (Core)NoneReadShows whether a card was saved.
PaymentMethods (Core)ReadReadShows a saved card’s brand and last 4 digits — never the card number.
Products (Core)WriteWritePuts your plans in your Stripe account.
Charges (Core)ReadReadShows refunds made in Stripe (refunds are made in Stripe, never here).
Disputes (Core)ReadReadShows disputes so nothing is missed.
Balance (Core)ReadReadShows your balance (read only).
Payouts (Core)ReadReadShows payouts to your bank (read only — Stripe pays out automatically).
Events (Core)ReadReadCatches up on any payment notification that was missed.
Checkout Sessions (Checkout)WriteWriteOpens Stripe’s secure payment page — card details never reach this app.
Prices (Billing)WriteWritePuts your plans’ prices in your Stripe account.
Subscriptions (Billing)WriteWriteBills each clinic’s plan every month or year.
Invoices (Billing)ReadReadShows whether a plan payment went through.
Customer portal (Billing)WriteWriteLets a clinic update its card or cancel its plan on Stripe’s page.
Tax Calculations and Transactions (Tax)WriteWriteAsks Stripe Tax for the tax on a price. This app never calculates tax.
Tax Settings and Registrations (Tax)ReadReadShows whether Stripe Tax is set up.
Webhook Endpoints (Webhooks)Only while connecting: lower to None after setupWriteNoneSets up payment notifications once. Afterwards set it back to None.

Leave these at None: Recipient Configuration, Transfers, Top-Ups, Login Links, Account Sessions.

In your owner console

  1. Open your owner console and go to Payments. Press “Connect Stripe”.You open the owner console from your account on multipliers.ai: sign in, then press “Open owner console”.
  2. Before you start: tick off what you need.You have already done the Stripe part above.
  3. Test or live: choose “Test first (recommended)”.Test mode lets you try everything with Stripe’s test cards. You can go live later.
  4. Create your key: you have already made it. The console shows the same list, with the key name to copy.
  5. Paste your key: paste the key and press “Check my key”.If you signed in more than a few minutes ago, the console first asks you to confirm it’s you. We check the key with Stripe, then store it in your app’s own secret store.
  6. Result: each line says “✓ Done” or “✕ To do”.Fix any “To do” line in Stripe (open the key, then “Edit key”), then press “Check now” on Payments.

What the status means

Payments → “Your Stripe account” shows a status, and “Test mode” or “Live” once connected:

Connected
Your key works and has every permission it needs. Your Stripe is connected.
Missing permissions
Your key works, but one or more permissions are missing. The card names each one and its column. Online payments stay off until you fix them.
Key not working
Stripe no longer accepts the key (it was deleted, rolled or expired). New online payments pause; cash and manual records keep working. Create a new key and replace it.
Not connected
No Stripe account is connected yet. Everything works with cash or check payments until you connect one.
Disconnected
You disconnected Stripe. Online payments are off; you can connect again at any time.
Not available yet
Payments aren’t switched on for your app yet. Contact support.

After connecting

  1. Invite each clinic to set up payments: open the clinic in your owner console and press “Invite to set up payments”.The clinic finishes Stripe’s own setup in their app. Card payments switch on for a clinic once Stripe approves their details.
  2. Start plan billing: open a clinic and press “Start billing”.The clinic gets an email to add a card on Stripe’s secure page. Billing starts when they do.
  3. In Stripe, set Webhook Endpoints on your key back to None. Then press “I’ve done this” on Payments.It was needed only while connecting. A smaller key is safer.

Test mode and live

Start in test mode: in the “Test or live” step, choose “Test first (recommended)”. Test mode lets you try everything with Stripe’s test cards. You can go live later. No real money moves in test mode.

Live mode is switched on for each app separately. Until it is on for yours, the “Live” choice is greyed out and the console says: “Live payments aren’t switched on for your app yet.”

A one-step switch from a test connection to live isn’t in the owner console yet. When live payments are on for your app, email us and we’ll help you move over.

Help

Questions? Email multipliers@kiwana.ai.

We will never ask you for your Stripe keys or any password, by email or on a call.