Booking system development: appointments, capacity and payments
A custom booking system costs €5,990–15,000 with me and is usually live in 6 to 10 weeks – considerably more than an off-the-shelf appointment booking tool on a subscription. It pays off when your booking logic is out of the ordinary: capacity that depends on several factors, resources such as rooms or vehicles, seasonal pricing, or bookings that your team has to approve. This guide shows when a standard tool is enough, what a system of your own has to do technically and where the typical pitfalls lie.
- Published
- Last updated:
- Reading time
- 7 min read
- Author
- By Maurice de Felice, web developer in Augsburg, Germany
When is an off-the-shelf booking tool enough?
If customers book an appointment with one person or in one room, duration and price are fixed and you have no special rules, an off-the-shelf appointment booking tool is almost always the more economical solution. It can be embedded in your website, sends reminders and is set up within a few days.
Keep an eye on data protection, though: many tools store customer data on servers outside the EU or use tracking. Ask for a data processing agreement and embed the tool so that it only loads after a click.
When is a booking system of your own worth it?
- Capacity depends on several factors – staff, rooms, equipment and vehicles all at once.
- Prices change by season, duration, group size or customer group.
- Bookings are not confirmed immediately but checked and approved by your team.
- Customers have an account with a history, credit or subscriptions.
- Booking data should flow straight into your inventory management, your accounting or a customer portal.
- Booking itself is your product – for example on a marketplace or a rental platform.
What does a booking system have to do technically?
| Building block | Why it matters |
|---|---|
| Availability and capacity | Shows only what is genuinely free – across all resources |
| Protection against double bookings | Two customers must never get the same slot at the same time |
| Reservation with a time limit | A slot is held briefly until payment is complete |
| Payments, cancellations, refunds | Money and booking status must always match |
| Notifications | Confirmation, reminder, change – by email, and by text message if required |
| Admin area | Your team sees, changes and approves bookings |
| Calendar export | Bookings appear in Outlook, Google Calendar or Apple Calendar |
Building blocks of a custom booking system. Prices: €5,990–15,000 as a starting point. All prices are final prices; as a small business under § 19 of the German VAT Act, I do not charge VAT.
How do you prevent double bookings?
It sounds trivial, but it is the most common flaw in home-grown systems: two customers see the same free slot, click “Book” almost simultaneously – and both receive a confirmation. A check in the interface asking “Is the slot still free?” is not enough to prevent that.
The reliable solution lives in the database: the booking runs inside a transaction that locks the affected record until it is complete. I used exactly this principle for the credit system of the auction platform YachtBrokerBid: every booking runs in a database transaction with a row lock, which rules out double charges and negative balances even with parallel requests. The platform also has deadlines and a limited number of bid slots per auction – the same kind of logic that governs capacity in a booking system.
How are payments integrated securely?
I integrate payments via Stripe. On YachtBrokerBid, payment runs through Stripe Hosted Checkout: after payment, the server verifies the session directly with Stripe before anything is credited, and a regular reconciliation catches payments where someone closed the browser before being redirected back.
For a booking system, that means a booking only counts as confirmed once the payment has been confirmed on the server. Until then the slot is reserved but not allocated. Cancellations and partial refunds need clear rules that are settled in advance – otherwise they turn up later as special cases in the code.
How does the development of a booking system work?
- Initial call: what is being booked, by whom and under which rules? That includes opening hours, buffer times, minimum and maximum durations and cancellation terms.
- Writing down the rules: every special case goes on a list before any programming starts – they determine the fixed price more than the interface does.
- Data model and availability logic first, including protection against double bookings and automated tests for exactly that case.
- Booking flow, payments and notifications, tested at a separate address.
- A trial run with a few real bookings, then launch for all customers.
What does a custom booking system cost?
As a web app, a booking system starts at €5,990 with me. A system with one resource and fixed times sits at the lower end; one with payments, several resources, approvals and a connection to your software costs correspondingly more. The typical range for web apps is €5,990–15,000; the cost calculator shows the range that results from payments, roles and integrations.
How to keep the first version lean is explained in the guide MVP development; for customer accounts with a history, it is worth reading Customer portal development.
What do clients often ask?
Planning a project?
In a free initial call you get an honest assessment of scope, timeline and a fixed price – by video, or in person in Augsburg and Munich. I usually reply within 24 hours.

About the author
Freelance web developer in Augsburg, Germany. By day a backend developer at one of Germany’s largest comparison portals; as a freelancer I build websites, web apps and SaaS platforms with Laravel and React – for example the SaaS platform YachtBrokerBid. More about me
Read next
More guides: How much does a website cost in 2026? Prices, examples and cost drivers · Getting a website built: freelancer, agency or website builder? · How long does it take to have a website built?