> For the complete documentation index, see [llms.txt](https://penida.gitbook.io/cowlendar-help/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://penida.gitbook.io/cowlendar-help/how-to.../how-to-setup-a-restaurant-booking-system.md).

# How to setup a restaurant booking system

{% hint style="info" %}
Scenario: You are a restaurant with 4 available table and each table has a unique a number of seats&#x20;

5 tables are for Dates (2 seats)

3 tables are for groups (4 seats)

&#x20;1 table is a "family version" (8 seats)
{% endhint %}

Just thinking about food is getting me hungry haha. :yum: :shallow\_pan\_of\_food:

Alright enough of my hunger, lets get started!

### Steps to get a table booking system setup with Cowlendar

1. In your Shopify admin dashboard Look at the left hand side.
2. Click on **products**.
3. Create a product by clicking on **Add product.**

<figure><img src="/files/dZP4sVsTd75DieIarQcv" alt=""><figcaption></figcaption></figure>

5. **Name this product** something like "Restaurant Reservation" (or whatever works for you).
6. Scroll down and **create a variant** with 3 options Date, Group and Family table.

<figure><img src="/files/rRUwLPaWX66uqqimMzww" alt=""><figcaption></figcaption></figure>

7. Now in your Shopify admin dashboard look to the left and click on **Apps.**
8. Click on **Cowlendar.**
9. Click on **My Services.**
10. Click on **New Service** and select Regular instant booking no checkout as your service type.
    1. By using instant booking no checkout the calendar will skip shopify checkout and it will feel more like a reservation system.

<figure><img src="/files/beJxfmKvByjf2IIKTDhW" alt=""><figcaption></figcaption></figure>

11. When selecting the product to connect pick Restaurant Reservation and start with the "Date" variant.

{% hint style="warning" %}
Select 1 variant at this step! So that we can create multiple services and attach each to only 1 variant thereby allowing for unique slots in each service (each table)
{% endhint %}

<figure><img src="/files/pbgIUFrRJnkvJ1JJAnyy" alt=""><figcaption></figcaption></figure>

12. Configure the **service tab** by tab to meet your needs.
13. Important go into **Advanced tab.**
14. Set the limit per time slot to "5" since we are creating the service for "Date (2 seats)" **which has 5 available tables.**

{% hint style="info" %}
**Why 5 if we can only handle 2 people per table?** \
The reason for this is because each available "slot" in the calendar will act as a table and not a seat
{% endhint %}

<figure><img src="/files/yTz9H7jgqaoC01UN0sIR" alt=""><figcaption></figcaption></figure>

15. Repeat steps 9-14 for each of the tables you offer. Make sure to set the "booking limit per timeslot" accordingly.
    1. so while making the service for the group variant set the limit to **the amount of available tables** which in this example is 3 tables.

{% hint style="success" %}
You should now have a service which has 3 different tables and each table can only be booked X amount of times. This is ONE of many different ways you can set something like this up.
{% endhint %}

<figure><img src="/files/BJkruIkTYv8rAELx7Yn3" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://penida.gitbook.io/cowlendar-help/how-to.../how-to-setup-a-restaurant-booking-system.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
