Introduction
Connect your Stripe account and set your payment policy on the Payments settings page. This is where you set up deposits, view transaction fees, and manage your Stripe Connect integration.
Plan Availability
Stripe Connect, deposits, saved cards (Card on file) and Afterpay are available on every plan - Solo, Starter, and Professional. There are no plan restrictions on core payment functionality. Digital tipping is part of the review-and-tip flow on the client portal, which comes with client reviews - a Professional-plan feature (see Tips).Accessing Payment Settings
- In the main sidebar, go to Settings
- Select Payments from the settings menu
Stripe Connect
Stripe Connect lets you accept card payments from clients who book online. Bella creates a Stripe account for your business, so funds go directly to your bank account.Connection Status
The status badge shows one of these states:- Connected (green): Your Stripe account is fully set up and ready to accept payments
- Setup incomplete (amber): You started connecting Stripe but haven’t finished its steps. Click Finish Stripe setup to pick up where you left off
- Restricted (amber): Your Stripe account requires additional verification. Click Stripe dashboard to complete it
- Not connected (grey): No Stripe account is linked yet
Connecting Stripe
If you haven’t connected yet:- Go to Settings → Payments
- Click Connect Stripe
- A confirmation dialog explains what will happen:
- Create a Stripe account for your business
- Redirect you to Stripe to verify your identity and business details
- Enable you to accept card payments through Bella Booking
- Click Continue to Stripe
- Complete the Stripe onboarding process (typically 5-10 minutes)
- You may need to provide business documentation (ABN for Australia, EIN or SSN for United States, IRD number for New Zealand) and bank account details
After Connecting
Once connected, the page shows:- Status: Connected (Setup incomplete if you haven’t finished Stripe’s steps, or Restricted if verification is required)
- Account ID: Your Stripe connected account identifier
- Finish Stripe setup button (while setup is incomplete): Reopens Stripe’s setup flow so you can finish the remaining steps
- Stripe dashboard button (once set up): Opens your Stripe dashboard in a new tab, where you can view payouts, transactions, disputes and account settings
What You Can Do Once Connected
- Accept deposits when clients book online (fixed amount or percentage)
- Accept card payments, Apple Pay, and Google Pay through your online booking page
- Accept Afterpay / Clearpay payments for deposits, gift cards, packages and product shop orders (see Afterpay / Clearpay)
- Let clients save cards for faster checkout (see Saved Cards & Card on File)
- Charge saved cards during appointment checkout (Card on file)
- Automatic refunds when clients cancel within the cancellation policy (see Cancellation Policy)
- Sell digital gift cards through your online booking portal (see Gift cards)
- Process recurring membership subscription payments (see Memberships)
- Accept payments for online product purchases through the Product shop
Disputes and chargebacks
A dispute (also called a chargeback) is when a client asks their bank to reverse a card payment. Card payments taken through Stripe are charged on your own Stripe account, so a dispute is raised there and you respond to it in Stripe.- Where to respond: go to Settings → Payments and click Stripe dashboard. Stripe shows the dispute and takes your evidence there.
- The money: when a dispute opens, Stripe takes the disputed amount and its dispute fee from your Stripe balance. What happens next follows Stripe’s rules: see Stripe’s guide to disputes.
- In Bella: there is no disputes screen. The appointment and the sale stay as they are, whatever the bank decides.
Account Balance
When Stripe is connected, an Account Balance card appears at the top of the Payments settings page showing a snapshot of your Stripe account finances:
This card provides a quick overview without needing to open the Stripe Dashboard. For detailed transaction history and payout breakdowns, click Stripe dashboard.
Bella has no payout setting. Your payout schedule, which decides when Stripe sends money to your bank, is set in your Stripe account: click Stripe dashboard to see or change it.
Payment Policy
Configure whether clients must pay a deposit (or save a card) to secure a booking. When you require a deposit, two more rows sit under it and decide what that deposit actually does: When a client books online (whether the appointment exists before the deposit is paid) and Deposit applies to (which bookings are asked for one at all). Both are covered below. Note: If Stripe is not connected - or you started connecting but haven’t finished Stripe’s setup - the payment policy options are unavailable. An alert in their place prompts you to connect Stripe (or finish its remaining steps) first.Policy Options
When a client books online
This row decides whether an online booking exists before its deposit is paid. It sits under Payment policy once Require a deposit is selected. While one of your services or membership plans sets its own deposit, it also shows under the other policies: on the Payment policy card in Settings > Booking policies, and here under No upfront payment.
Under Pay to book:
- The client goes straight to a payment page headed Your time is held until the hold’s end time. Leaving the page doesn’t give the time back: the same page is waiting with a Pay deposit button if they come back before the hold ends (or Pay to confirm if Collect at booking took an appointment fee on that charge)
- Your team can’t book another client over a held time. The Scheduler blocks the save with “A client is paying for this time until 2:45 PM.” (the business’s own clock) until the hold ends
- If the client holding the time rings to book instead, book them as usual. The save asks Book here instead? Choosing it closes their payment page first, so they can’t pay online as well, then books them. They aren’t sent an incomplete booking reminder, and the lead doesn’t appear under Incomplete bookings. If they paid a moment earlier, the save stops and their paid booking stands. A payment that was already going through as you chose it is refunded to them in full
- The held time shows on the Scheduler as a grey Held online block in the team member’s column, with the client’s name and when the hold ends. It isn’t an appointment yet, so you can’t open or move it. It goes when the client finishes (their appointment takes its place) or when the hold ends. No notification is raised
- If the client walks away, the hold ends quietly. Nothing is cancelled and no appointment message goes out, because nothing was ever booked. The lead lands on the Scheduler’s Incomplete bookings tab as Stopped at payment, where it gets the usual abandoned-booking follow-up: the bell, and the Incomplete booking reminder if you have it switched on
- A payment that lands while the time is still held books the appointment even if the start time has just passed. A 9:00 appointment held at 8:50 and paid at 9:04 is booked. Once the hold has ended, a late payment is refunded in full and the client is asked to choose a time again
- The money arrives with the booking, so the client gets a confirmation instead of a Pending confirmation / deposit message
Pay to book applies to every deposit, whether your location’s policy asks for it or a
service-level override or a membership benefit does.
Bookings taken through your own website with an API key have no payment page to be held on, so
under Pay to book they are created first and released 30 minutes later if the deposit is
unpaid.
Deposit applies to
This row decides which bookings are asked for a deposit at all:
How a deposit is collected depends on who made the booking:
- Bookings clients make themselves - the client pays on a payment page as part of booking.
- Appointments you create (under All bookings) - the appointment is held with a “Deposit required” indicator and the client is sent a payment link. You can instead record the deposit manually (cash, bank transfer), charge a saved card on file at the moment you create it, or waive or override the deposit for that one appointment.
When a team member books
This row sets how long a client has to pay the deposit on an appointment your team creates before Bella cancels it and frees the time. It sits below Deposit applies to and only shows when that is set to All bookings, because under Online bookings only your team’s appointments don’t ask for a deposit.- Under Payment policy (Settings > Payments, or the Payments & deposits card on Settings > Booking policies), open When a team member books
- Choose from: 30 minutes, 1 hour, 2 hours, 4 hours, 8 hours, 12 hours, 1 day, 2 days, 3 days, or 7 days
- Choose Don’t auto-cancel (the default) to keep unpaid appointments until you act
- The appointment goes on your calendar straight away and the client gets a link to pay the deposit. When your Pending confirmation message uses
{{ConfirmationRequirement}}(the stock message does), it says until when the time is held, unless the appointment starts before the time limit ends: then nothing will cancel it and no deadline is shown - The countdown starts when the appointment is created, not counted back from the appointment date, and the Scheduler shows the deadline on the appointment
- To give one client a different time, change Time to pay under the deposit on the new appointment form. It starts at your time limit and offers the same choices, or Custom in minutes, hours or days. The note under it says when the appointment will be released if unpaid, or “The appointment starts first, so it won’t be released.” There’s no Time to pay for a walk-in, a waived deposit or a deposit charged to a saved card
- An edit that leaves a client owing a deposit they haven’t been asked for sends them the deposit request when you save, and gives them the whole time limit from that moment. That covers naming a walk-in, adding a service that takes a deposit, and changing the appointment’s client. The form’s Notifications section shows Deposit request with “Sends on save”: switch it off to send nothing. The time limit still starts
- If the deposit is still unpaid when the time ends, the appointment is cancelled with reason “Deposit not paid”, within 15 minutes of the time ending. The client gets your cancellation message, the cancellation doesn’t count toward their cancellation record, and your team sees it in the notifications bell
- It only applies to appointments booked after you turn it on. Appointments already on your calendar, imported appointments, appointments split off another one, walk-ins not yet named, and appointments that have already started are never cancelled by it
- Each appointment keeps the time its client was told. Change the time limit later and only new appointments get it: one created under a 1-hour limit is still cancelled an hour after it was created, even if you change the limit to 1 day. When you change a time limit, the save bar says: “Applies to bookings made from now. Bookings already on your calendar keep the time their client was told.” Switch it to Don’t auto-cancel and nothing more is cancelled
- Extend time to pay, in the appointment’s Actions menu, gives a client longer on a Booked appointment that still owes its deposit. Choose how long they have from now: only times later than the one they were told are offered. With Notify the client on (the default), Bella sends the deposit request with the new time. The appointment’s Activity tab shows Time to pay extended, with the new time and the old one
- Resend deposit request on the appointment gives the client your current time limit again, counted from when you send it, and never less time than they had, so a longer time you gave them stays; the message tells them until when, unless the appointment starts first. It works after the time has ended too, as long as the appointment hasn’t been cancelled yet. Send reminder does the same while the deposit is owed, and so does a reminder you send on save from the edit form
- Once the time has ended, the appointment says “Time to pay ended” with that time until the next check cancels it
- Charging a saved card, recording the deposit (cash, bank transfer) or waiving it stops the countdown for that appointment
- For a recurring series only the first appointment has the time limit, and the Time to pay you choose applies to it
- The same safeguard as online bookings applies: if one check would cancel several appointments at once (more than 10, or more than a quarter of your booked appointments once it is more than 2), nothing is cancelled and the Bella team is alerted to check with you first
When a card on file is required
Under the Card on file policy, or where a service-level override or a membership benefit asks for a card, an online booking from a client with no saved card doesn’t reach your calendar until they save one. There’s nothing to switch on. It’s what the policy does, and it has nothing to do with When a client books online, which governs deposits only.- No appointment is created. Bella holds that time for 30 minutes while the client saves a card, and the slot disappears from your booking page so nobody else can take it
- The client goes straight to a secure card form: Stripe’s hosted page, or a form on the booking page itself if you take payments through Square. Nothing is charged. The card is saved so you can charge a late cancellation or no-show fee later if your cancellation policy applies
- Saving the card creates the appointment, already Confirmed, and the client gets the confirmation message
- Your team can’t book another client over a held time. The Scheduler blocks the save with “A client is saving a card for this time until 2:45 PM.” (the business’s own clock) until the hold ends
- If the client holding the time rings to book instead, book them as usual. The save asks Book here instead? Choosing it closes their card page first, then books them. They aren’t sent an incomplete booking reminder, and the lead doesn’t appear under Incomplete bookings. If they saved their card a moment earlier, the save stops and their own booking stands
- The held time shows on the Scheduler as a grey Held online block in the team member’s column, with the client’s name and when the hold ends. It isn’t an appointment yet, so you can’t open or move it. It goes when the client finishes (their appointment takes its place) or when the hold ends. No notification is raised
- If the client walks away, the hold ends quietly. Nothing is cancelled and no appointment message goes out, because nothing was ever booked. The lead lands on the Scheduler’s Incomplete bookings tab as Stopped at card, where it gets the usual abandoned-booking follow-up: the bell, and the Incomplete booking reminder if you have it switched on
- A card saved while the time is still held books the appointment even if the start time has just passed. Once the hold has ended, the client is asked to choose a time again
- A client who already has a saved card is never asked again. That booking is created as usual and confirms straight away, unless you require approval
- A client who uses a package for the booking saves a card too. The package pays for the service; nothing is charged, and the saved card lets you charge a late cancellation or no-show fee. A service’s own card requirement still applies when a package covers that service; a membership benefit’s doesn’t, because the package pays for that service rather than the membership
- Under the Card on file policy, a service or membership benefit with its own deposit still needs the card. The client pays the deposit, which saves their card. When that deposit comes to nothing (a package or a gift card for the service pays for it, or a discount makes it free), the client saves a card instead, so a booking never asks for less than your location’s policy
- A deposit on a booking that also needs a card is taken by card only, without Afterpay, because Afterpay saves no card
Bookings taken through your own website with an API key have no booking page to save a card on.
They are never held, and the card requirement never applies to them.
What happens when a client doesn’t finish paying
A payment policy holds an online booking until the client completes the payment step. Most clients finish straight away - and under the card-on-file policy a client who already has a saved card has nothing to do, so their booking goes through as usual (and confirms straight away unless you require approval). When someone doesn’t finish, what waits depends on your settings, and on two of these rows no appointment exists yet:
Where a booking exists, the client is sent a link to finish and you’re notified so nothing sits
unnoticed. A card hold shows Approve and Decline right on the appointment, because approving
it gives up the saved card. A deposit hold uses the appointment’s own menu instead - Approve,
Record deposit, or Cancel.
Approving a held booking waives the payment step for that appointment. For a card-on-file hold
that means there’s no saved card to charge if the client later cancels late or doesn’t show, so
Bella asks you to confirm before it goes through.
Deposit Configuration
When “Require a deposit” is selected, configure the deposit type:
Additional fields:
- Deposit Amount: Shown when deposit type is “Fixed amount”. Enter the dollar amount clients must pay.
- Deposit Percentage: Shown when deposit type is “Percentage of total”. Enter a value between 0 and 100.
How Deposits Work
The steps depend on When a client books online. Pay to book:- Client selects services and, if enabled, a team member on your online booking page, then taps Book
- No appointment is created. Bella holds that time for 30 minutes and takes the client to a payment page: Stripe’s secure payment page, or a card form on the booking page itself if you take payments through Square
- The page is headed Your time is held until the end of the hold, and shows the deposit due today and the balance due at the appointment
- Client pays
- The appointment is created, already Confirmed, and the confirmation notification is sent. There is no Pending confirmation / deposit message, because nothing is pending
- The deposit is applied toward the total service cost - any remaining balance is due at the appointment
- Client selects services and, if enabled, a team member on your online booking page
- Appointment is created in “Booked” status with an “Awaiting Deposit” indicator
- Client receives a Pending confirmation / deposit notification (SMS and/or email) containing a deposit payment link
- The email shows a “Pay deposit & confirm” button (amber) with the deposit amount. If Collect at booking took an appointment fee, the button says “Pay to confirm”. The SMS includes a link to the appointment details page where the client can pay
- Client clicks the link and pays on Stripe’s secure payment page. The link itself identifies them, so there’s no sign-in. If you take payments through Square, they sign in with their phone number first and pay on a card form on the booking page itself
- On successful payment, the appointment status changes to “Confirmed” and a confirmation notification is sent
- The deposit is applied toward the total service cost - any remaining balance is due at the appointment
{{SelfServiceLink}} variable (and the SMS channel is enabled for that reminder). See Automated Messages.
The deposit payment link is sent via the Pending confirmation / deposit
notification, which can be configured as SMS, email, or both (see Automated
Messages). The client pays straight from the
link without signing in, so a client with no phone number can pay from the
emailed link. If you take payments through Square, the client signs in with
their phone number (SMS verification code) to pay: add a phone number to the
client’s profile, or collect the deposit using the Record deposit action.
Auto-Cancel Unpaid Deposits
This is the release valve for Book now, pay within a window: the booking exists, so something has to hand the time back when the deposit never comes. Under Pay to book the 30-minute hold does that job and the row is hidden. You can release a booking automatically when its deposit is not paid within a window you choose:- Under Payment policy (Settings > Payments, or the Payments & deposits card on Settings > Booking policies), set When a client books online to Book now, pay within a window, then open the Auto-cancel unpaid row beneath it
- Choose from: 30 minutes, 1 hour, 2 hours, 4 hours, 8 hours, 12 hours, 1 day, 2 days, 3 days, or 7 days
- Choose Don’t auto-cancel (the default) to keep unpaid bookings until you act
- The countdown starts when the appointment is booked (created) - it is not counted back from the appointment date. An appointment booked six weeks ahead with a 7-day window is cancelled one week after it was booked if the deposit is still unpaid, not one week before the appointment
- With Stripe and a window of up to a day, the payment page is given the same deadline, so a client who leaves it without paying has the booking released the moment the page expires. 30 minutes is the shortest window because that is the shortest life Stripe allows a payment page; choose it if you want an abandoned checkout to release the time straight away. The booking page tells the client until when their time is held
- With Square, and for windows longer than a day, Bella checks for unpaid deposits every 15 minutes and releases the booking on the first check after the window ends
- Released appointments are cancelled with reason “Deposit not paid”
- The window applies only to bookings clients make themselves (your booking page, or your own website through the API). Appointments you or your team create have their own time limit, under When a team member books
- Under Pay to book, one kind of booking still arrives unpaid: a booking taken through your own website with an API key, which has no payment page to be held on. It is created first and released 30 minutes later if the deposit is unpaid, whatever window you had set before
- It applies to bookings made after you switch it on. The bookings already on your calendar at that moment are never touched, and neither are appointments imported from another system or appointments that have already started
- Each booking keeps the time its client was told. Change the length later and only new bookings get the new length: a booking made under a 1-hour window is still released an hour after it was made, even if you change the window to 1 day. Switch the window to Don’t auto-cancel and nothing more is released
- When your team uses Resend deposit request or Send reminder on the appointment, the client gets the whole window again from that moment, and never less time than they had; the message tells them until when, unless the appointment starts first
- To give one client longer, use Extend time to pay in the appointment’s Actions menu. It works on a client’s own booking the same way as on one your team creates
- A booking whose appointment starts before the window ends is never released, so no deadline is shown for it: the client isn’t told their time is held until a moment that has passed
- An appointment with a waived deposit is never auto-cancelled, and for a recurring series only the first appointment follows the window
- As a safeguard, a single check will not release more than a handful of bookings at one business at once; if it ever would, nothing is released and the Bella team is alerted instead
- Cancelled appointments do not count toward the client’s cancellation record
- The client receives a cancellation notification (email and/or SMS) so they can rebook if desired
There is no way to set a deposit deadline relative to the appointment date
(e.g. “pay by one week before your appointment”). If you want to chase unpaid
deposits as the appointment approaches, use the appointment reminders instead -
while the deposit is unpaid, the reminder email includes the Pay deposit
button automatically (until any time limit you set runs out), and the first reminder can be set as far out as 7 days
before the appointment (see Automated Messages).
If a client’s card is declined or they close the payment page, the booking
stays until the window ends and the client can retry from the same deposit
link in the meantime. With no window set, nothing cancels an unpaid booking
but you.
Deposit Precedence Over Confirmation
When both deposits and client confirmation are configured (under Book now, pay within a window, and on the appointments your team creates; under Pay to book an online booking is created only once the deposit is paid, so it is confirmed from the start):- Deposit takes precedence - the appointment stays “Booked” until the deposit is paid, even if appointment confirmation is disabled in Booking policies
- Payment acts as confirmation - once the deposit is paid (online or recorded manually), the appointment is automatically confirmed
- Recording a manual deposit (e.g. cash or bank transfer) also confirms the appointment automatically
- The client receives the deposit payment link instead of a simple confirmation link
Service-Level Overrides
Each service can override the location-level payment policy. Open the service in the Service Catalogue, go to its Booking policies tab, and scroll to the Payment section at the bottom:- Use default: Apply the location payment policy
- No deposit: No upfront payment for this service
- Require deposit: Specify a fixed amount or percentage for this service
- Card on file: The client saves a card to secure the booking - no upfront charge
Adjusting the Deposit on One Appointment
Service and membership overrides are standing rules. For a one-off adjustment, the Scheduler’s appointment form gives you direct control at the moment of booking. When you create (or rebook) an appointment for a client and your policy requires a deposit, the form shows a Deposit required box with the calculated amount, where you can:- Change the amount - the Deposit amount field is pre-filled with the calculated deposit and fully editable; type any figure up to what the client owes (after any discounts) to use it for this booking only - a deposit can never exceed what’s owed, so a larger figure is capped. The payment link, reminders, and the client’s payment page all use your adjusted amount
- Waive it - flip Waive deposit - auto-confirm now to skip the deposit entirely; the appointment confirms immediately. Waiving only decides what the client is asked for up front: if you change your mind later, Record deposit on the appointment still takes one
- Charge it now - if the client has a saved card on file, tick Charge deposit to saved card now to collect the deposit at the moment you create the appointment. If Collect at booking is taking the fee on that charge, the toggle says Charge to saved card now
- Set the time to pay - when When a team member books has a time limit, the Time to pay row sets how long this client has to pay before the appointment is released
The deposit box appears on the create / rebook form. Rebooking from the calendar
confirm uses the policy default; tap Review in form to waive or change the amount.
The edit and reschedule forms have no deposit controls. A custom amount you typed at creation stays
pinned (it can only shrink, if the booking’s total later drops below it), but a
standard calculated deposit still tracks the appointment’s services:
editing an unpaid-deposit appointment’s services changes the amount the client is asked
to pay. After creation, use Record deposit on the appointment to take the deposit,
or a smaller amount, by hand - in cash, on a card, by bank transfer, from a saved card, or
from a gift card the client holds - and again for any later part payment, while a balance
is left. A recorded deposit’s amount can’t be changed; its method or terminal can, with
Edit deposit. The box
is only shown to team members whose role can view client financials.
Deposits and Cancellation Refunds
When a client cancels an appointment that had a deposit paid by card, the refund is calculated based on your Cancellation Policy:- Sufficient notice (cancelled before the cancellation period): The deposit is refunded automatically through your payment provider. A non-refundable appointment fee taken at booking is left out unless you include it (see Appointment fee)
- Insufficient notice, or a no-show: the late cancellation or no-show fee comes out of the deposit first. What happens to the rest of the deposit is your deposit rule, below
- Business override: A team member can manually override the calculated refund amount when processing a cancellation
- Refund the deposit, less the fee (the default): the fee comes out of the deposit and the rest goes back to the client. A $200 service with a $100 deposit and a fee of 25% of the service price: the fee is $50, so $50 is refunded.
- Keep the whole deposit: the client gets none of the deposit back, even when the fee is smaller. The deposit goes towards the fee.
Saved Cards & Card on File
Clients can save their payment cards for faster checkout. Once saved, these cards can be used by both the client when booking online and by a team member when checking out an appointment in the Scheduler.How Clients Save Cards
Clients manage their saved cards through the online booking portal:- The client logs in to your online booking page
- From the user menu (top right), they select Payment methods
- On the Payment methods page they can:
- Add a card - click Add a card to be redirected to a secure Stripe-hosted page where they enter their card details
- Remove a card - click the delete icon next to a saved card and confirm removal
Clients can save a card at any time - they do NOT need to pay a deposit first.
The Payment methods page lets them add a card purely for future convenience
(faster checkout, tip payments, or if you later need to charge a cancellation
fee). This uses Stripe’s secure SetupIntent flow - no payment is taken when
saving the card.
Clients must have an account and be logged in to manage payment methods. The
Payment methods page is only available when Stripe Connect is configured for
your location.
How Cards Get Saved
Cards are always saved through a client-initiated action - a team member cannot add a card on the client’s behalf. Your team can, however, send the client a link to add one: the Copy/Send add-a-card link action on a client (in Clients) opens the portal’s Payment methods page for them, and Send pre-writes an SMS or email with the link.
Once a card is saved through any of these paths, a team member can then charge it from the dashboard (checkout, deposit recording, rebooking).
Card on File at Checkout
When recording a deposit, checking out an appointment, or creating a sale, a team member sees the same four payment options:
The Card on file option always shows the card’s brand, last four digits and expiry date so you can see before charging whether the card is expiring soon or already expired. An expired card shows a red Expired label and cannot be charged; a card expiring within two months shows an amber Expiring label so you can prompt the client to update it.
When Card on file is selected:
- If the client has multiple saved cards, a dropdown appears so you can pick which one to charge
- The action button label updates to reflect the choice - for example “Charge Visa ····4242” or “Charge Visa ····4242 for deposit”
- Clicking the action button processes the payment through your payment provider automatically
- The sale or deposit is recorded with the payment details for reporting and refunds
Refunds for Card on File Payments
When a sale was paid using Card on file, refunds are processed automatically through your payment provider:- Open the sale in Sales > Transactions, open Actions and choose Refund
- Enter the refund amount and reason
- The refund is sent to your payment provider and returned to the client’s original card
- Both full and partial refunds are supported
Payment Links (Pay Your Balance Online)
Ask a client to pay their appointment’s remaining balance online instead of at the counter - useful when they’ve already left, or you simply prefer they pay without you handling a card. Open the appointment (Scheduler, appointment page, or the ⋯ menu on the Appointments list), choose Send payment link, and pick SMS or email. The client opens their appointment from the link, taps Pay now and pays by card, with no sign-in: the link itself identifies them. If you take payments through Square, they sign in with their phone number first. Either way the appointment checks itself out, creating the sale exactly as the till would. See Payment links for the full walkthrough, when the action is available, what the client sees, and the answers to the common questions.Fee Calculator
The fee calculator helps you understand how much you’ll receive after fees for a given deposit amount.Fee Structure
Regional Stripe Fees
Stripe fees are based on the connected account’s country, not the platform’s. The fee calculator automatically uses the correct rates for your region.
For a Stripe account in any other country, Bella shows no calculator and no Stripe rate. It links to Stripe’s pricing page instead, where you can see the rates for your country.
Tax & GST
If your business is registered for GST, VAT or sales tax, Bella captures the tax component on every sale, shows it on the receipt (a tax invoice), and reports it per period for your BAS or VAT return. Turn it on in Settings → Tax.- Register once, per location. Set your rate and label (GST / VAT / Sales tax). Bella suggests sensible defaults from your business’s country.
- Prices already include tax. Enter your prices tax-inclusive - Bella backs the tax out of the price and shows it on the receipt without changing the total. (Tax-added-on-top pricing is coming soon.)
- Per-service and per-product control. Every service and product is taxable by default when you’re registered; mark any of them exempt.
- Tax collected report. Insights → Reports → Tax collected shows taxable sales, exempt sales, tax collected and tax refunded per period.
What you pay Bella is separate. For a business in Australia, your plan,
Messages Plus and SMS credits include GST, and Bella’s invoices to you dated
from 15 October 2026 are tax invoices showing Bella’s ABN. None of this changes
the tax you capture on your clients’ payments.
Who pays processing fees
Bella never adds a processing fee to a client’s payment. The client pays the price you set, and the Stripe or Square fee and Bella’s platform fee on each payment come out of the amount you receive (see the Fee Calculator). This is the same in every country, for every payment: deposits, card on file charges, cancellation and no-show fees, gift cards, packages, tips and product orders. Bella keeps its platform fee when you refund a payment. The fee on a deposit is taken once, when the client pays it: refunding the deposit in full after a cancellation with enough notice doesn’t return the fee, and keeping part of the deposit as a cancellation fee adds no second one. Stripe and Square set their own rules for their fees on a refund. To recover your costs, add an appointment fee: one fixed, named fee on every appointment with a service, charged the same however the client pays.Looking for Pass processing fees? That setting, and its per-service
override, has been removed. Receipts for payments taken while it was on still
show the processing fee line that was charged then.
Digital Tipping
Allow clients to leave tips for team members after their appointment. Tips are processed securely through your connected payment account and go directly to you.Enabling Tips
- Go to Settings → Payments
- In the Tipping section, set Tipping to On
- Apply the change
How Tipping Works
- After an appointment is completed, the client opens Leave a review & tip on the appointment in the online booking portal
- The tip prompt shows a card for each team member who provided the service
- The client selects a preset amount ($5, $10, or $20) or enters a custom amount
- The tip is paid on a secure checkout page
- Your business receives a notification via the notification centre, email, and/or SMS, and the team member who provided the service is also notified
Tip Notifications
When a client leaves a tip, your business receives a Tip received notification. This can be configured in Automated messages with customisable email and SMS templates. Template variables include{{TipAmount}} and {{TeamMemberName}}.
Afterpay / Clearpay (Buy Now, Pay Later)
Allow clients to pay using Afterpay (or Clearpay in the United Kingdom) - a buy now, pay later service that splits payments into 4 interest-free instalments. Clients pay over time; you receive the full amount upfront through Stripe.Eligible Countries
Afterpay is available for businesses in the following countries:
The Afterpay section only appears on the Payments settings page if your business is in an eligible country. Stripe also requires that both your business and the client are in the same country.
Enabling Afterpay
- Go to Settings → Payments
- Under Afterpay (or Clearpay in the UK), choose On
- Click Apply in the bar at the bottom of the screen
Where Afterpay Appears
When enabled, Afterpay appears as an additional payment option alongside card on Stripe Checkout pages for:- Online booking deposits - clients choose between card and Afterpay when paying a deposit, unless the booking also needs a saved card (your Card on file policy, or a service or membership that asks for one). That deposit is card only, so paying it saves the card
- Gift card purchases - Afterpay is available on the gift card checkout page
- Package purchases - Afterpay is available on the package checkout page
- Product shop orders - Afterpay is available on the product shop checkout page
What Clients See
When a client reaches the Stripe Checkout page, they see both Card and Afterpay as payment options. If they select Afterpay, Stripe shows the instalment breakdown (e.g., 4 payments of $30.00 for a $120.00 deposit). The client is redirected to Afterpay to approve the purchase, then returned to your booking page. No changes are needed to your online booking page - Stripe handles the Afterpay UI automatically.How It Works for Your Business
- You receive the full amount upfront - Afterpay pays you immediately through Stripe, and collects the instalments from the client over time
- Stripe processing fees apply - Afterpay transactions are subject to Stripe’s Afterpay processing fees (separate from standard card rates). These fees are set in your Stripe merchant agreement
- Refunds work the same way - cancellation refunds and sale refunds are processed through Stripe regardless of whether the client paid with card or Afterpay. Stripe handles reversing the Afterpay instalments automatically
Cards and Afterpay
When a client pays with a card on a checkout page that also offers Afterpay, their card is still saved for future use (Card on file) as normal. When a client pays with Afterpay, no card is saved - Afterpay is a separate payment method that does not store card details through Bella Booking.Card terminals - name your machines
Run one or more EFTPOS machines alongside Bella? Name them at Settings → Card terminals so every in-person card payment says which machine took it, and each machine balances at end of day.- Go to Settings → Card terminals
- Click Add terminal and type the name your team uses for the machine, such as Front desk (up to 50 characters)
- To rename a machine, click its row, change the name and click Done
- To stop using a machine, click the archive button on its row (Archive terminal). Archived machines are listed under Show archived, where the restore button brings one back
- Click Apply in the bar at the bottom of the screen. Nothing changes until you apply
- Record only. Naming a machine never changes how money moves - payments are still recorded as Card (Manual), processed on your own machine, never charged by Bella.
- At the till: with one or two named terminals, each machine appears as its own row in the payment picker; from three, choosing Card (Manual) asks which machine. The same names appear when recording a deposit, topping up client credit, selling a gift card, and correcting a sale’s collection method.
- Payment method order: the same page shows the payment methods grouped as checkout shows them. Card on file stays first and is selected when the client has a card on file. Under Offline, drag Cash, each machine (or Card (Manual)) and Other by the grip into the order you want, or open a row’s menu and choose Move up, Move down or Set as default, then click Apply. A new machine joins the list once it has a name. The one at the top is the Default: it’s already selected when you open checkout, start a new sale, record a deposit, top up client credit, add a split payment or sell a gift card. Until you change the order, Cash is the default. Once you set an order, three or more machines each get their own row too.
- At end of day: the Card terminal takings card on the Sales summary report shows what each machine took, refunded and netted - attributed to the day the machine actually took or refunded the money, so it lines up with each terminal’s own settlement. A refunded deposit and a reversed client credit top-up reduce the machine that took them, on the day the money was given back. Where a deposit was refunded in more than one part, the total is shown on the latest of those days. The sales CSV also carries Card terminal and Terminal amount columns.
- On receipts: never. Terminal names are for your balancing only; the client’s receipt still reads Card (Manual).
- Archive, don’t delete. Archiving a machine removes it from the picker and never deletes it: past payments keep its name.