Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
I partner che partecipano al programma delle liste d'attesa per le prenotazioni devono completare la configurazione dell'account prima di iniziare. Tuttavia, alcuni passaggi della guida generale non sono necessari per utilizzare la funzionalità della lista d'attesa. Le linee guida riportate in questa pagina spiegano quali passaggi devono seguire i partner interessati a utilizzare la funzionalità della lista d'attesa su Prenota con Google. Ti consigliamo di leggere questa panoramica prima di procedere con i passaggi di integrazione.
Avvio del processo
La Figura 1 illustra la procedura per lanciare i commercianti idonei alla lista d'attesa
in Actions Center.
Figura 1: passaggi di integrazione di alto livello
In generale, i principali flussi di dati tra te (il Partner) e Google sono riportati nella Figura 2:
Figura 2: diagramma del flusso di dati di integrazione
Linee guida per tutti i partner di Liste d'attesa per le prenotazioni
Tieni presente quanto segue durante l'implementazione della funzionalità Liste d'attesa per le prenotazioni:
Il servizio per ogni commerciante con liste d'attesa per le prenotazioni deve avere il campo waitlist_rules compilato.
Devi utilizzare lo stesso servizio sia per la lista d'attesa che per la prenotazione. In altre parole, se il tuo
ristorante ammette anche le prenotazioni, devi solo aggiungere i metadati relativi alla lista d'attesa al servizio
per le prenotazioni.
L'invio di aggiornamenti via SMS è obbligatorio per l'implementazione della lista d'attesa nei seguenti casi:
Per confermare che l'utente si è iscritto correttamente alla lista d'attesa.
Per informare l'utente che il tavolo è pronto.
Per notificare all'utente che la sua registrazione alla lista d'attesa è stata annullata.
I messaggi SMS devono contenere un link a una pagina in cui gli utenti possono visualizzare il proprio stato nella lista d'attesa.
I commercianti solo in lista d'attesa non devono fornire feed di disponibilità al Centro azioni.
Il server di prenotazione deve implementare tutti i passaggi specifici per la lista d'attesa elencati in Implementare il server di prenotazione. I partner che supportano sia le prenotazioni sia le liste d'attesa possono aggiungere i nuovi metodi al proprio server di prenotazione esistente.
Il Centro azioni esegue un insieme di casi di test per i metodi di lista d'attesa nel server di prenotazione.
Di seguito sono riportati casi limite comuni in un'integrazione delle liste d'attesa per le prenotazioni e le soluzioni preferite.
Se per alcuni (ma non per tutti) numeri di persone non vengono accettate nuove aggiunte alla lista d'attesa perché non c'è attesa per questi numeri di persone, è preferibile restituire WaitEstimates per tutti i numeri di persone nella risposta BatchGetWaitEstimates e consentire agli utenti di iscriversi alla lista d'attesa per questi numeri di persone senza attesa. Restituire un WaitLength con
0 parties_ahead_count e/o un estimated_seat_time_range con 0
start_seconds e 0 end_seconds per i party_size
senza attesa
Se per una o più dimensioni del gruppo non vengono accettate nuove aggiunte alla lista d'attesa
perché l'attesa è diventata troppo lunga, è preferibile omettere
WaitEstimates per queste dimensioni del gruppo nella rispostaBatchGetWaitEstimates.
Questi approcci sono preferiti perché offrono all'utente delle opzioni anche se la lista d'attesa del commerciante potrebbe non essere completamente aperta.
Linee guida per i partner che offrono solo liste d'attesa per le prenotazioni
Tieni presente quanto segue se il server di prenotazione viene utilizzato solo per le liste d'attesa:
I partner che offrono solo liste d'attesa per le prenotazioni non forniscono feed di disponibilità a Prenota con Google.
I partner che offrono solo prenotazioni con lista d'attesa non implementano i metodi di prenotazione nel loro
server di prenotazione. Devi invece implementare il server di prenotazione seguendo le istruzioni per l'implementazione della lista d'attesa.
I partner che offrono solo liste d'attesa per le prenotazioni non effettuano chiamate API a Google. Ciò significa che
i partner che utilizzano solo le liste d'attesa per le prenotazioni non devono configurare un progetto cloud o fornire un
indirizzo email dello sviluppatore. Non è necessario completare
Aggiornamenti dell'API in tempo reale. Tuttavia,
i feed dei commercianti e
servizi devono comunque essere forniti al Centro azioni.
Linee guida per i partner i cui commercianti devono accettare/rifiutare manualmente le aggiunte alla lista d'attesa
Se i tuoi commercianti richiedono la possibilità di accettare o rifiutare manualmente le nuove aggiunte alla lista d'attesa da Google, sono necessari passaggi aggiuntivi:
Imposta waitlist_confirmation_mode su
WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS in
wait_estimate per i numeri di persone che richiedono conferma manualmente. Questo valore deve essere impostato in
BatchGetWaitEstimateResponse e
GetWaitlistEntryResponse.
Le voci della lista d'attesa richieste dall'utente, ma non ancora accettate dal commerciante, devono essere nello stato PENDING_MERCHANT_CONFIRMATION.
Scenari di test delle liste d'attesa per le prenotazioni
Google testa i seguenti casi d'uso per garantire la funzionalità dei metodi di lista d'attesa nell'implementazione del server di prenotazione. Google testa e monitora anche la latenza. Tutti questi test devono essere superati prima del lancio.
Recupero di WaitEstimate
Le stime di attesa vengono restituite per ogni numero di persone richiesto in un
BatchGetWaitEstimatesRequest.
Per le dimensioni dei gruppi per i quali il commerciante ha la possibilità di accettare o rifiutare nuove aggiunte alla lista d'attesa, imposta waitlist_confirmation_mode su WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS.
Creazione di voci nella lista d'attesa
Una voce della lista d'attesa può essere creata da una richiesta
CreateWaitlistEntry.
Se la creazione della voce della lista d'attesa non va a buon fine, nella risposta viene visualizzato un errore della logica di business.
Se un tentativo di CreateWaitlistEntry va a buon fine, la stessa risposta viene restituita quando viene ricevuto nuovamente lo stesso CreateWaitlistEntry.
Se un tentativo di CreateWaitlistEntry non va a buon fine, il server riprova quando riceve di nuovo lo stesso CreateWaitlistEntry.
Le voci della lista d'attesa vengono visualizzate nell'interfaccia del commerciante.
Le chiamate a GetWaitlistEntry restituiscono correttamente la voce della lista d'attesa creata.
Stati e timestamp delle voci della lista d'attesa
Verifica che ogni stato della voce della lista d'attesa venga restituito correttamente nella voce della lista d'attesa delle risposte GetWaitlistEntry.
Verifica che ogni timestamp dello stato sia impostato nel campo timestamp appropriato della voce della lista d'attesa nelle risposte GetWaitlistEntry.
Eliminazione della voce della lista d'attesa
Le voci della lista d'attesa esistenti possono essere eliminate. La risposta a un'eliminazione riuscita deve essere il proto vuoto {}.
Disattiva
Verifica che i commercianti che hanno disattivato la funzionalità vengano trattati come descritto in
Disattivazione del commerciante.
Feed del servizio di lista d'attesa di esempio (JSON)
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-07-26 UTC."],[[["\u003cp\u003eThis guide explains the integration process for Reserve with Google's Waitlist feature, specifically designed for partners already familiar with Reservations.\u003c/p\u003e\n"],["\u003cp\u003ePartners need to implement waitlist-specific steps in their booking server and ensure it passes Google's test cases before launching.\u003c/p\u003e\n"],["\u003cp\u003eSMS updates for confirmations, table readiness, and cancellations are mandatory, including a link for users to check their waitlist status.\u003c/p\u003e\n"],["\u003cp\u003eIntegration typically requires 12-14 weeks with dedicated technical resources, and partners should be prepared for common edge cases and merchant opt-out scenarios.\u003c/p\u003e\n"],["\u003cp\u003eWhile Reservations partners need to add waitlist metadata to existing services, Waitlist-only partners don't need to provide availability feeds or implement reservation methods.\u003c/p\u003e\n"]]],["Partners in the Reservations Waitlists program must complete account setup. Key actions include populating `waitlist_rules` in the service feed, implementing a booking server with waitlist-specific steps, and sending SMS updates for waitlist confirmations, table readiness, and cancellations. Waitlist-only merchants do not require availability feeds or reservation methods. Manual accept/reject requires setting `waitlist_confirmation_mode`. Google tests wait estimate retrieval, waitlist entry creation/deletion, status reporting and opt out responses, all of which must pass prior to launch.\n"],null,["# Overview\n\n| **Note:** This section is only relevant for partners completing Reservations Waitlists integration.\n\nPartners participating in the Reservations Waitlists program must complete the account\n[Setup](/actions-center/verticals/reservations/waitlists/integration-steps/setup) before\nthey begin. However, some steps in the general guide aren't necessary for\nuse of the waitlist feature. The guidelines on this page explain what steps\napply to partners interested in using the waitlist feature on Reserve with\nGoogle. We suggest that you read through this overview before going through\nthe integration steps.\n\nLaunch process\n--------------\n\nFigure 1 outlines the process to launch your waitlist-enabled merchants\non the Actions Center.\n| **Note:** Integration typically takes 12-14 weeks with dedicated technical resources.\n**Figure 1:** High-level integration steps\n\nOverall, the major data flows between you (the Partner) and Google are\ncaptured in Figure 2:\n**Figure 2:** Integration data flow diagram\n\nGuidelines for all Reservations Waitlists partners\n--------------------------------------------------\n\nKeep the following in mind as you implement the Reservations Waitlists feature:\n\n- The service for every Reservations Waitlists merchant must have [`waitlist_rules` populated](/actions-center/verticals/reservations/waitlists/reference/feeds/services-feed).\n - You must use the same service for both waitlist and reservation. In other words, if your restaurant also allows reservations, just add the waitlist related metadata to the service for reservation.\n- Sending out SMS updates is required for the waitlist implementation in the following cases:\n - To confirm the user has successfully joined the waitlist.\n - To notify the user that their table is ready.\n - To notify the user that their waitlist entry has been cancelled.\n- SMS messages must contain a link to a page where users can view their waitlist status.\n- Waitlist-only merchants do not need to provide availability feeds to the Actions Center.\n- Your booking server must implement all the waitlist-specific steps listed in [Implement the booking server](/actions-center/verticals/reservations/waitlists/integration-steps/implement-waitlist-booking-server). Partners that support both reservations and waitlists can add on the new methods to their existing booking server.\n- The Actions Center runs a set of [test cases](/actions-center/verticals/reservations/waitlists/integration-steps/overview#test-cases) for the waitlist methods in the booking server.\n\n### Status flowchart\n\n\nThis chart describes the statuses that must be reported in\n[`WaitlistEntry.waitlist_entry_state`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-definitions/waitlistentry-definition) when responding to\n[`GetWaitlistEntry`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-methods/getwaitlistentry-method) calls. The chart also indicates when to record and populate the\n[`WaitlistEntry.waitlist_entry_state_times.*_time_seconds`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-definitions/waitlistentry-definition) fields and when to send an SMS to the user to inform them they have entered a new state.\n**Figure: 3** Waitlist status flowchart\n\n### Common edge cases\n\nThe following are common edge cases in a Reservations Waitlists integration and preferred\nsolutions for them.\n\n- If some (but not all) party sizes are not accepting new waitlist additions because there is no wait on these party sizes then returning `WaitEstimates` for all party sizes in the `BatchGetWaitEstimates` response and allowing users to join the waitlist for these party sizes with no wait is preferred. Return a `WaitLength` with 0 `parties_ahead_count` and/or with an `estimated_seat_time_range` with 0 `start_seconds` and with 0 `end_seconds` for the `party_size`s with no wait\n- If one or more party sizes are not accepting new waitlist additions because the wait has become too long then omitting `WaitEstimates` for those party sizes in the `BatchGetWaitEstimates` response is preferred.\n\nThese approaches are preferred since they give the user options even though\nthe merchant's waitlist may not be fully open.\n\nGuidelines for Reservations Waitlists-only partners\n---------------------------------------------------\n\nKeep the following in mind if the booking server is used only for\nwaitlists:\n\n- Reservations Waitlists-only partners don't provide availability feeds to Reserve with Google.\n- Reservations Waitlists-only partners do not implement the reservation methods in their booking server. Instead, you [Implement the booking server](/actions-center/verticals/reservations/waitlists/integration-steps/implement-waitlist-booking-server) with the instructions for the Waitlist implementation.\n- Reservations Waitlists-only partners do not make API calls to Google. This means that Reservations Waitlists-only partners do not need to set up a cloud project or provide a developer email address. You do not need to complete [Real-time API updates](/actions-center/verticals/reservations/waitlists/integration-steps/real-time-api-updates). However, [merchant](/actions-center/verticals/reservations/waitlists/reference/feeds/merchants-feed) and [service](/actions-center/verticals/reservations/waitlists/reference/feeds/services-feed) feeds still need to be provided to the Actions Center.\n\nGuidelines for partners whose merchants must\nmanually accept/reject waitlist additions\n--------------------------------------------------------------------------------------\n\nIf your merchants require the ability to manually accept or reject new\nwaitlist additions from Google, extra steps are required:\n\n- Set the `waitlist_confirmation_mode` to `WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS` in the `wait_estimate` for party sizes which require manual confirmation. This must be set in the [`BatchGetWaitEstimateResponse`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-methods/batchgetwaitestimates-method) and the [`GetWaitlistEntryResponse`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-methods/getwaitlistentry-method).\n- Waitlist entries that have been requested by the user, but not yet accepted by the merchant should be in state `PENDING_MERCHANT_CONFIRMATION`.\n\nReservations Waitlists test cases\n---------------------------------\n\nGoogle tests the following use cases to ensure the functionality of the\nwaitlist methods in your booking server implementation. Google also tests and\nmonitors latency. All of these tests must pass prior to launch.\n\n### WaitEstimate retrieval\n\n- Wait estimates are returned for each party size requested in a `BatchGetWaitEstimatesRequest`.\n- For party sizes which the merchant has the option to accept or reject new waitlist additions, set waitlist_confirmation_mode to `WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS`.\n\n### Waitlist entry creation\n\n- A waitlist entry can be created from a `CreateWaitlistEntry` request.\n- If waitlist entry creation fails, a business logic error shows up in the response.\n- If a `CreateWaitlistEntry` attempt succeeds, the same response is returned when the same `CreateWaitlistEntry` is received again.\n- If a `CreateWaitlistEntry` attempt fails, the server retries when the same `CreateWaitlistEntry` is received again.\n- Waitlist entries show up in the merchant's interface.\n- Calls to `GetWaitlistEntry` successfully return the created waitlist entry.\n\n### Waitlist entry states and timestamps\n\n- Verify that each waitlist entry state is returned properly in the waitlist entry of `GetWaitlistEntry` responses.\n- Verify that each state timestamp is set in the appropriate timestamp field of the waitlist entry in `GetWaitlistEntry` responses.\n\n### Waitlist entry deletion\n\n- Existing waitlist entries can be deleted. The response to a successful delete must be the empty proto `{}`.\n\n### Opt out\n\n- Verify that opted out merchants are treated as described in [Merchant opt out](/actions-center/verticals/reservations/waitlists/integration-steps/overview#merchant-opt-out).\n\nSample waitlist service feed (JSON)\n-----------------------------------\n\n[Waitlist service feed](/actions-center/verticals/reservations/waitlists/reference/feeds/services-feed)\n\nMerchant opt out\n----------------\n\nGoogle expects certain responses for merchants that previously had waitlists\nenabled but have decided to opt out.\n\n### Immediate opt out\n\n- Return [`CLOSED_OTHER`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-definitions/waitlistbusinesslogicfailure-definition) for [`BatchGetWaitEstimates`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-methods/batchgetwaitestimates-method) requests.\n- Return [`WAITLIST_CLOSED`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-definitions/waitlistbusinesslogicfailure-definition) for [`CreateWaitlistEntry`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-methods/createwaitlistentry-method) requests.\n- Return [`GetWaitlistEntry`](/actions-center/verticals/reservations/waitlists/reference/booking-server-api-rest/e2e-methods/getwaitlistentry-method) requests properly for users who are already on the waitlist.\n\n### Extended opt out\n\n- Remove the `waitlist_rules` from the service feed for the merchant if the merchant is not opting out of reservations.\n- Remove the merchant from the merchant feed if they opt out of all Google integrations."]]