Menú digital
POST
Crear una reserva
POST /api/digital-menu/create-reservation
Descripción
Crea la reserva de la persona con sesión en la zona, el día y la hora elegidos.
Detalles
Exige la sesión de la persona: la reserva queda en su perfil. Revalida la zona, la hora, el tamaño del grupo y el cupo. Si la zona pide depósito, la reserva queda pendiente hasta pagarlo.
Permisos requeridos
public
Request
| Nombre | Tipo | Requerido | Reglas |
|---|---|---|---|
| slug | string | Sí |
min:1
max:63
|
| areaUuid | string | Sí |
min:36
max:36
|
| date | string | Sí |
min:10
max:10
|
| slotIso | datetime | Sí | — |
| guestCount | int | Sí |
min_value:1
max_value:255
|
| guestOccasionId | int | No |
min_value:1
|
| notes | string | No |
max:300
|
Respuesta
Campos que devuelve dentro de data. Nada fuera de esta lista sale en la respuesta.
| Campo | Tipo | Descripción |
|---|---|---|
| reservationUuid | string | Identificador de la reserva |
| status | string | Estado de la reserva |
| advance | object Admite vacío | Depósito por pagar; vacío si la zona no pide |
| advance.requiredCents | int | Monto a pagar, en centavos |
| advance.dueAt | datetime | Hasta cuándo hay plazo para pagarlo |
Ejemplo de request
curl -X POST https://restofy.pro/api/digital-menu/create-reservation \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <accessToken>" \
-d '{
"slug": "string",
"areaUuid": "string",
"date": "string",
"slotIso": "2026-01-01T00:00:00Z",
"guestCount": 1
}'
Los valores son demo: reemplázalos por datos reales del negocio.