Bookings, free.
A booking page, deposits and no-show fees, reminders in your name, and a calendar your team runs the day from. No monthly fee, no fee per booking and no commission. You pay the card rate on what your clients pay.
A client, Sam, books a cut and finish with Ana at Brightwell Studio on their phone: they choose the service (€45.00), pick 11:00 on Tuesday 13 October, accept the studio’s booking policy and pay a €10.00 deposit by card. On the studio’s iPad, the Tuppence app’s Bookings tab shows the time as being booked while Sam pays, then the new booking in Ana’s column, with a notification: Sam booked Cut & finish.
Set up in the dashboard
Add your services, your team and their hours, and the terms clients agree to. Change anything later. Nothing is public until you publish.
Share your page
Share the link, print the QR code for your counter, or add booking to your own website with one line of code.
Get booked, and paid
Clients book without an account and pay a deposit if you ask for one. Before the visit, they get a reminder with a link to move or cancel under your policy.
Run the day from your pocket.
The Bookings tab shows a day at one of your locations, on its own clock. Work down the agenda at the front desk, or see a column per person to spot who is free. On iPhone and iPad, in the same app as your payments.
One tap to the next step
Each visit shows what comes next: Check in, Start, then Complete. Didn’t come is there once it has begun.
A column per person
The whole team’s day side by side, so you know who is free before you offer a walk-in a time.
Book from the desk
New goes from the service to who does it, the time and the client. Clients finds anyone’s record and visits.
Fees with Face ID
Charge a no-show or late-cancellation fee from the app, confirmed with Face ID, under the words the client accepted.
The diary, the clients and the money, in one place.
Get booked
Your own page, wherever clients find you.
Your booking page
Your colours, photos and services, and a page for each person on your team. Search engines see your services and opening hours, and every page has an accessibility statement.
On your own website
One line of code puts a Book now button, or the whole booking flow, on Squarespace, Wix, WordPress or any site. Your site never sees what clients type.
Classes and repeat bookings
Group classes with a set number of places, and series that repeat weekly or every few weeks, for a regular client or a class.
Several places, one page
Add each location with its own hours and team. Clients pick where first, then see only who works there.
Get paid, and protected
Money taken up front, and fees a client agreed to.
Deposits and cards on file
Take a deposit when a client books, or save their card without charging it. One card entry does both, and the deposit comes off the bill.
No-show and late-cancellation fees
Charged with one tap or automatically, under the words the client accepted before booking. Never more than the price.
Vouchers, packages and memberships
Sell gift vouchers, bundles of visits and memberships from your page. A visit a package or membership covers is booked with nothing to pay.
Confirmations and reminders
In your name, with the visit for their calendar. When you’re full, the waitlist offers a freed-up slot to the next client straight away.
Run the day
The diary, the team and the people you see.
A calendar for the day
Click to book, drag to move, and add walk-ins and breaks. It updates as bookings arrive. The day is also in the app on iPhone and iPad, and each person gets a private feed for their own calendar.
Your team
Rotas, time off asked for and approved, staff logins that see only their own day, and each person’s commission and tips worked out for you.
Your clients
Records and notes, with health notes kept sealed; the pets, children or vehicles a visit is for; forms, consents and patch tests; and a block on booking online.
Reports
No-shows with and without a card on file, how full each person’s day is, who comes back, and where your bookings come from.
Start, or switch
A live page the same day, with your history brought along.
A setup wizard
Get started begins with a template for your kind of business (services, a policy and your page) and takes you step by step to a live page you can share.
Bring your clients with you
Import clients, services, staff, time off and upcoming bookings from a spreadsheet, or straight from Fresha, Booksy, Square, Vagaro and Treatwell exports. Preview the import first, and undo it within 24 hours.
Verified reviews
Only clients who came can review: each gets a link after their visit. Publish, hide or reply from the dashboard or the app.
Protect your time without losing the client.
Tuppence writes your policy in plain English. The client accepts those exact words before booking, and the booking keeps them, so any fee is one they agreed to.
- A late-cancellation or no-show fee is never more than the price of the visit: the Competition and Markets Authority’s guidance holds a cancellation charge to what the business actually loses.
- What a client has paid counts towards a fee: a €10 deposit and a €15 fee leave €5 to charge.
- If you cancel, the client gets everything back and owes nothing, as the accepted words say.
- If their bank disputes a fee, the evidence is drafted from the booking: the words accepted, when and from where, and every message they were sent.
Every screen is the API.
The dashboard, the app, your booking page and the MCP server all run on the API you use. A booking follows the same rules wherever it’s made, including by an AI receptionist answering your messages.
const free = await tuppence.availability.query({ service: "svc_…", location: "loc_…", from: "2026-10-12", to: "2026-10-18", }); const booking = await tuppence.bookings.create({ location: "loc_…", items: [{ service: "svc_…" }], starts_at: free.slots[0].starts_at, client: { name: "Sam Patel", email: "sam@example.com" }, }); // booking.status → "confirmed"
free = tuppence.availability.query( service="svc_…", location="loc_…", from_="2026-10-12", to="2026-10-18", ) booking = tuppence.bookings.create( location="loc_…", items=[{"service": "svc_…"}], starts_at=free.slots[0].starts_at, client={"name": "Sam Patel", "email": "sam@example.com"}, ) # booking.status → "confirmed"
# Give your receptionist agent the booking tools: claude mcp add tuppence \ --env TUPPENCE_API_KEY=rk_test_… -- npx -y @tuppence/mcp # Then let it answer your messages: > Book Sam in for a cut on Tuesday morning ⏺ tuppence · find_availability ⏺ tuppence · create_booking Confirmed: Tue 13 Oct, 11:00 with Ana
Endpoints
- GET /v1/availability
- POST /v1/bookings
/holds - POST /v1/bookings
- POST /v1/bookings
/{id} /reschedule - POST /v1/bookings
/{id} /cancel - POST /v1/bookings
/{id} /charge_fee - GET /v1/calendar
MCP tools: list_services, find_availability, create_booking, reschedule_booking, cancel_booking, add_to_waitlist and more. A booking an agent makes says so.
The software is free.
We earn on card payments, so bookings carry no monthly fee, no fee per booking and no commission.
- Booking page, widget, calendar, the app and reports
- Freewith nothing to upgrade to
- Monthly fee, fee per booking, commission on new clients
- Nonehowever the client found you
- Deposits, balances, tips and no-show fees
- from0.9%the card rate, nothing more
- Emails to your clients
- Freeconfirmations and reminders, in your name
- Texts to your clients
- €0.06 per segment
- WhatsApp messages to your clients
- €0.03 per message
Eurozone prices, excluding VAT. A text segment is 160 characters, or 70 once a message has an emoji or a curly quote; texts and WhatsApp are not switched on yet. Each message’s cost is in the log on your Messages page, and the month’s total on your statement. See pricing.
- Texts and WhatsApp to clients
- Your page on your own domain
- Google and Outlook calendar sync
- Book buttons on Google and Instagram
Until texts switch on, clients hear from you by email. For Google, Instagram, Apple Maps, Facebook, WhatsApp and TikTok, Share in the dashboard shows where your page’s link goes.
Card payments from 0.9%, paid out by SEPA.
Tuppence is coming to the eurozone. Join the waitlist, and we’ll email you once, when it opens.