The following are questions that our partners frequently ask, as well their solutions.
- Can partners include merchants with more than one location?
- Yes, partners can do this if they add each location separately in the Merchant feed.
- Can time slots overlap?
- Yes, slots might overlap because intervals between time slots don't have to be equal in duration. These intervals can be much shorter than service duration. This allows you to handle business logic on your end. For example, there can be one time one slot from 9 AM to 10 AM and another slot from 9:15AM to 10:15AM for the same service.
- When you use recurrence, can exception times that are back-to-back be combined into one?
- Yes, they can be combined.
- What's shown to the user when min_advance_online_canceling is set versus when it's not set?
The following messages are shown to the user dependent on the value of min_advance_online_canceling`:
- If set to a specific time: "If you made a booking and cannot attend,
please cancel your booking <
min_advance_online_canceling> in advance."
- If not set: "If you can’t make it to your booking, please call
merchant> directly at <
phone number> to inquire about your refund/cancellation policy."
- Should a partner generate the booking ID when a new booking in the Create Booking API is called?
- Yes, generate a booking ID on your end. We treat it as an opaque identifier.
Real-time booking updates
- If a user changes the start time, duration, or services on a booking, would these changes be restricted by the availability feed?
- Yes. For example, a user can't update their 10:00 AM booking to start at 10:05 AM since there are no open availability slots in the availability feed.
- If a partner deletes a merchant or service, does that delete all of its associated services and availability slots?
- Yes, if a partner deletes a merchant or service, sub-levels are automatically disabled in our system.
- Does the
UpdateBookingRequestbooking contain the whole booking from
CreateBookingResponseor only updated fields?
- Both. It contains a mask that contains the updated fields, and the
whole booking from
CreateBookingResponse. For example, for a booking cancellation, the
FieldMask Path="status"booking object only has
Booking.status = 'BookingStatus.Canceled'.
- When can Google support my preferred payment processor?
- The latest list of supported processors is at the Google Pay website.
- For any given availability slot, can a business provide a different price for each staff member who performs the same service?
- Yes, you can provide a per-staff member, per-availability slot price for a
service if you provide a collection of payment options within the merchant
feed. See the
PaymentOptionmessage for details on the exact set of fields that define a
- Is there any dependency between prepayments, deposits, and no-show fees?
- There's no dependency between prepayments, deposits, and no-show fees that are specified in the service feed. You can have valid deposits and no-show fees without having prepayments enabled. However, for either of those three to function correctly, you need to complete your payments integration.
- How are tax fees shown to users?
- If a tax rate is set and payment online is required, tax fees are shown separately from your service costs. They are included in the total price shown to the user.
- How do I access the links to the sandbox frontend?
- You can access sandbox links via the Partner Portal > Inventory page.
- Is there a sandbox environment where partners can see their data and use their data to run tests?
- Yes, a sandbox environment is available for you to run end-to-end integration tests. For more information, see our end-to-end testing guide.
- Is there a version of the API that accesses the sandbox environment?
- Yes, enable the Maps booking API (dev) in your Google Cloud project. It's
only accessible to users of the Partner Portal that are automatically allowed
access. Once enabled, all you need to do is change the endpoint of your API