Prácticas recomendadas

Las siguientes prácticas recomendadas se aplican a la integración de extremo a extremo de Reserva con Google y se pueden aprovechar para evitar problemas de usabilidad y rendimiento. Si los datos son de baja calidad, es posible que se elimine el inventario.

Feeds

  • Si un servicio no tiene una longitud establecida, establece duration_sec en el feed de disponibilidad como una de las siguientes opciones:
    • La cantidad de segundos que lleva realizar el servicio de manera razonable.
    • La cantidad de segundos promedio que se requiere para completar el servicio.

  • Haz que la entrada del campo Category en el feed del comercio sea específica. Por ejemplo, un restaurante puede enviar un tipo específico, como francés o japonés. Para obtener más detalles, consulta Tipos de lugar para posibles valores de categoría.
  • Establece las Condiciones del Servicio específicas del comercio en el campo Terms del feed de Merchant Center para que aparezca la siguiente nota debajo del botón Reservar:

    Si continúas, aceptas las Condiciones del Servicio de <merchant>.
    En este caso, "Condiciones del Servicio" es un vínculo que, cuando se hace clic en él, muestra el texto establecido en el campo de texto terms.

  • Comprime tus feeds con gzip

Servidor de reservas

Para optimizar tu integración de la API de Maps Booking, haz lo siguiente:

  • Usa siempre marcas de tiempo UNIX en formato UTC.
  • Generar un ID de reserva único cuando se llame a una nueva reserva en la API CreateBooking

Actualizaciones en tiempo real

Para garantizar la mejor experiencia del usuario durante el proceso de reserva, haz lo siguiente:

  • En una implementación estándar, usa la API de BookingNotifications para cambiar la hora de inicio, la duración y el estado de la reserva, como la cancelación o la ausencia en una cita.
  • Ante cualquier cambio de tu parte de Reserva con Google, siempre envía actualizaciones de reservas en tiempo real desde el sistema con la API de BookingNotification en tiempo real para que los datos no queden inactivos en Reserva con Google. Por ejemplo, puedes cancelar, reprogramar o actualizar una reserva de tu sistema en Reserva con Google.
  • Para cada actualización de reserva de UpdateBookingRequest, asegúrate de que el valor UpdateBookingResponse contenga el ID de reserva y que todos los campos actualizados deben reflejar el valor nuevo.
  • Si se implementa la RTU de inventario, haz lo siguiente:
    • Solo actualiza la disponibilidad en lotes de 100 a 1,000 ranuras por llamada a la API.
    • Usa los campos *Restrict (como startTimeRestrict) para reducir el objetivo de edición, reducir el tamaño de la carga útil y evitar volver a enviar demasiados datos sin modificar.
    • Si generas varios subprocesos, implementa una retirada exponencial para evitar errores de regulación. Si no implementas una retirada exponencial correctamente, es posible que veas un error de cuota RESOURCE_EXHAUSTED. Puedes reintentar la retirada exponencial para manejarlos, pero si descubres que tu servidor a menudo alcanza las cuotas cuando ejecutas ReplaceServiceAvailability, configura tu servidor para que reemplace por lotes la disponibilidad. Esta solución evita errores de cuota, ya que reduce la cantidad de llamadas a la API que debe realizar tu servidor.
  • Establece los límites de tiempo de respuesta de la llamada a la API en menos de un segundo. Asegúrate de que tu servidor pueda manejar cinco consultas por segundo (QPS) con una latencia inferior a un segundo, al menos, el 95% de las veces.