Point of Sale (POS)

The Point of Sale (POS) flow is your in-person booking tool. When a customer walks into your location, calls you on the phone, or you need to create a booking on their behalf, you walk through the wizard together and finalise everything on the spot — no customer account required.


When to Use POS

The POS flow gives you capabilities that the customer-facing booking page does not. Use POS when:

  • Walk-in customers — Someone arrives at your location and wants to book immediately. You create the booking together at the counter.
  • Phone bookings — A customer calls you to make a reservation. Instead of asking them to use the online booking page, you create it for them in seconds.
  • Cash payments — POS is the only place where you can record a cash payment at the time of booking. Online customers must pay through the payment gateway.
  • Customers without accounts — Walk-in customers only need to provide a name and phone number. No registration required.
  • Custom one-off services — If a customer wants something not in your catalog, you can create a custom service on the spot.
  • Editing existing bookings — You can edit any booking belonging to your business, even if the customer's own cancellation policy would prevent them from making changes online. Providers and staff bypass customer-facing restrictions.

{primary} POS bookings are labelled with a POS source in the booking list so you can easily tell which reservations were created in person versus online.

Accessing POS

  1. From the sidebar, click POS under the Bookings section
  2. The POS wizard opens, starting with the customer selection step

{info} If you have staff who need POS access, make sure their role includes the POS module permission in Roles & Permissions.


Step 1: Customer Selection

The first step is to identify who the booking is for. You have two options:

Existing Customer (Recommended)

If this customer has booked with you before, type their name, phone number, or email into the search field. Type at least 2 characters to start searching. The results show matching customers — click Select next to the right person.

Once selected, the customer's saved details are used for the booking. You see their name and contact info at the top of the wizard for the rest of the process.

Walk-In Customer (New)

If this is a first-time customer, click Create Walk-in and enter their details:

Field Required Notes
First name Yes
Last name Yes
Phone number Yes The primary way to reach the customer
Email address No Providing an email lets the customer receive a confirmation and manage their booking through a secure link
Address No Only needed if your service requires it (e.g., home services)

{info} After entering the walk-in details, click Continue to proceed. You can change the customer later by clicking the change button next to their name.

Example — Booking for a Returning Customer

Ahmed walks into your barbershop. You type "Ahmed" in the search field, see his name appear, and click Select. The wizard now shows "Ahmed" at the top and moves you to the next step.

Example — Booking for a First-Time Visitor

A new customer named Sara walks in. You click Create Walk-in, enter "Sara", "Smith", and her phone number "555-123-4567". You skip the email since she doesn't want to receive one. Click Continue.


Step 2: Service Selection

Choose the service the customer wants to book.

  • Browse — Scroll through the list of your active services
  • Search — Type the service name (at least 2 characters)
  • Custom Service — If the service you need isn't in your catalog, see the Custom Services section below

{primary} Only active services appear here. If a service is missing, check that it's activated in the Services section.

What the Provider Sees vs What the Customer Sees

In POS, you see all of your active services regardless of how they are configured. Unlike the customer-facing booking page, there are no hidden or conditional services. Every active service you've created is available for you to book on behalf of a customer.


Step 3: Resource Selection

After selecting the service, you may be asked to pick a resource — a room, vehicle, piece of equipment, or staff member that the service requires.

How POS Differs from Online Booking

This is one of the most important differences between POS and the customer-facing booking page:

Scenario Customer Online Provider (POS)
Resource selection mode is Hidden Resource step is skipped — customer never sees it Resource step is always shown — you must select a resource
Resource selection mode is Required Customer must choose a resource You must choose a resource
Resource selection mode is Optional Customer can skip the step You can skip or select
Multiple resources assigned to the service Customer sees all available primary resources You see all primary resources assigned to the service
No resources assigned to the service Step is skipped entirely Step is skipped entirely

{warning} In POS, you always see the resource selection step if the service has resources assigned, even when the resource selection mode is set to "Hidden". This gives you full control over which resource to assign.

Understanding Resources in the List

The resources shown are the primary resources assigned to the service. These are the main items that are booked for the full duration of the appointment. For example:

  • A boat charter service may list "Yacht A" and "Yacht B" as primary resources
  • A massage service may list "Room 1", "Room 2", and "Room 3"
  • A personal training service may list each trainer as a resource

Related resources (e.g., life jackets for a boat tour, towels for a massage) are handled automatically by the availability engine — you don't see them here.

What Happens When You Select a Resource

Selecting a resource determines:

  1. Availability — The date/time calendar will only show slots where this specific resource is free
  2. Pricing — If the resource has its own pricing, that's reflected in the total
  3. Reservations — The resource is blocked for the entire booking duration

{primary} If a resource doesn't appear in the list, it means it hasn't been assigned to the selected service. You can manage resource assignments in Services > All Services.

Example — Selecting a Resource for a Boat Tour

You're booking a "Sunset Boat Tour" for a walk-in customer. The service has two boats assigned: "Sea Breeze" and "Ocean Queen". You select "Sea Breeze" because it's available. The calendar will now show only dates and times when "Sea Breeze" is free.


Step 4: Add-Ons

If your service has optional add-ons (for example, hair treatment with a haircut, insurance with equipment rental, or gourmet meal with a yacht charter), this step lets you add them.

Each add-on shows:

  • Name and description
  • Price — the cost of adding it to this booking, calculated by the charge unit (once, per guest, per day, or per guest & day)
  • Duration — some add-ons extend the booking time. Add-ons with sequential duration (the default is parallel) add their minutes to the total appointment length. For example, adding a 15-minute sequential add-on to a 60-minute service creates a 75-minute slot
  • Option badge — if the add-on has multiple options (e.g., Basic vs Premium), a badge indicates choices are available

Option Groups

Some add-ons have options where the customer chooses a specific variant. For example:

  • "Insurance" add-on might have options: "Basic (50)" or "Premium (100)"
  • "Meal package" might have options: "Standard (75)" or "Deluxe (150)"

Required option groups have their first option pre-selected. You can change it if the customer prefers a different option.

{info} Add-ons are optional. If the customer doesn't want any extras, simply proceed. The price updates in real time as you make selections.


Step 5: Date, Time & Quantity

This step has three parts depending on your service type:

Date Selection

A calendar shows available dates for the selected service and resource. Dates with available slots are highlighted — you can click to select one. Navigate between months using the arrows.

Time Selection (Appointment-Based Services)

After picking a date, the available time slots appear. Each slot shows the start time and whether it's available. Slots that are already booked or outside working hours are hidden.

{info} The gap between slots accounts for the service's buffer time and any sequential add-on durations. For example, if the service has a 15-minute buffer, a 60-minute appointment at 09:00 means the next slot starts at 10:15, not 10:00.

  • Slots are shown 12 at a time with pagination if there are more
  • You can navigate between pages to see all available slots

{warning} If no time slots appear for a date, it means the resource is fully booked or outside operating hours for that day. Try a different date or resource.

Quantity (Group Bookings)

If the service supports group bookings (e.g., a yoga class that can accommodate multiple people), you can set the number of participants. This appears before the calendar:

  • The quantity affects pricing (the total multiplies by the number of guests)
  • Availability accounts for capacity — if only 2 spots remain for a class of 10, the calendar reflects this

Day-Based Rentals

For services that rent by the day (e.g., equipment rental, boat charter), instead of picking a start time, you choose:

  1. Start date — when the rental begins
  2. Rental days — how many days the customer needs (e.g., 3 days)

The system calculates the end date based on your operating days (skipping closures and non-operating days).

Recurring Bookings in POS

If the service has recurring bookings enabled, you will see a Set as recurring toggle after selecting the date and time. Enabling this lets you create a series of bookings.

{info} Recurring bookings are explained in detail in the Recurring Bookings section below.


Step 6: Cart Review

This step shows a complete summary before you proceed to payment:

  • Service — name, duration, and price breakdown
  • Resource — the selected resource (if applicable)
  • Date & time — when the appointment is scheduled
  • Base prices — per-unit rates for the service and each add-on
  • Tax — calculated based on your tax settings
  • Total — the final amount

For recurring bookings, the cart also shows:

  • The recurring pattern summary (e.g., "Every Monday, 5 occurrences")
  • The estimated total for the entire series

{primary} Review everything carefully before proceeding. Once payment is processed, changes require an amendment (see Editing an Existing Booking).


Step 7: Payment

The payment step is where POS differs most significantly from online booking. You have more flexibility in how you handle payment.

POS Payment Options

Depending on your service settings and your payment gateway configuration, you may see the following options:

Cash — Mark as Paid

Select this when the customer pays in cash at the counter. The booking is created with Paid status immediately. A cash charge ledger is recorded for your financial records.

Best for: Walk-in customers who pay right there.

Example: A customer books a haircut priced at 200 and hands you cash. You select "Cash — Mark as Paid". The booking is created as fully paid.

Cash — Pay at Service

Select this when the customer will pay later (e.g., at the time of service, or via bank transfer). The booking is created with Awaiting Payment status and a zero paid amount.

Best for: Phone bookings where the customer will pay on the day, or customers you invoice.

Example: A regular customer calls to book a massage priced at 150 for next week. You create the booking with "Pay at Service". The booking shows as unpaid. On the appointment day, the customer pays in cash and you mark it as collected from the booking detail page.

Send Payment Link

Select this to generate a secure online payment link that you can send to the customer via email or text message. The customer pays online using their credit or debit card.

When you select this option, a popup asks you to choose an expiry time:

Option Expiry Best For
Short (1 hour) Payment link expires in 1 hour Customer is with you and can pay on their phone right now
Long (24 hours) Payment link expires in 24 hours Customer will pay later today or tomorrow

The booking enters Payment Hold status until the customer pays. If they don't pay within the expiry window, the booking remains on hold.

{warning} The payment link is sent to the email address on the booking. Make sure you have the customer's correct email before using this option.

Payment Methods Not Available in POS

Unlike online bookings, the standard Credit/Debit Card (online card form) and Cash on Delivery (COD for web) options are not available in POS. Instead, card payments are handled through the Send Payment Link option.

Deposit Handling

If the service requires a deposit, you'll see an additional choice when you select a payment method (except "Pay at Service"):

Option What Happens
Collect Full Amount The customer pays the entire booking total now. For recurring Full Upfront series, this means the full series total.
Collect Deposit Only The customer pays only the minimum deposit amount. The remaining balance is due later.

The deposit amount is calculated based on your service settings:

  • Fixed deposit: A set amount in your currency (e.g., 50)
  • Percentage deposit: A percentage of the booking total (e.g., 20%)

{primary} When you select "Collect Deposit Only" with cash, the booking is marked as Partially Paid. With a payment link, the link is for the deposit amount only.

Payment Summary During Edit Mode

When editing an existing booking, the payment step shows additional information:

  • Previous total — what the customer was originally charged
  • New total — the updated amount after your changes
  • Amount to collect — if the new total is higher, you need to collect the difference
  • Refund due — if the new total is lower, a refund is required

For POS edits, you control how refunds are handled for each payment the customer previously made. See Editing an Existing Booking for details.

Example — Full Payment with Cash

A customer books a deep tissue massage priced at 300. You select Cash — Mark as Paid. The booking is created as Paid with a ledger entry of 300.

Example — Deposit with Payment Link

A customer books a boat tour priced at 500 that requires a 20% deposit (100). You select Send Payment Link, choose Collect Deposit Only, and set the link expiry to 1 hour. The customer receives an email with a payment link for 100. They pay online, and the booking moves to Pending with a status of Partially Paid (since 100 of 500 has been collected).


Step 8: Confirmation

After payment is set, the booking is created. The confirmation screen shows:

  • A success checkmark and message
  • The Order ID (e.g., BK-1024)
  • A receipt summary with the service, date, time, price breakdown, and payment status
  • A View Booking button that takes you to the booking detail page

From the booking detail page, you can:

  • Print or email a receipt
  • Send appointment reminders
  • Confirm, complete, or cancel the booking
  • Edit the booking if needed

Custom Services

If a customer wants something that isn't in your service catalog, you can create a custom service on the spot during POS:

  1. In the service selection step, select Custom Service
  2. Enter a service name (e.g., "Emergency Plumber Callout")
  3. Enter the price (e.g., 350)
  4. Click Confirm

The custom service is used for this booking only — it does not create a permanent service in your catalog. It appears on the booking record and in reports as a custom service.

{info} Custom services are ideal for one-off situations or special requests. For services you offer regularly, create a proper service in the Services section.

Limitations of Custom Services

  • No resource assignment (the resource step is skipped)
  • No add-ons
  • No recurring bookings
  • No deposit rules (full payment is always collected)
  • Customers cannot edit these bookings online

Editing an Existing Booking (Amendments)

One of the most powerful features of POS is the ability to edit existing bookings. As a provider or staff member, you can modify bookings that the customer would not be able to change online themselves.

How to Edit a Booking

From the booking detail page, click Edit Booking. This opens the same POS wizard, pre-filled with the booking's current details:

  • Date and time — reschedule the appointment
  • Resource — switch to a different resource
  • Add-ons — add or remove extras
  • Customer details — update contact information
  • Branch — change the location (only if you have multiple branches)

What Changes Are Tracked

Every change creates a Booking Amendment record that tracks:

  • What the total was before the change
  • What the new total is
  • Who made the change
  • What changed (date, time, resource, add-ons, etc.)

This creates a complete audit trail so you always know what changed and when.

{info} The service itself cannot be changed when editing. If the customer wants a completely different service, cancel the existing booking and create a new one.

Financial Settlement During Edits

When you edit a booking that has already been paid (partially or fully), the system calculates:

Scenario What Happens
New total is higher You need to collect the difference. You can choose a payment method for the additional amount.
New total is lower A refund is required. You control how much to refund and by what method.
Total is the same No financial settlement needed. The booking is updated with the new details.

Provider Refund Controls (POS Only)

When editing a booking that results in a refund, POS gives you full control over how the refund is handled. For each previous payment the customer made, you see:

  • Payment date — when the customer paid
  • Source — how they paid (card, cash)
  • Paid amount — the original amount
  • Refund method — how you'll return the money
  • Refund amount — how much you're refunding from that payment

You can choose different refund methods for different payments:

Refund Method Description
Cash You give cash back to the customer at the counter. Use this for cash payments or if the customer is present.
Card The refund is processed through your payment gateway back to the customer's card. Use this for online card payments.

{warning} Cash override warning: If you choose to refund a card payment in cash, a warning appears reminding you that you're handling the refund outside the system. Enter a reference note to track the transaction.

Provider Policy Bypass

This is a key difference between POS edits and customer self-service:

Who Can Edit? Policy Restrictions
Customer (online) Limited Subject to cancellation policy, refund rules, and payment context checks
Provider (POS) Yes No restrictions — you can edit any booking regardless of policy

As a provider, you can:

  • Edit bookings that are past the customer's cancellation window
  • Edit bookings where the customer's payment context has changed
  • Modify bookings that the system would otherwise block for customers

This is intentional — you have full discretion to accommodate your customers' needs. The amendment record always shows that the change was made by you, not the customer.

Example — Editing a Booking with a Refund

A customer booked a 400 service and paid by card. They now want to downgrade to a 300 service. You edit the booking, and the system shows:

  • Overpayment: 100
  • Original payment: Card (paid 400)
  • You choose to refund 100 back to the card

The system processes the refund through the payment gateway. Both the customer and you receive a notification.

Example — Editing a Booking with Additional Payment

A customer booked a 200 massage but now wants to add a 50 scalp treatment. You edit the booking:

  • Previous total: 200
  • New total: 250
  • Amount to collect: 50
  • You collect 50 in cash

The booking is updated with the new add-on, the total is adjusted, and a cash payment of 50 is recorded.


Recurring Bookings

If a service has recurring bookings enabled, you can create a recurring series from POS. This lets you book multiple occurrences of the same service in one go — perfect for:

  • Weekly personal training sessions
  • Biweekly cleaning services
  • Monthly maintenance visits

Setting Up a Recurring Series

After selecting the date and time in Step 5, toggle Set as recurring on. Then configure:

Setting Options Description
Pattern Daily, Every Other Day, Weekly, Biweekly, Monthly How often the booking repeats
Occurrences Number (2–52) How many times the booking repeats. Some services set a fixed number.
End date Date Optional — the series ends on this date instead of after a set number of occurrences

Resolving Conflicts

When you set up a recurring booking, the system checks availability for every occurrence date. If a date is unavailable (already booked or outside working hours), you can resolve it:

  • Pick an alternative date — the system suggests nearby available dates (e.g., move from Monday to Tuesday)
  • Skip the date — the occurrence is removed from the series (not available if the service requires fixed occurrences)

Recurring Payment Policies

Policy What You Collect at POS How It Works
Pay As You Go First occurrence only Each subsequent occurrence is billed separately as it approaches
Full Upfront Entire series total All occurrences are paid at once. The payment is distributed across all bookings in the series.

Example — Recurring Personal Training

A customer wants 8 weekly personal training sessions starting next Monday. The service costs 150 per session with Pay As You Go billing.

  1. You select the service and date (next Monday)
  2. Toggle Set as recurring, choose Weekly, 8 occurrences
  3. The system checks all 8 Mondays — 7 are available, 1 clashes with a holiday
  4. You pick an alternative date for the conflicting occurrence (Tuesday)
  5. In payment, you collect 150 (only the first session)
  6. 8 individual bookings are created, each for 150

Example — Full Upfront Boat Charter Recurring

A customer wants to charter a boat every Saturday for 4 weeks at 500 per day. The service uses Full Upfront billing.

  1. You select the service and the first Saturday date
  2. Set Recurring, Weekly, 4 occurrences
  3. All 4 Saturdays are available
  4. In payment, you collect 2,000 (4 × 500)
  5. The payment is distributed equally across all 4 bookings (500 each)

Tips & Best Practices

  • Use POS for all in-person bookings — it's faster and more flexible than the customer-facing wizard
  • Search for existing customers first — this saves time and keeps accurate customer records
  • Always add an email for walk-ins — even though it's optional, an email lets the customer receive confirmations and manage their booking. They can also receive a payment link if needed.
  • Use "Cash — Mark as Paid" when money changes hands — this keeps your financial records accurate
  • Use "Send Payment Link" for card payments — it's more secure than entering card details manually
  • Custom services are great for one-offs — just make sure the name is descriptive enough for your records
  • When editing, check the refund preview carefully — the system shows you the financial impact before you confirm
  • Keep a reference for cash refunds — when refunding a card payment in cash, enter a note so you can track the transaction
  • Recurring series are managed individually — each occurrence is its own booking with its own status and payment tracking
  • Check the amendment audit trail — the booking history shows every change made, who made it, and the financial impact