Business & Operations

BookPoint

Source code included

Complete salon, spa and clinic booking software: online booking with deposits, calendar etc in one Laravel app

Built by Ibrahim Abdurahman Updated 6 Oct 2026 21,105 lines of code

Open live demo Built withClaude Code

Why BookPoint

What makes it better
than the alternatives

  1. 01

    Deposit-backed online booking with real availability

    Clients only see free slots, pay a deposit by card, and a row lock stops double bookings.

  2. 02

    One install, any number of businesses

    Each gets its own staff, services, clients and booking page, isolated by a tenant scope on every model.

  3. 03

    One install, any number of businesses

    Each gets its own staff, services, clients and booking page, isolated by a tenant scope on every model.

  4. 04

    English and Arabic with right-to-left on every screen

    Plus AED, SAR, QAR, USD and 5% VAT invoices with the TRN.

  5. 05

    Reminders, coupons and waitlist offers run themselves

    Sent by the scheduler 24 and 2 hours before, with automatic slot offers on cancellation.

Owner & Manager App

  • Live dashboard with today's bookings
  • deposits collected
  • who is on the floor and an attention list
  • Day and week calendar with one lane per staff member
  • breaks
  • blocked time and approved leave
  • New booking in seconds for walk-ins and phone calls with client name and phone so same-name clients stay apart
  • Booking drawer with arrive
  • approve
  • mark completed
  • no-show
  • resend deposit link
  • reschedule
  • book again and cancel with the policy applied
  • Services with categories
  • duration
  • buffers
  • add-ons
  • deposit rules
  • rooms and intake questions
  • Staff with working hours
  • shifts
  • services offered
  • time-off approval and email invites
  • Clients with visits
  • spend
  • favourite therapist
  • notes
  • tags
  • saved card
  • packages
  • credit and CSV export
  • Reports with revenue by week
  • average booking value
  • no-show rate
  • rebooking within six weeks
  • top services
  • staff utilisation and busiest hours for 7
  • 30
  • 90 or 365 days with CSV download
  • Activity log of every change with who did it and when

Client Booking Pages

  • Five-step booking wizard with service
  • specialist or anyone available
  • real free slots
  • details and card payment
  • Deposits as percentage
  • fixed
  • full or pay at the studio with the slot held during payment and a retry page after a declined card
  • Coupon code at checkout with discount shown on the summary and receipt
  • Studio page with treatments
  • team
  • reviews
  • opening hours
  • parking and directions
  • Group classes with seat booking
  • Shop for packages and gift cards
  • Sign-in by one-time code to the phone
  • My bookings with change
  • cancel
  • add to calendar (ICS)
  • receipt and review
  • Waitlist join and leave
  • Video-call link for online services with pre-visit photo upload
  • Embeddable "Book now" button for any website
  • Arabic and English switch

Staff Portal

  • My day with the next client highlighted and one-tap done or no-show with confirmation
  • My week
  • My clients with notes for the next visit
  • My earnings with commission and tips by month
  • Availability changes and time-off requests sent to the owner for approval

Payments & Money

  • Deposits
  • balances and no-show fees recorded per booking
  • Card
  • Apple Pay and buy-now-pay-later through one gateway connector (simulated in the demo)
  • Invoices with VAT and TRN numbered per business
  • Receipts and manual invoices
  • Refunds to card
  • store credit or cash with reason
  • Release of unpaid bookings after the hold
  • Packages and memberships with visit counts and expiry
  • Gift cards
  • Coupons with new-client-only and one-per-client rules
  • Cancellation policy with free window
  • late fee and card on file

Reminders & Messages

  • Editable templates for confirmation
  • 24 hours before
  • 2 hours before
  • thank-you with review link and time-to-rebook
  • Per-channel sending by email
  • WhatsApp or SMS from the scheduler once per booking
  • One inbox per client with every message and quick replies
  • Team alerts for new online bookings
  • unpaid deposits
  • waitlist and time-off
  • Daily schedule email to each staff member at 8:00
  • In-app notifications for the owner

Reviews & Waitlist

  • Reviews collected after the visit with reply from the app and display on the studio page
  • Waitlist by day and service with automatic offer and 30-minute hold when a slot frees up
  • Admin waitlist entry and one-click booking from the waitlist

Multi-Business & Setup

  • Self-service sign-up with a setup wizard for address
  • hours
  • first services
  • team and deposit rule
  • Locations
  • rooms and equipment linked to services so two bookings never need the same room
  • Intake forms with signature and per-service questions
  • Client import from CSV and export of clients
  • bookings and payments
  • Brand colour
  • welcome text and booking-page settings
  • License page with credits

Security & Access

  • Roles owner
  • admin
  • manager and staff enforced on the server for every page and action
  • Sign-in that keeps the owner app and staff portal apart
  • Tenant isolation so one business can never read another's data
  • Bcrypt passwords
  • rate-limited sign-in
  • codes and booking
  • CSRF on every form
  • long random tokens for client links
  • encrypted API keys
  • client notes and intake answers
  • Full audit trail

Integrations & API

  • REST API with per-business keys and bookings by date and status
  • Webhooks for booking created
  • updated
  • cancelled
  • payment succeeded and refunded
  • Connectors for payment gateway (Stripe
  • Checkout.com
  • Network International)
  • WhatsApp and SMS (Twilio
  • WhatsApp Business API)
  • any SMTP email and Jitsi Meet video
  • Scheduler commands for reminders
  • unpaid release and daily schedule from one cron entry

Localisation & Region

  • English and Arabic with right-to-left on all pages
  • AED default with SAR
  • QAR and USD
  • 5% UAE VAT with TRN on invoices
  • Dubai
  • Riyadh and Qatar time zones

Technical

  • Laravel 13
  • PHP 8.3
  • MySQL 8
  • no npm or build step
  • 44 tables from migrations or schema.sql with demo seed data
  • 60 automated tests covering roles
  • isolation
  • booking rules
  • payments
  • API and database access rules
  • Docker Compose
  • Nginx and cPanel setup guides
  • CLAUDE.md for AI coding tools

Quality report

Manually reviewed

92/ 100

Automated audit score

◷ 4 open warnings

Passed the audit and a manual review.
Audit run: 4 Oct 2026
Reviewed by Vibe96 staff, Dubai.

Security93
Code structure78
Docs & completeness100
Dependency health95
Build & deploy92

What to know before you buy

4 non-blocking findings shown publicly: no real credentials found; weak defaults in .env.example require attention before deployment; strong authentication and role guards; minor ownership gaps on read-only client endpoints; database access rules: clean orm usage, minor schema gaps (missing indexes on foreign keys); good separation of concerns with some duplication and oversized utility files. The seller has been notified; fixes ship in the next version.

Versions & updates

1.0.0
First release4 Oct 2026✓ Reviewed & audited

No updates yet. New versions appear here with a changelog.
Buyers receive updates free for 1 year.

Quality report

What you get

  • </>Full source codeThe complete audited source, delivered as a download from your account. No obfuscation.
  • ▤DocumentationSetup guide, architecture notes, CLAUDE.md and AGENTS.md.
  • ↻One year of updatesEvery new version the builder publishes, free for 12 months.
  • ♧30 days of supportInstallation and defect support through Vibe96 tickets.
$229Single-site licence Details