> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bellabooking.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Payments & Deposits

> Connect Stripe to accept online payments, configure deposit requirements, and manage saved cards for bookings

## Introduction

Connect your Stripe account and set the payment policies for online bookings on the **Payments** settings page. This is where you set up deposits, view transaction fees, and manage your Stripe Connect integration.

<Frame>
  <img src="https://mintcdn.com/bellabooking/i1XIguP1H6KBMOO3/images/settings-payments.webp?fit=max&auto=format&n=i1XIguP1H6KBMOO3&q=85&s=88e2085485e717b98e4c85a07f4e4a76" alt="Payments settings with Stripe Connect status, payment policy selector, and fee calculator" width="1440" height="1225" data-path="images/settings-payments.webp" />
</Frame>

**Note:** Payments is separate from [Billing & subscription](/settings/billing). Billing manages your Bella Booking subscription plan. Payments manages how your clients pay you for appointments.

### 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](/tips)).

***

## Accessing Payment Settings

1. In the main sidebar, go to **Settings**
2. Select **Payments** from the settings menu (under the location settings group)

**Access:** anyone whose role has **Manage settings** (the Owner and Admins by default)

***

## 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:

1. Go to **Settings** → **Payments**
2. Click **Connect Stripe**
3. 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
4. Click **Continue to Stripe**
5. Complete the Stripe onboarding process (typically 5-10 minutes)
6. 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, and packages (see [Afterpay / Clearpay](#afterpay--clearpay-buy-now-pay-later))
* Let clients save cards for faster checkout (see [Saved Cards & Card on File](#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](/settings/booking-policies#cancellation-policy))
* Sell digital gift cards through your online booking portal (see [Gift cards](/gift-cards/index))
* Process recurring membership subscription payments (see [Memberships](/memberships))
* Accept payments for online product purchases through the [Product shop](/products/sell-online)

### 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](https://docs.stripe.com/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:

| Field | Description |
| - | - |
| **Available balance** | Funds that have cleared and are ready to be paid out to your bank account |
| **Pending balance** | Funds from recent transactions that are still being processed by Stripe (typically 2-7 business days depending on your region) |
| **Reserved balance** | Funds held by Stripe as a reserve (e.g., for potential refunds or disputes). Not all accounts have a reserve |
| **Next payout date** | The date of your next scheduled payout to your bank account |

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](#connecting-stripe) (or finish its remaining steps) first.

### Policy Options

| Option | Description |
| - | - |
| **No upfront payment** | No deposit required. Clients book without any upfront payment. |
| **Require a deposit** | Clients must pay a deposit to confirm their booking. |
| **Card on file** | Clients save a card to confirm their booking - no money is charged and nothing is held on the card. A client booking online who has no card saved gets no appointment until they save one: their time is held for 30 minutes meanwhile (see [When a card on file is required](#when-a-card-on-file-is-required)). The saved card secures the booking so you can charge a late-cancellation or no-show fee if your [cancellation policy](/settings/booking-policies#cancellation-policy) applies. A pre-authorised hold on the card is planned but not yet available. |

### 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.

| Option | What happens when a client taps Book |
| - | - |
| **Pay to book** | No appointment is created. Bella holds that time for 30 minutes while the client pays, and the slot disappears from your booking page so nobody else can take it. Paying creates the appointment, already confirmed. |
| **Book now, pay within a window** | The appointment is created straight away with an "Awaiting Deposit" indicator and the client is sent a link to pay. [Auto-cancel unpaid](#auto-cancel-unpaid-deposits) is what releases the time if the deposit never comes. |

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 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
* Nothing is drawn on your calendar while a time is held, and 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](/settings/automated-messages#1-reminders) 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

New businesses start on **Pay to book**. A business that already required a deposit when this setting arrived was left on **Book now, pay within a window** until its owner switches; every other business was set to **Pay to book**, so it applies from the day they turn deposits on. Switching only changes bookings made afterwards: appointments already waiting for a deposit keep the behaviour they were made under, window and all.

<Note>
  **Pay to book** applies when **Require a deposit** is the payment policy for your
  location. A service that asks for a deposit through a [service-level
  override](#service-level-overrides), at a location whose own policy is something else, is still
  booked first and asked for the deposit afterwards.
</Note>

<Note>
  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.
</Note>

### Deposit applies to

This row decides which bookings are asked for a deposit at all:

| Option | Which bookings ask for a deposit |
| - | - |
| **All bookings** | Every booking, whoever made it: your booking page, your own website through the API, and the appointments your team creates in the Scheduler. The default, and what Bella has always done |
| **Online bookings only** | Only the bookings clients make themselves. Appointments your team creates never ask for a deposit, and you collect at the desk if you take one |

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.

It is the same deposit either way. This setting turns the deposit on or off by channel, it doesn't set a different amount for one: to take less on a single booking, type the amount on the create form (see [Adjusting the Deposit on One Appointment](#adjusting-the-deposit-on-one-appointment)).

If you switch to **Online bookings only** while team-created appointments are still waiting for a deposit, those appointments read as owing nothing from that moment: the awaiting-deposit indicator goes, nothing is cancelled, and nothing is sent to the client.

### 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.

1. Under **Payment policy** (Settings > Payments, or the Payments & deposits card on Settings > Booking policies), open **When a team member books**
2. Choose from: 30 minutes, 1 hour, 2 hours, 4 hours, 8 hours, 12 hours, 1 day, 2 days, 3 days, or 7 days
3. Choose **Don't auto-cancel** (the default) to keep unpaid appointments until you act

It is separate from the [Auto-cancel unpaid](#auto-cancel-unpaid-deposits) window for online bookings, so you can give a client you booked in a day to pay while an online booking gets 30 minutes. It works the same way in both online modes, since an appointment your team creates is always on the calendar straight away.

When it is set:

* 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. The new appointment form shows the time limit under the deposit, and the Scheduler shows the deadline on the appointment
* 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, and appointments that have already started are never cancelled by it
* Each appointment keeps the deadline it was given when it was created. 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. Switch it to **Don't auto-cancel** and nothing more is cancelled
* **Resend deposit request** on the appointment gives the client the whole time limit again, counted from when you send it, and 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
* 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
* 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, 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](#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](/settings/booking-policies#cancellation-policy) applies
* Saving the card creates the appointment, already **Confirmed**, and the client gets the confirmation message
* Your team can't book 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
* Nothing is drawn on your calendar while a time is held, and 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](/settings/automated-messages#1-reminders) 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

**Awaiting Card** is still how a booking waits when something other than your location's payment policy asks for the card:

* A [service-level override](#service-level-overrides) or a [membership benefit](/memberships#deposit-for-members) that requires a card, at a location whose own policy is something else. That booking is created first and shows **Awaiting Card** until the card is saved
* A booking that also carries products you take [full payment for at booking](/products/sell-online#products-added-during-booking). One combined payment pays for the products and saves the card, so the appointment is created first

<Note>
  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.
</Note>

### 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 there is nothing on your calendar to wait at all:

| Policy | The booking shows as | It confirms automatically when | You can also |
| - | - | - | - |
| **Require a deposit**, set to **Book now, pay within a window** | **Awaiting Deposit** | the client pays the deposit | Approve it (confirms without the deposit), record the deposit yourself, or cancel it |
| **Require a deposit**, set to **Pay to book** | nothing on your calendar: no appointment is created, and the time is held for 30 minutes while the client pays | the client pays, which is what creates the appointment, already confirmed | Nothing to act on. A hold that lapses leaves the lead under **Incomplete bookings** as **Stopped at payment** |
| **Card on file** | nothing on your calendar: no appointment is created, and the time is held for 30 minutes while the client saves a card | the client saves a card, which is what creates the appointment, already confirmed | Nothing to act on. A hold that lapses leaves the lead under **Incomplete bookings** as **Stopped at card** |
| A card required by a **service** or **membership** override, or a booking carrying products paid for at booking | **Awaiting Card** | the client saves a card | Approve it (confirms without a saved card) or decline it |

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**.

<Note>
  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.
</Note>

These holds are **not** the same as [Require approval for online
bookings](/settings/booking-policies#require-approval-for-online-bookings) - that setting waits on
**you**, a payment hold waits on the **client**. You can leave approval off and still see a booking
waiting on a deposit, or on a card asked for by a service or membership override.

### Deposit Configuration

When "Require a deposit" is selected, configure the deposit type:

| Deposit Type | Description |
| - | - |
| **Fixed amount** | A specific dollar amount (e.g., $50), never more than the price of the services being booked: a $50 deposit on a $30 service asks for $30, and a service priced at \$0 asks for nothing |
| **Percentage of total** | A percentage of the service total including any add-on prices (e.g., 25%). Products and the [appointment fee](/settings/booking-policies#appointment-fee) are outside that service total, so neither increases the deposit |

**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](#when-a-client-books-online).

**Pay to book:**

1. Client selects services and, if enabled, a team member on your [online booking page](/online-booking/index), then taps **Book**
2. 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
3. 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
4. Client pays
5. The appointment is created, already **Confirmed**, and the confirmation notification is sent. There is no **Pending confirmation / deposit** message, because nothing is pending
6. The deposit is applied toward the total service cost - any remaining balance is due at the appointment

A client who closes the page can come back to it until the hold ends, and a payment made before then books the time even if the appointment's start has just passed. After that the hold ends quietly and they choose a time again.

**Book now, pay within a window:**

1. Client selects services and, if enabled, a team member on your [online booking page](/online-booking/index)
2. Appointment is created in "Booked" status with an "Awaiting Deposit" indicator
3. Client receives a **Pending confirmation / deposit** notification (SMS and/or email) containing a deposit payment link
4. 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
5. Client clicks the link, logs in (or registers with their phone number), and completes payment: on Stripe's secure payment page, or a card form on the booking page itself if you take payments through Square
6. On successful payment, the appointment status changes to "Confirmed" and a confirmation notification is sent
7. The deposit is applied toward the total service cost - any remaining balance is due at the appointment

While the deposit remains unpaid, the **appointment reminders** double as a deposit chase: the default reminder emails include the amber **Pay deposit** button and a deposit-amount callout automatically (or **Pay to confirm** if Collect at booking took an appointment fee). Once a time limit you set has run out, an automatic reminder leaves the button out, because the appointment is about to be cancelled; a reminder you send yourself with **Send reminder** restarts the time limit first and keeps it. Reminder SMS carries a payment link only if your SMS template includes the `{{SelfServiceLink}}` variable (and the SMS channel is enabled for that reminder). See [Automated Messages](/settings/automated-messages#1-reminders).

<Note>
  The deposit payment link is sent via the **Pending confirmation / deposit**
  notification, which can be configured as SMS, email, or both (see [Automated
  Messages](/settings/automated-messages)). However, the client portal uses
  **phone-based login** (SMS verification code). If a client does not have a
  phone number, they can receive the link via email but will not be able to log
  in to complete payment. In this case, add a phone number to the client's
  profile or collect the deposit manually using the **Record deposit** action.
</Note>

### Auto-Cancel Unpaid Deposits

This is the release valve for [Book now, pay within a window](#when-a-client-books-online): 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:

1. 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
2. Choose from: 30 minutes, 1 hour, 2 hours, 4 hours, 8 hours, 12 hours, 1 day, 2 days, 3 days, or 7 days
3. Choose **Don't auto-cancel** (the default) to keep unpaid bookings until you act

The window you pick is kept while you are on **Pay to book**, just out of sight, so switching back brings it with you.

When a window is set:

* 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](#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 deadline it was given when it was made. 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 the message tells them until when, unless the appointment starts first
* 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

<Note>
  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](/settings/automated-messages#1-reminders)).
</Note>

<Note>
  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.
</Note>

### 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](/service-catalog), 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

This is useful for requiring deposits on high-value services (e.g., wedding packages) even if the default policy doesn't require one. A paid booking always confirms on payment, so a service that takes a deposit never waits [for your approval](/settings/booking-policies#require-approval-for-online-bookings), even when approval is on - that's a side effect of the payment step, not an approval setting. Approval itself is a separate policy you can also override per service (on the service's Booking policies tab).

Membership plans can also override the payment policy for members on their covered services - see [Memberships → Deposit for members](/memberships#deposit-for-members), which describes the full resolution order (membership → service → location default). Like the service override, a membership **deposit** override follows [Deposit applies to](#deposit-applies-to): on **All bookings** it reaches team-created appointments as well as online ones, and on **Online bookings only** nothing your team books is asked for a deposit, whatever the override says. A **card on file** requirement (at any level) gates online bookings only.

### 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**

A common use: keep your online deposit high (say 100%) and, when a regular rebooks at the desk, type a smaller deposit for that booking. It's a per-booking action - there is no saved rule that applies a different deposit to team-created bookings automatically.

<Note>
  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. An appointment holds one deposit: once it's recorded,
  **Record deposit** is gone and its amount and payment method can't be changed. The box
  is only shown to team members whose role can view client financials.
</Note>

### 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](/settings/booking-policies#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](/settings/booking-policies#appointment-fee))
* **Insufficient notice** (cancelled within the cancellation period): The cancellation fee is applied to the deposit. For example, if the deposit was $100 and the cancellation fee is 50% of the deposit, the client receives a $50 refund and \$50 is forfeited
* **Business override**: A team member can manually override the calculated refund amount when processing a cancellation

With a deposit, the cancellation fee is a **percentage of the deposit**, set under [Cancellation Policy](/settings/booking-policies#cancellation-policy). When your payment policy is **Card on file** instead, no money is taken at booking, so the fee is a **percentage of the service total** or a **fixed amount**; if a client cancels late or doesn't show, you charge it to their saved card using [Card on file](#saved-cards--card-on-file) when you cancel the appointment or mark it as a no-show.

***

## 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:

1. The client logs in to your online booking page
2. From the user menu (top right), they select **Payment methods**
3. 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

<Note>
  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.
</Note>

<Note>
  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.
</Note>

### 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.

| Path | Payment taken? |
| - | - |
| **Client adds card via Payment methods page** | No - card saved for future use only |
| **Client saves a card to complete an online booking** | No - card saved, nothing charged. This is the [Card on file](#when-a-card-on-file-is-required) policy, or a service or membership that asks for a card |
| **Client pays a deposit during online booking** | Yes - deposit charged, card saved automatically |
| **Client pays a tip** (first time, no existing card) | Yes - tip charged, card saved automatically |

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:

| Payment Method | Description |
| - | - |
| **Cash** | Cash payment (record-keeping only) |
| **Card (Manual)** | In-person card payment processed outside Bella (record-keeping only). Use this for EFTPOS as well - there is no separate EFTPOS method. |
| **Other** | Any other payment method - bank transfer, voucher, barter, etc. (record-keeping only) |
| **Card on file** | Charge the client's saved card through your payment provider (processes a real payment). Only available when the client has a valid saved card. |

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:

1. If the client has multiple saved cards, a dropdown appears so you can pick which one to charge
2. The action button label updates to reflect the choice - for example "Charge Visa ····4242" or "Charge Visa ····4242 for deposit"
3. Clicking the action button processes the payment through your payment provider automatically
4. The sale or deposit is recorded with the payment details for reporting and refunds

<Warning>
  Unlike Cash, Card (Manual) and Other, **Card on file** processes a real
  payment through your payment provider. Its standard fees and Bella's
  platform fee apply.
</Warning>

### Refunds for Card on File Payments

When a sale was paid using Card on file, refunds are processed automatically through your payment provider:

* Navigate to the sale in **Sales** and click **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

For Cash and Card (Manual) payments, refunds remain record-keeping only and must be handled outside the system.

***

## 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 signs in to their booking account, taps **Pay now** and pays by card - and the appointment checks itself out, creating the sale exactly as the till would.

See [Payment links](/sales/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

| Fee | Description |
| - | - |
| **Stripe Fee** | Payment processing fee charged by Stripe. Varies by region (e.g., 1.65% + A$0.30 for Australia, 2.9% + $0.30 for United States) |
| **Platform Fee** | 1% Bella Booking platform fee. No tax is added on top of it (in Australia, the 1% is GST-inclusive) |
| **Total Fees** | Combined Stripe + platform fees |
| **You Receive** | Net amount after all fees |

### Regional Stripe Fees

| Region | Stripe Fee |
| - | - |
| Australia | 1.65% + A\$0.30 per transaction |
| New Zealand | 2.7% + NZ\$0.30 per transaction |
| United States | 2.9% + \$0.30 per transaction |

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.

See [Taxes (GST / VAT / Sales Tax)](/settings/tax) for the full guide.

<Note>
  **Your Bella subscription is separate.** GST *is* applied to what **you pay
  Bella** - your subscription and SMS-credit invoices are issued by Bella with
  GST added automatically where required (handled by Stripe). That tax sits on
  Bella's invoices to you, separate from the tax you capture on the payments you
  take from your own clients.
</Note>

***

## 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](#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.

To recover your costs, add an [appointment fee](/settings/booking-policies#appointment-fee): one fixed, named fee on every appointment with a service, charged the same however the client pays.

<Note>
  **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.
</Note>

***

## 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

1. Go to **Settings** → **Payments**
2. In the **Tipping** section, set **Tipping** to **On**
3. Apply the change

**Requirements:** A payment account must be connected, and client reviews must be available on your plan - the tip prompt is part of the review-and-tip flow, and reviews are a **Professional**-plan feature.

### How Tipping Works

1. After an appointment is completed, the client opens **Leave a review & tip** on the appointment in the online booking portal
2. The tip prompt shows a card for each team member who provided the service
3. The client selects a preset amount ($5, $10, or \$20) or enters a custom amount
4. The tip is paid on a secure checkout page
5. Your business receives a notification via the notification centre, email, and/or SMS, and the team member who provided the service is also notified

Tips are recorded against the appointment and included in your payouts. Standard processing fees apply to tip payments.

### Tip Notifications

When a client leaves a tip, your business receives a **Tip received** notification. This can be configured in [Automated messages](/settings/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:

| Country | Brand Name |
| - | - |
| Australia | Afterpay |
| New Zealand | Afterpay |
| United States | Afterpay |
| Canada | Afterpay |
| United Kingdom | Clearpay |

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

1. Go to **Settings** → **Payments**
2. Under **Afterpay** (or **Clearpay** in the UK), toggle the switch to **on**
3. Click **Save**

**Requirement:** Stripe must be connected and fully onboarded before this option is available.

### 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
* **Gift card purchases** - Afterpay is available on the gift card checkout page
* **Package purchases** - Afterpay is available on the package checkout page

Stripe automatically shows or hides Afterpay based on the transaction amount. Orders outside Afterpay's eligible range (approximately $1-$2,000, varying by region) will only show card as a payment option.

### 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.

* **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 into the order you want, or choose **Set as default** from a row's menu. 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; historical payments keep its name.

Because the takings card counts deposits on the day they were captured and refunds on the day they were given back, its totals can differ from the Sales summary **Card** column (which reports by sale date) - both are correct, they answer different questions.

## Integrated terminal payments (Coming Soon)

Separately, we are working on integrated terminal support - compatible with Stripe Terminal and other providers - where Bella charges the card and the transaction syncs automatically. That is a different, later capability: named card terminals above are available now and work with ANY machine, whoever provides it.

Stay tuned for updates on the [What's New](https://www.bellabooking.com/updates) page.

***

## Payment Policy on Booking Policies Page

The payment policy can also be configured from the [Booking policies](/settings/booking-policies) page, where it appears alongside cancellation and confirmation settings. Both pages manage the same underlying setting - changes made on either page are reflected on the other.

If Stripe is not fully set up, the Booking policies page shows an alert with a link to the Payments page - "Stripe Connect required" if you haven't connected yet, or "Finish your Stripe setup" if you started connecting but haven't completed Stripe's steps.

***

## FAQs

**Q: Is Stripe / deposits available on all plans?**
A: Yes. 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, which comes with client reviews - a Professional-plan feature (see [Tips](/tips)).

**Q: What's the difference between the Payments page and the Billing page?**
A: **Payments** (Settings → Payments) is for accepting client payments - connecting Stripe, configuring deposits, and viewing fees. **Billing** (Settings → Billing) is for managing your own Bella Booking subscription plan and purchasing SMS packages.

**Q: Do Apple Pay and Google Pay work everywhere?**
A: Apple Pay and Google Pay are available on your online booking page, where Stripe's hosted payment form handles the checkout. They are not available for payments your team records in the Scheduler or Sales pages: those are Cash, Card (Manual) or one of your [named card machines](#card-terminals---name-your-machines), Other, or the client's Card on file.

**Q: Do deposits apply to appointments created by team members?**
A: That's your choice, under [Deposit applies to](#deposit-applies-to). On **All bookings** (the default) the deposit policy applies to appointments you create in the Scheduler as well as online bookings; on **Online bookings only** the appointments your team creates never ask for a deposit, and you collect at the desk if you take one. Either way Stripe has to be connected. When a deposit is required on an appointment you create, it is held with a "Deposit required" indicator and the deposit payment link is sent to the client via SMS/email. Appointments your team creates have their own auto-cancel time limit, [When a team member books](#when-a-team-member-books): with it off (the default) they wait for you to confirm, waive or cancel them. You can also record a manual deposit (e.g. cash or bank transfer) from the appointment details panel, charge a saved card on file at the moment you create the appointment, or waive/override the deposit for that appointment - the deposit amount is editable right on the create form (see [Adjusting the Deposit on One Appointment](#adjusting-the-deposit-on-one-appointment)). Recording a deposit (or charging the saved card) automatically confirms the appointment, just like an online payment would.

**Q: Can I charge a different deposit for online bookings than for appointments my team creates?**
A: Not a different amount. The deposit policy (and any per-service or membership override) sets one amount for both, and [Deposit applies to](#deposit-applies-to) decides whether a channel is asked for it at all: **Online bookings only** takes the full deposit online and asks for nothing when your team books someone in. If you want a smaller amount rather than none, do it per booking: when a team member creates or rebooks an appointment, the **Deposit amount** field on the form is editable, so you can type a smaller deposit, or any amount up to what the client owes, or waive it, for that one booking while your online page keeps charging the full policy amount (see [Adjusting the Deposit on One Appointment](#adjusting-the-deposit-on-one-appointment)). It's a manual per-booking step, not an automatic rule.

**Q: Can I make the deposit due a certain time before the appointment (e.g. one week before)?**
A: No - the deposit is requested when the appointment is booked, and the only time-based control is [Auto-Cancel Unpaid Deposits](#auto-cancel-unpaid-deposits), whose countdown runs from the booking time (not back from the appointment date). To nudge clients as the appointment approaches, set the first [appointment reminder](/settings/automated-messages#1-reminders) as far out as 7 days - while the deposit is unpaid, the reminder email carries the **Pay deposit** button automatically, until any time limit you set runs out. Note a 7-day reminder only fires for appointments booked at least 7 days ahead.

**Q: What happens if the client doesn't pay the deposit?**
A: It depends on [When a client books online](#when-a-client-books-online). Under **Pay to book** there is no appointment to keep: the time is held for 30 minutes, and if the client never pays, the hold ends. Nothing is cancelled and no appointment message goes out, because nothing was ever booked. The lead sits 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](/settings/automated-messages#1-reminders) if you have it switched on. Under **Book now, pay within a window**, and for appointments your team creates, the rest of this answer applies. The appointment stays in "Booked" status with an "Awaiting Deposit" indicator. If the client's card is declined or they close the payment page, the booking stays until your auto-cancel window ends (for an appointment your team created, the [When a team member books](#when-a-team-member-books) time limit) and the client can retry from the same deposit link in the meantime. You can also resend the deposit request from the appointment details menu ("Resend deposit request"), which gives the client the whole window again from when you send it. When the window ends unpaid, the booking is released (with Stripe and a window of up to a day, the moment the payment page expires; otherwise on the next 15-minute check) and the client receives a cancellation notification. With no window set, the booking stays until you act. To keep an unpaid booking, confirm it, waive its deposit, or record the deposit taken another way; any of those stops the window for that booking.

**Q: Why can a client book a free service under Pay to book without paying anything?**
A: A deposit is never more than what the client owes for the services they book, after discounts and package credits. For a service priced at \$0 (or one fully covered) the deposit works out to nothing, so there is nothing to hold the time for: the appointment is created straight away, as it would be with no deposit policy. To secure a free service, open it in the [Service Catalogue](/service-catalog) and set its **Payment** to **Card on file** on the **Booking policies** tab (see [Service-Level Overrides](#service-level-overrides)).

**Q: Can I record a second deposit, or change a deposit after it's recorded?**
A: No. An appointment holds one deposit. Once it's recorded, **Record deposit** no longer appears on that appointment, and the deposit's amount and payment method can't be changed, so check both before you save. Anything else the client pays before the appointment, such as a bank transfer for the rest of the bill, is taken at checkout (choose **Other**). A deposit saved with the wrong method stays under that method in your reports, so add a note to the appointment to keep the day's takings easy to reconcile.

**Q: Can I stop a booking appearing on my calendar until the client saves a card?**
A: Yes, and there's nothing to switch on: it is what the **Card on file** policy does. A client booking online with no card saved creates no appointment. Their time is held for 30 minutes while they save one, it disappears from your booking page meanwhile, and saving the card is what creates the appointment, already confirmed. If they walk away, nothing lands on your calendar and the lead sits on the Scheduler's **Incomplete bookings** tab for your usual follow-up. Nothing is charged on this path - the card is saved so you can charge a late-cancellation or no-show fee later if your cancellation policy applies. See [When a card on file is required](#when-a-card-on-file-is-required).

**Q: What if my client doesn't have a phone number?**
A: The deposit link can be sent via SMS, email, or both - depending on your **Pending confirmation / deposit** notification settings. However, the client portal uses **phone-based login** (SMS verification code). A client without a phone number can receive the link via email but will not be able to log in to complete payment. Alternatives: charge the client's saved Card on file using the "Record deposit" action, collect the deposit manually (cash, card, bank transfer, etc.) using the same action, or redeem a gift card the client holds from the same action.

**Q: What happens if I disconnect Stripe?**
A: If Stripe is disconnected, online payment features are disabled. Existing deposit settings are preserved but won't be applied until Stripe is reconnected.

**Q: Are deposit amounts shown when prices are hidden?**
A: Yes. Even when **Prices** is **Hidden**, deposit amounts are always shown so clients know how much they need to pay.

**Q: How are refunds processed?**
A: When a client cancels within the cancellation policy, refunds are calculated automatically based on the cancellation fee percentage and processed through your payment provider. A team member can override the refund amount. For a deposit taken in person (Cash, Card (Manual) or Other), you hand the money back yourself and record the refund when you cancel the appointment, or later with **Refund deposit** on the cancelled appointment. A card deposit taken on a payment provider you've since switched away from works the same way: refund it in that provider's dashboard, then record it with **Refund deposit**.

**Q: What is Card on file?**
A: Card on file lets a team member charge a client's saved card for a deposit, an appointment checkout, or a product sale - without the client needing to be present. The client saves their card through the online booking portal, and a team member can then select it as a payment method in any payment action. The payment is processed through your payment provider, so its fees apply.

**Q: Can clients save multiple cards?**
A: Yes. Clients can save multiple cards from the Payment methods page in the online booking portal. When a team member checks out using Card on file, they can choose which saved card to charge.

**Q: What happens to saved cards if I disconnect Stripe?**
A: Saved cards are stored on your Stripe account. While Stripe is disconnected, Card on file still shows at checkout with a prompt to set up payments, but it can't charge a card. The cards stay stored on Stripe and can be charged again once you reconnect.

**Q: Can I pass processing fees on to clients?**
A: No. Bella never adds a processing fee to a client's payment: the Stripe or Square fee and Bella's platform fee come out of what you receive. To recover your costs, add an [appointment fee](/settings/booking-policies#appointment-fee), which applies the same however the client pays. The old **Pass processing fees** setting has been removed; receipts for payments taken while it was on still show the fee that was charged then.

**Q: Is GST added on top of Bella's 1% platform fee?**
A: No. The platform fee is 1% of the payment, and no tax is added on top of it. For a business in Australia, the 1% is GST-inclusive. GST on your Bella subscription and SMS credits is a separate charge, shown on Bella's invoices to you (see [Tax & GST](#tax--gst)).

**Q: What happens if a client disputes a card payment (a chargeback)?**
A: For a payment taken through Stripe, the dispute is raised on your own Stripe account. Respond to it in your Stripe dashboard (**Settings** → **Payments** → **Stripe dashboard**). Bella has no disputes screen and leaves the appointment and the sale as they are. See [Disputes and chargebacks](#disputes-and-chargebacks).

**Q: How do digital tips work?**
A: When tipping is enabled, clients find the tip prompt through the **Leave a review & tip** button on a completed appointment in the online booking portal. They pick a preset amount ($5, $10, or \$20) or enter a custom amount, and pay on a secure checkout page. Your business and the team member are notified, and tips are included in your regular payouts.

**Q: Do processing fees apply to tips?**
A: Yes. Your payment provider's processing fee and Bella's platform fee apply to tip payments, just like deposits and card on file charges. Bella never adds a processing fee to the tip: the client pays the tip amount they chose.

**Q: What is Afterpay / Clearpay?**
A: Afterpay (called Clearpay in the United Kingdom) is a buy now, pay later service. When enabled, clients can split their payment into 4 interest-free instalments. You receive the full amount upfront through Stripe - Afterpay collects the instalments from the client over time. It's available for businesses in Australia, New Zealand, United States, Canada, and the United Kingdom.

**Q: Why don't I see the Afterpay option on my Payments page?**
A: The Afterpay section only appears if your business is in an eligible country (Australia, New Zealand, United States, Canada, or United Kingdom) and Stripe is connected. If you're in an eligible country but don't see it, make sure your Stripe account is fully onboarded.

**Q: Does Afterpay work for tips?**
A: No. Tips are processed via card payment only. Afterpay is available for deposits, gift card purchases, and package purchases.

**Q: Are Afterpay processing fees different from card fees?**
A: Yes. Afterpay transactions have separate Stripe processing fees that are typically higher than standard card rates. These fees are set in your Stripe merchant agreement and, like card fees, are paid by your business.

**Q: Do Afterpay refunds work differently?**
A: Refunds are processed through Stripe the same way for both card and Afterpay payments. When you refund an Afterpay payment, Stripe reverses the remaining instalments and refunds any amounts already paid. Afterpay refunds may take 5-7 business days to appear on the client's Afterpay account. Afterpay refunds must be processed within 120 days of the original payment.

**Q: Will you support EFTPOS or payment terminals?**
A: You can already run any EFTPOS machine alongside Bella - record the payment as Card (Manual), and name your machines at **Settings → Card terminals** so each one balances at end of day (see "Card terminals" above). Integrated terminal payments - where Bella charges the card and the transaction syncs automatically, compatible with Stripe Terminal and other providers - are a separate capability coming later.

**Q: Can I send a client a payment link?**
A: Yes. From the appointment in the Scheduler, open the **⋯** menu and select **Send payment link**. The client logs in to their online booking portal and pays the live remaining balance by card - no need to key anything in yourself. See [Payment links](/sales/payment-links).

**Q: Does the client need an account to pay their balance online?**
A: Yes, in the current release they log in with their phone number (the same passwordless login as the rest of the portal) before they can pay. A no-login pay page is planned for a future release.

***


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.