Para mostrar correctamente tus espacios en el flujo de reserva, debes enviar una asignación precisa y actualizada de tu inventario. La cantidad de lugares disponibles puede cambiar significativamente después de una sola reserva debido a la naturaleza de los restaurantes y la capacidad de unir mesas o el tamaño del grupo. Los ejemplos de este documento te guían para mantener y asignar correctamente tu inventario disponible.
A continuación, se muestran los parámetros especificados en Availability definition
:
party_size
: Es la cantidad de personas que el comercio puede recibir en este horario. En los diagramas de este artículo, se muestran las diferentes formas en que puedes configurar el tamaño del grupo.spots_open
: Es la cantidad de mesas disponibles actualmente para un horario de disponibilidad y un tamaño de grupo específicos.spots_total
: Es la cantidad total de mesas que tiene el comercio para esta configuración, incluidas las mesas no disponibles.
Estos tres parámetros funcionan en conjunto para crear una representación digital del plano. party_size
es la cantidad de personas que pueden sentarse en cada mesa. Hay una entrada para cada tamaño que puede admitir una mesa. spots_open
y spots_total
son recuentos de mesas que pueden acomodar ese party_size
.
Ejemplo de plano de planta vacío
Imagina un restaurante con el siguiente plano y sin reservas activas:
Figura 1. Plano de planta sin reservas activas.
Los siguientes son los valores de party_size
, spots_open
y spots_total
:
party_size | spots_open | spots_total |
---|---|---|
4 | 3 | 3 |
5 | 3 | 3 |
6 | 4 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
El feed de disponibilidad para un horario de este comercio se ve de la siguiente manera:
{
"availability": [
{
"spots_total": 3,
"spots_open": 3,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 4
}
},
{
"spots_total": 3,
"spots_open": 3,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 5
}
},
{
"spots_total": 4,
"spots_open": 4,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 6
}
},
{
"spots_total": 1,
"spots_open": 1,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 7
}
},
{
"spots_total": 1,
"spots_open": 1,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 8
}
}
]
}
Ejemplo de plano de planta con una reserva
Un restaurante con una de las mesas redondas reservadas anteriormente es el siguiente:
Figura 2. Plano de planta con una reserva activa.
Los siguientes son los valores de party_size
, spots_open
y spots_total
:
party_size | spots_open | spots_total |
---|---|---|
4 | 2 | 3 |
5 | 2 | 3 |
6 | 3 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
El feed de disponibilidad para un horario de este comercio se ve de la siguiente manera:
{
"availability": [
{
"spots_total": 3,
"spots_open": 2,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 4
}
},
{
"spots_total": 3,
"spots_open": 2,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 5
}
},
{
"spots_total": 4,
"spots_open": 3,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 6
}
},
{
"spots_total": 1,
"spots_open": 1,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 7
}
},
{
"spots_total": 1,
"spots_open": 1,
"duration_sec": 3600,
"service_id": "1000",
"start_sec": 1535806800,
"merchant_id": "merch1",
"resources": {
"party_size": 8
}
}
]
}
Especifica la disponibilidad de mesas con compatibilidad para mesas combinadas
Existen muchas formas en que un restaurante puede combinar mesas para recibir grupos más grandes. Debes especificar spots_open
y spots_total
de manera que reflejen con precisión si puedes aceptar grupos de un tamaño determinado.
A continuación, se muestra un ejemplo de cómo puedes especificar la combinación de tablas. Es posible que tus feeds difieran según el método de cálculo que utilices. Puedes especificar spots_open
y spots_total
de una manera que coincida con la lógica de tu negocio.
Si un restaurante admite la combinación de mesas para formar un grupo más grande, puedes actualizar tus spots_open
y spots_total
para reflejar esto.
Por ejemplo, un restaurante que puede combinar dos mesas pequeñas para sentar a un grupo de 7 a 10 personas:
Figura 3. Plano de planta sin reservas activas.
En el caso de que no haya reservas activas, los valores de party_size
, spots_open
y spots_total
son los siguientes:
party_size | spots_open | spots_total |
---|---|---|
4 | 3 | 3 |
5 | 3 | 3 |
6 | 4 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
9 | 1 | 1 |
10 | 1 | 1 |
Ahora, con el mismo plano, se realiza una reserva para un grupo de diez personas que combina dos mesas pequeñas.
Figura 4. Plano de planta con una reserva activa que abarca dos mesas.
Luego, los valores de party_size
, spots_open
y spots_total
son los siguientes:
party_size | spots_open | spots_total |
---|---|---|
4 | 1 | 3 |
5 | 1 | 3 |
6 | 2 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
9 | 0 | 1 |
10 | 0 | 1 |