PercenyPerceny
All Tutorials
Appointments & Booking

Require Deposits and Prepayment

Taking money up front: who pays, how much, when it stops being refundable, and how the kiosk mirrors it.

Intermediate7 minWeb dashboard

A deposit is the cheapest no-show insurance there is. Perceny lets you decide who leaves one, how much, and what happens to it.

The three levels of commitmentCopy a link to this section

From lightest to heaviest:

  1. A card on file. Nothing is charged. You can charge a fee later if they do not show.
  2. A deposit. Part of the total is charged at booking and counts toward the ticket.
  3. Full prepayment. The whole thing is paid up front.

Most shops want (1) for regulars and (2) for new clients.

Setting it upCopy a link to this section

Features Configuration → Payment Settings.

Always Require Card on File: clients must save a card before they can book. This is level 1, and it is what makes fees collectable at all.

Require Prepayment at Booking: clients are charged the deposit when they book, rather than paying after the ticket is completed.

Require Prepayment for New Clients: first-timers pay even if returning clients do not. This is the setting most shops actually want.

Require Prepayment for Existing Clients: the reverse, for a regular who has burned you.

Prepayment Amount (Fixed): a flat deposit, e.g. $20.

Prepayment Amount (Percentage): a share of the appointment total. Better for a menu with a wide price range.

Include Tips in Deposit: base the deposit on services plus tips. Usually off; asking for a deposit on a tip that has not been decided yet reads badly.

When it stops being refundableCopy a link to this section

Non-Refundable Window (Minutes) is the whole policy in one field:

  • A positive number: the deposit stops being refundable that many minutes before the appointment. "24 hours' notice" is 1440.
  • 0: never refundable.
  • -1: always refundable.

Pick this deliberately, then write it in Custom policy text on the Appointment Settings tab so clients see it while booking, and pick the reminder under Include the policy in so they see it again there.

Individual clientsCopy a link to this section

A client can be flagged as prepay-required regardless of your general rules: the answer for someone with a history. Honor must-prepay clients at the kiosk (Kiosk Settings) makes that flag apply to their walk-ins too.

Until your bank account setup is finishedCopy a link to this section

Cards on file, deposits and prepayment are all taken through your bank account (the Stripe setup under Bank Account). Until that setup can take charges and payouts, none of them is asked for, whatever the settings above say: the booking page offers Pay in Person only, and clients book and pay at the visit. This includes a setup that is only partly done, where the account exists but onboarding is unfinished, or charges or payouts are switched off.

The AI receptionist follows the same rule on calls and texts. It books the time, tells the client payment is in person at the visit, and sends no deposit or card link. Nothing is held for your team to finish. Its setup checklist shows Payment setup is not finished, so no deposit or card on file is taken under Checkout until the setup is complete. From then on, deposits and cards are asked for again on the booking page and by the receptionist alike.

Your business's own app and Perceny Go apply exactly the same rules. A client booking there pays the deposit, or saves the card on file, without leaving the app: with Apple Pay, Google Pay, a new card, a card they saved with you, or a card from their Perceny Wallet. A new card is entered by tapping New Card before booking; it then shows as the card's brand and last four digits (Tap to change), and Book only confirms it. If the bank declines it, the reason appears under the card. When their bank asks to confirm the charge, the app shows the bank's check and the booking stands once it is approved.

With Klarna, Affirm or Afterpay turned on (Payment Settings), the apps offer Pay Over Time exactly where the booking page does, listing only the providers that accept the booking's total. The client picks a provider, approves the plan on its page and comes back to the app with the appointment booked. Split and group bookings, gift cards, memberships, rewards and promo codes all carry through. If they back out, nothing is charged and the time is released within a few minutes.

Where each stylist takes card payments on their own account (booth rent), the booking reads the account of the stylist being booked.

Holding a slot until the deposit is paidCopy a link to this section

When you book someone yourself, set How to Pay to Deposit Required and pick Cancel if the deposit is not paid within (15 minutes up to 24 hours, never past the appointment's start). The client gets a payment link, and the slot is held for them, not booked yet. The link's page shows what is being held: the day and time, who does it, the services, and where the visit happens (the client's address or route for a house call or a trip, your address otherwise), on the web and in the apps. Above it, a countdown shows how long the client has left to pay (or to add their card) and the deadline time, ticking down to the second. Once it reaches zero, the page says the hold has ended.

A client who has your app or Perceny Go can also pay from the appointment itself: it shows Pay Deposit (or Add a Card, when the hold only needs a card on file) with the same countdown, and takes the payment in the app, with a saved card, Apple Pay, Google Pay or a new card. Payment links opened inside the app are paid the same way.

On the calendar the hold has an orange Awaiting Payment badge, and its left edge takes the hold color from your status colors. Open it, on the web or in the app, and it starts with a Deposit required banner: the amount, and how long the slot stays theirs, counting down. From there:

  • Send Payment Link sends the deposit link to the client again.
  • Extend Hold gives them more time, counted from now.
  • Check Out in Person is for a client who is standing there and wants to pay now. Check Out stays hidden until you press it, so nobody charges a held booking by accident.

Before it holds a time, the AI receptionist tells the client the deposit in the same question that asks to book, together with the price when the price is only known at that point (a ride priced on its route, for example). One yes from the client holds the time and texts the link: they are never asked once for the price and again for the deposit.

Until the deposit is paid, the AI receptionist says the time is held, never that it is booked. A client who comes back after the hold ran out is not told the time is still theirs: the receptionist checks the calendar again and holds it anew if it is still free.

If the deadline passes unpaid, the appointment is canceled automatically and the client is told. The AI receptionist can also text a reminder a few minutes before the hold runs out, and call or text the client afterwards to offer the time again: see Automatic Confirmation Calls and Callbacks. Sending the link and extending the hold each depend on the member's role permissions, the same on the web and in the app.

Sometimes the AI receptionist holds a time but cannot create its payment or card link, even though your bank account setup is finished (a payment problem on the shop's side). Then the hold has no deadline and is never canceled automatically: the client is told the time is held and your team will reach out to finish the booking, and your team gets a notification naming the client, the services and the time. Open the appointment and finish it: Send Payment Link or Extend Hold to give the client a link and a deadline, take the deposit with Check Out in Person, or confirm the booking. Only these holds are kept for your team. A hold whose link the client already received is released when its deadline passes, even if someone deletes the link afterwards, and once you give a kept hold a deadline with Extend Hold it is released like any other if that deadline passes unpaid.

To see every booking the AI receptionist made and whether it is still held, was paid, or ran out unpaid, open Messaging → AI Bookings: see Check What Your AI Receptionist Booked.

At the kioskCopy a link to this section

The kiosk has its own, parallel set:

  • Enable card capture for kiosk booking: clients booking at the kiosk can add a card, on the reader or on screen. Whether that saves a card or charges a deposit follows your regular appointment prepay settings.
  • Require card for kiosk walk-ins: a card before joining the walk-in queue.
  • Walk-in card capture: save a card, or charge a deposit.
  • Always require a card on file: every walk-in at least saves a card.
  • Require a deposit from new clients: a first walk-in leaves a deposit.
  • Walk-in deposit amount / Walk-in deposit percentage: how much.

Closing the ticket afterwardsCopy a link to this section

A prepaid appointment can close itself. Auto Finish Prepaid Appointments, with its own delay and start/end reference, closes prepaid tickets once the appointment has passed. The kiosk equivalent is Auto-Finish Deposit Walk-Ins, which also charges the remaining balance to the saved card.

DisclosureCopy a link to this section

If you are going to keep money, say so first:

  • Custom policy text is shown on the booking policy screen and added to the texts you pick under Include the policy in.
  • Show No-Show Policy For Pay-In-Person Walk-Ins discloses the policy at the kiosk even when no card step is shown.
  • Require Pre-Charge Disclosure shows a fee disclosure before a processing fee is charged.

A policy the client saw is a policy you can defend on a chargeback. One they did not is not.

Test itCopy a link to this section

Book as a new client in a private window and watch what is charged. Then book as an existing client. The two paths differ, and the new-client path is the one that costs you money if it is wrong.

Share this tutorial

Your Salon Deserves Better Than Spreadsheets And Group Chats.

Set up your salon in 10 minutes. See why salons are switching.

Get Started
  • No long-term contracts
  • Free migration
  • Live in ~10 minutes
  • Support 7 days a week