Skip to main content

Introduction

Sometimes a client leaves without paying. They were running late for the school pick-up, the card machine was playing up, or you simply didn’t want to hold them at the counter. A payment link asks them to settle up in their own time. You send it by SMS or email, they open their appointment, tap Pay now and pay by card. When the payment lands, Bella checks the appointment out for you — status, sale, tax and receipt, exactly as if you’d rung it through at the till. Nothing changes on the appointment when you send the link. It’s a nudge, not a charge — the appointment only moves once the client actually pays.
You need online payments connected (Stripe or Square) for this to work. See Payment settings to connect.

The action lives in three places, and does the same thing in each:
  • Scheduler — click the appointment, then ActionsSend payment link
  • Appointment page — open the appointment, then ActionsSend payment link
  • Appointments list — the menu on the appointment’s row
You can also open the command palette (Cmd/Ctrl + K) and search for “payment link” — or “unpaid”, “request payment”, “outstanding balance” — to jump straight to the Appointments list. Then:
  1. The dialog shows the balance to collect — the live figure, after any deposit already paid, gift card, package, membership, client credit and discounts. If you pass card processing fees to clients, the fee that will be added is shown underneath.
  2. Choose Email or SMS. Bella sends on that channel only, so you know exactly what went where.
  3. That’s it. The appointment picks up a Payment link sent badge, and the send is recorded in the appointment’s activity history.
Sent it to the wrong number, or the client says it never arrived? Fix their contact details on the client record, then send again. There’s a two-minute pause between sends so an impatient double-click can’t text the client twice.

Why a channel might be unavailable

Under each channel Bella tells you whether it will actually send, and why not if it won’t:

When the action is available

Send payment link only appears when sending would genuinely do something. All of the following have to be true:
  • The appointment is Booked or Confirmed — not already checked out, and not cancelled
  • Online payments are connected for the location (Stripe or Square)
  • The appointment has already started. A balance settles a visit that has happened; for an upcoming appointment you want a deposit instead
  • There is a balance still owing once everything else has come off — deposit, gift card, package, membership, client credit, discounts. If the client’s credit already covers it, there’s nothing to ask for
  • Any required deposit has been settled. An appointment still waiting on its deposit stays in the deposit flow — resend the confirmation request, or record the deposit, first
  • The appointment belongs to the account holder, not a family member. Family members’ appointments are settled at the counter for now
  • You have the Checkout permission (Settings → Team permissions → Appointments)
On the Appointments list the action is offered on any open appointment, and the dialog tells you if that particular one can’t take an online payment.

What the client sees

The SMS (or email) greets them by first name, names your business and the amount, and links straight to that appointment — not a generic list.
  1. They open the link and sign in to their booking account. The code goes to their mobile by SMS, pre-filled when you hold a number on their record. First time in? They register on the spot, which takes a few seconds.
  2. The appointment page shows Balance due with the amount — and the processing fee, if you pass fees on — and a Pay now button. It also appears under My appointments.
  3. They pay by card on a secure hosted checkout page.
The balance shown is always the live figure. If you amend the appointment after sending — add a service, apply a discount — the client sees the corrected amount, never the stale one.
The wording of the payment-link message is fixed and isn’t editable under Automated messages, because it’s sent by hand rather than on a trigger.

What happens when they pay

The moment the payment succeeds, Bella completes the appointment exactly as a till checkout would:
  • Status changes to Completed and a sale is created
  • Tax, package and membership redemptions, loyalty points and discounts are all applied as usual
  • The payment is recorded as Card on File — a card really was charged, just on the client’s own screen
  • The client gets your standard checkout confirmation and receipt
The appointment then shows Paid online by the client, with the date, so you can always tell which appointments settled themselves. On the Appointments list and the client’s record, the Payment link sent badge is replaced by Paid online. If you happen to settle the appointment at the counter first, it’s completed then and there and Pay now disappears from the client’s screen — they can’t pay twice.

Keeping track of who still owes

  • Payment link sent badge — on the Appointments list, the client’s Appointments tab, and the appointment itself (with the date it was sent)
  • Paid online badge — replaces it once they’ve paid
  • Activity history on the appointment records every send, including failures and the reason

Frequently asked questions

Yes, for now. Signing in with a one-time code sent to their mobile is what proves the appointment is theirs before any card details are entered. The number is pre-filled from their client record, so it’s a couple of taps.
Not on this page. Once the appointment is completed they can tip from Leave a review & tip on the appointment in their booking portal — see Digital tipping.
No. The hosted checkout collects the whole balance in one payment.
Yes, if they have one — check the appointment out and choose Card on File. A payment link is for when you’d rather the client authorised the payment themselves.
Online balance payment is limited to the account holder for now, so a dependant’s appointment can’t be linked to a payer’s login. Take those at the counter.