StudioOps supports three payment rails:
- Square — card payments via Square's hosted checkout.
- Stripe — card payments via Stripe's hosted checkout.
- Bank transfer — customers pay direct into your bank account.
You pick one card provider (Square OR Stripe) at connect time. Bank transfer is always available alongside, regardless of which card provider you chose.
You need at least one rail set up before you can take deposits at booking or send invoices.
1. Setting up Square
Go to Settings → Payments, find the Square section, and click Connect with Square.
You'll be bounced to Square's hosted page to sign in to your existing Square account and approve the connection. (You need a Square account already; if you don't have one, sign up at squareup.com first.)
Square will ask you to approve permissions covering:
- Reading your locations and merchant details
- Creating and reading payment links
- Reading payment status
This is an OAuth connection: StudioOps does not see or store your Square password, and your card processing stays inside Square. Once approved, Square sends StudioOps a secure connection token; that's how StudioOps can create payment links, check whether a payment cleared, and match the payment back to the right invoice or quote.
You bounce back to StudioOps with Square wired up.
Square's fees are charged by Square per transaction — check current UK pricing at squareup.com/gb/pricing. StudioOps takes no cut on top.
To disconnect Square: Settings → Payments → Disconnect Square. The connection token is invalidated; new invoices stop routing through Square. Existing paid invoices are unaffected. You can also revoke from your Square account directly: Square Dashboard → Apps and connections → StudioOps → Revoke.
2. Setting up Stripe
If you'd rather use Stripe than Square, the connect flow is parallel — there's a dedicated article that walks through it: Connecting Stripe to StudioOps.
The two-paragraph version: Settings → Payments → Connect with Stripe, pick sole trader vs limited company, fill in Stripe's hosted onboarding form (10-15 minutes), wait for the card-payments capability to flip to Active.
Once Stripe's connected, every place that would have offered "Pay by card via Square" offers "Pay by card via Stripe" instead. From your studio's point of view the flow is identical; from the customer's point of view they see Stripe's checkout page rather than Square's.
Stripe vs Square — which to pick? Either works. If you already use Square for an in-person card reader, Square keeps things in one dashboard. If you already use Stripe for an online shop or any other SaaS, Stripe keeps things in one dashboard. Fees are similar (Stripe tends to be marginally cheaper online; the difference on a £50 transaction is pennies). Pick one and stick with it — switching later is possible but means disconnecting and reconnecting.
3. Setting up bank transfer
In Settings → Payments, scroll to the Bank transfer section. Enter:
- Account holder name — usually your business name or your trading name
- Sort code (six digits)
- Account number (eight digits)
- Optional payment-reference instruction — a short note customers see alongside the payment reference ("Please include the reference, no extra text").
StudioOps stores the bank details encrypted. Only the last four digits of the account number are ever shown back to you on screen; the full details are decrypted server-side only when an invoice that uses bank transfer is rendered for a customer.
Bank transfer is available alongside whichever card provider you've picked. Customers see your bank details on the invoice + a unique payment reference (different per invoice + per request, so you can match incoming money to the right invoice in your bank app).
4. Per-service payment rules
This is the layer that decides what happens when a customer books a service from your public page. On each service in Settings → Services, you pick one of:
- No payment at booking — the customer books a slot, you do the work, you raise an invoice afterwards. Used for services where the price varies (custom alterations) or where you want to confirm the slot without taking money up front.
- Deposit at booking — the customer pays a deposit (you set the amount) before the slot is confirmed. The slot is held for 15 minutes while they pay; if they don't pay, the slot is released back to your diary. The balance becomes an invoice you raise after.
- Full payment at booking — the customer pays the full price before the slot is confirmed. Same 15-minute slot hold while they pay.
The deposit and full-payment-at-booking flows run on card only — whichever provider you've connected (Square or Stripe). Bank transfer is reserved for the balance invoice you raise after the appointment. This keeps the slot-confirmation flow fast: cards clear in seconds, so the booking is confirmed before the customer has closed the tab; a bank-transfer hold would have to be 24 hours, which is too long to keep a popular slot off the diary while waiting to see if the money lands.
If you set a service to "Deposit at booking" or "Full payment at booking" without a connected card provider, StudioOps refuses to save it and prompts you to connect Square or Stripe first.
5. How customers see card payments
When you send an invoice on a card rail (or a customer books a service with deposit / full-payment-at-booking):
- The customer sees a Pay by card button.
- Clicking it opens the connected provider's hosted checkout page (Square's or Stripe's).
- The customer enters card details on the provider's page.
- The provider processes the payment and notifies StudioOps within seconds.
- The invoice (or appointment) is marked Paid automatically.
The customer's card data never touches StudioOps. We keep only the last four digits and the card brand for your records.
6. How customers see bank transfer
When the rail is bank transfer:
- The customer sees your account holder name, sort code, and account number alongside a unique payment reference.
- The customer pays from their banking app or online banking, including the reference.
- The money arrives in your bank account (usually next-day for UK Faster Payments).
- You see the payment in your bank account, go into StudioOps, and mark the invoice paid.
Banks don't tell StudioOps when a transfer clears, so the mark-as-paid step is manual. A good rhythm: check your business bank account once a day for invoices awaiting payment, mark them off, done.
7. Choosing a rail per invoice
When you create or send an invoice, you choose which rail the customer uses. The dropdown shows whichever rails you've set up:
- Card (via Square or Stripe, whichever you connected)
- Bank transfer
A common pattern:
- Card for fast-turnaround invoices — drop-offs, alterations, anything where you want the money in quickly and don't mind the card fee.
- Bank transfer for larger invoices — the wedding dress balance, where avoiding card fees on a £900 invoice is worth the small admin of marking it paid manually.
You can change the rail before you send. Once sent, the customer sees only the rail you chose.
8. Refunds
For Square / Stripe payments, refund from the provider's dashboard (Square Dashboard or Stripe Dashboard). StudioOps reads the refund event and marks the invoice Refunded automatically.
For bank-transfer payments, you refund the customer outside StudioOps (your bank transfer back to them), then go into the invoice and mark it Refunded manually.
A refund doesn't undo the booking — if you also want to cancel the appointment, do that separately from the appointments page.
9. Importing your existing catalogue
If you already have services set up in Square (Catalog items) or Stripe (Products + Prices) from a previous booking tool, StudioOps offers to import them on first connect rather than asking you to retype every one. A dashboard banner appears: Bring your Square menu across in one click (or Stripe). Click to preview, edit duration + price, tick which rows to bring across.
There's a dedicated article — Importing your Square or Stripe catalogue — that walks through the flow including the bits that get deliberately skipped (multi-variation Square items; non-GBP, recurring, or custom-amount Stripe Prices).
10. Security and what touches what
A quick summary of where customer data lives:
- Card numbers — Square or Stripe only. Never touch StudioOps.
- Bank transfer details — StudioOps (your studio's account details, encrypted at rest with AES-256-GCM).
- Last 4 digits + card brand on a paid invoice — StudioOps, for your records.
- Customer name, email, phone — StudioOps, RLS-scoped to your studio.
StudioOps is PCI DSS SAQ A scope — the lowest-risk merchant category, because we never see card numbers regardless of which provider sits behind the checkout button.
See also
- Connecting Stripe to StudioOps — the dedicated walkthrough for the Stripe rail.
- Importing your Square or Stripe catalogue — bring an existing menu across on first connect.
- Quotes and invoices in StudioOps — the editor that sends invoices through whichever rail you've connected.
- Booking rules and your cancellation policy — how the slot hold + cancellation flow ties into the deposit / full-payment-at-booking rules.
If you get stuck, the StudioOps help centre at studioops.uk/help has search and a ticket form. For anything urgent, email help@studioops.uk.