How to take deposits on Shopify bookings

Stanislav TyshchenkoTutorial9 min readAug 4, 2026
Taking a deposit on a Shopify service booking

If you sell products on Shopify, checkout is simple: the customer pays the full price, you ship the thing. If you sell time — a two-hour tattoo session, a bridal hair trial, a photography shoot — full payment upfront is a hard ask, and £0 upfront means you eat the cost when someone doesn't show.

A deposit is the middle ground. The customer pays a small amount to hold the slot, you keep it if they vanish, and the balance is settled later. It's the single most effective no-show fix I've seen service businesses use, and it's also the thing Shopify's native checkout doesn't do out of the box.

This is a practical guide to getting it working: what your options actually are, how to set one up, how much to charge, and what to do about the remaining balance.

Shopify's checkout charges the full product price, so a deposit has to come from somewhere else — a draft-order workflow, a deposit/partial-payment app, or a booking platform that treats the deposit as part of the booking itself. For service businesses, the third option is the only one that keeps the deposit tied to the appointment, the cancellation window, and the balance owed.

Why deposits are awkward on Shopify in the first place

Shopify's checkout was designed around a product with a fixed price and a fixed inventory count. You add it to a cart, you pay 100% of it, an order is created, and fulfilment begins. Every part of that flow assumes the transaction is complete at checkout.

A service booking breaks three of those assumptions at once:

  • The price isn't always final. A colour correction quoted at £120 might land at £160 once the stylist sees the hair. A room rental billed hourly depends on when the customer actually leaves.
  • Payment happens in stages. Deposit now, balance at the appointment — or deposit now, balance the night before.
  • The thing being sold is a time slot, and if it's cancelled at 8pm the day before, you can't sell it again. The deposit exists to price that risk.

None of that is a criticism of Shopify. It's just that the checkout is doing exactly what a product store needs, and a service store needs something else layered on top. I wrote about that split in more detail in Shopify booking widget vs full store — the deposit question is one of the clearest places where the two diverge.

The three ways to take a deposit

There are really only three shapes this takes. They're listed here roughly in order of how much manual work they leave you with.

ApproachDeposit at checkoutBalance handlingTied to the booking?Manual work
Draft orders / invoicesNo — you send an invoice for the depositSecond invoice, sent by handNoHigh
Partial-payment appYes — % or fixed amountCharge saved card or second invoiceLoosely — it's a product, not an appointmentMedium
Booking platform with deposits built inYes — set per serviceBalance tracked against the booking, chargeable laterYesLow

1. Draft orders and invoices

The zero-app version. You take the booking (by phone, DM, or a form), create a draft order in Shopify for the deposit amount, and email the invoice. When the job is done, you create a second order for the balance.

It works, it costs nothing extra, and it falls apart the moment you're doing more than a handful of bookings a week. Nothing links the deposit to a calendar slot, so no-shows still require you to remember who paid what. Fine for a photographer taking four shoots a month. Not fine for a salon with three chairs.

2. A partial-payment or deposit app

There's a category of Shopify apps that let a product be sold at a percentage of its price, with the remainder collected later. They do the job they advertise — the deposit is taken at checkout, in the normal Shopify flow, and the customer gets a normal order confirmation.

The limit is that these apps think in products, not appointments. The deposit is attached to a line item, not to a time slot with a staff member and a cancellation window. So you still need something else deciding whether 2pm on Thursday is available, and the two systems don't know about each other. When a customer cancels inside your window, nothing automatically decides whether the deposit is forfeited.

3. A booking platform that handles the deposit as part of the booking

This is the approach where the deposit stops being a payments problem and becomes a booking rule. The deposit amount is a property of the service — "Balayage: £45 deposit, £180 total" — and it's charged when the slot is confirmed. The balance stays attached to the booking. The cancellation window decides what happens to the deposit if the customer cancels.

This is how deposits and cancellations work in Opencals, and I'll be upfront that I built it, so take the framing with that in mind. The reason it's built that way isn't clever product design — it's that a deposit only makes sense in relation to a cancellation policy, and if those two things live in different tools, someone has to reconcile them by hand every week.

You can run this alongside Shopify

Using a booking platform for deposits doesn't mean leaving Shopify. Opencals installs as a Shopify app, so product orders keep flowing through your existing store while service bookings — deposits included — are handled by the booking layer. If most of your revenue is services, running the booking storefront as the main entrance and keeping Shopify for retail is also a common setup.

Setting up a deposit on a booking, step by step

The specifics differ by tool, but the sequence is the same everywhere. This is the version for a booking platform where deposits are a service setting.

1

Decide which services need a deposit

Not all of them do. Deposits earn their keep on long, high-value, or hard-to-refill appointments. A 20-minute fringe trim doesn't need one; a four-hour tattoo session does. Start with the two or three services where a no-show genuinely hurts.

2

Set the deposit amount per service

Either a fixed sum or a percentage of the service price. Fixed amounts are easier for customers to understand and easier for you to explain on the phone. Percentages scale better if your prices vary a lot between services.

3

Set the cancellation window

This is the part people skip, and it's the part that makes the deposit mean something. Define how far in advance a customer can cancel and still get the deposit back — 24 or 48 hours covers most businesses. Inside that window, the deposit is retained.

4

Write the policy into the booking flow

The deposit terms should be visible before payment, not buried in a confirmation email. Customers accept deposits readily when the reason is stated plainly; they dispute them when they feel ambushed.

5

Decide how the balance gets collected

Three normal options: card on file charged after the appointment, an invoice sent when the work is done, or payment in person. Pick one and make it consistent — mixed methods are where reconciliation time goes.

6

Run it for a month, then look at the numbers

Compare no-show rate and booking volume before and after. If bookings dropped noticeably, your deposit is too high for your market. If no-shows didn't move, it's probably too low to be a real commitment.

How much should the deposit be?

There's no universal number, but there is a principle: the deposit should hurt slightly more than the inconvenience of showing up. Too low and it's a rounding error the customer will happily forfeit. Too high and you lose bookings from people who'd have turned up anyway.

What tends to work in practice:

  • Short, low-value appointments (£20–£50): often no deposit at all, or a flat £5–£10. The admin overhead can exceed the loss you're preventing.
  • Standard appointments (£50–£150): 20–30%, or a flat amount around £20–£30. Enough to signal commitment.
  • Long or high-value work (£150+): 25–50%. Tattoo artists, colourists doing full transformations, photographers blocking half a day. Here the deposit is also covering materials and prep time you've already spent.
  • New customers specifically: some businesses charge a deposit only on first bookings and drop it for returning clients with a good record. This is a nice compromise if you're worried about friction — it targets the risk without taxing loyal customers.

One thing worth saying honestly: deposits will cost you some bookings. That's the trade. You're exchanging a slice of top-of-funnel volume for a much higher show rate on the bookings you do get. For most service businesses that's a good trade, because an empty chair at 2pm can't be resold, but it's a real trade and not a free win.

The deposit is only half of it — the policy is the other half

A deposit with no stated policy is just a prepayment. What turns it into a no-show deterrent is the rule attached to it, and that rule needs three things:

  1. A window. "Cancel more than 24 hours before your appointment for a full refund of your deposit."
  2. A consequence. "Cancellations inside 24 hours, and no-shows, forfeit the deposit."
  3. Visibility. The customer sees both before they pay, and again in the confirmation.

If your booking system doesn't know the cancellation window, none of this is enforceable without you personally adjudicating every case — which is exactly the job you were trying to automate. This is the concrete reason the deposit belongs next to the booking rather than in a separate payments app.

Be generous once

The most common mistake I see is rigid enforcement on a genuine emergency. Keeping a £40 deposit from someone whose car broke down buys you £40 and costs you a customer and a review. Most owners I've talked to hold the policy firmly by default and waive it once, quietly, when the reason is real. The policy exists to change behaviour at booking time, not to maximise forfeitures.

Collecting the balance

Once the appointment happens, the rest of the money has to move. The three workable patterns:

Card on file, charged after the appointment. The smoothest for the customer — they walk out, the balance is charged, a receipt lands. Requires that your payment setup supports saving the card at booking, and it requires you to be accurate, because charging the wrong amount to a saved card is a fast way to a chargeback.

Invoice after the appointment. Best when the final price isn't known until the work is done — extra colour, an overrun session, add-ons chosen on the day. You send the balance as an invoice and the customer pays online. This is the pattern behind invoicing customers after a booking, and it's what most businesses with variable pricing end up using.

Pay in person. Nothing wrong with this if you already have a terminal at the desk. The deposit did its job by getting the person through the door; the rest is a normal counter transaction.

If customers can add extras at booking time — a treatment upgrade, an extra hour, a product bundle — those should be priced into the balance rather than bolted on separately. Booking add-ons covers how that fits together.

When not to charge a deposit

Deposits aren't universally correct, and it's worth naming the cases where they cost more than they save:

  • Very short appointments where your slot refills easily. If a cancelled 2pm reliably gets taken by a walk-in, the no-show isn't costing you much.
  • A brand-new business with no reviews. Asking strangers for money upfront when they have no signal about you is a genuine conversion problem. Get a base of reviews first, then introduce deposits.
  • Highly competitive local markets where nobody else charges one. You can still do it, but you need to explain why on the booking page, and you should expect to lose a few price-sensitive customers to the salon down the road.
  • Free consultations. Charging a deposit on a free intro call defeats the purpose of offering it.

Where to go next

Frequently Asked Questions

Deposits are the rare change that's both small to implement and immediately visible in the numbers. Pick your two riskiest services, set a deposit and a 24-hour window, say it plainly on the booking page, and look at your no-show rate in a month.

If you want to see how it's configured end to end, the deposits and cancellations page walks through the settings, and pricing is $0.99 per booking with no monthly fee — so a slow month costs you almost nothing.

Early Access — 3 Months Free

Ready to transform your service business?

Join 150+ businesses already using Opencals. Get 3 months completely free with all features unlocked.

No credit card required
Setup in 10 minutes
Cancel anytime