URL Templates For Payment Redirect

Upon booking an availability slot with a specific price, the user will be redirected to your booking page using a URL that's defined by you in the Services feed. The following is an example of a usable URL template.

The parameters in this template are dynamically added using values specified in your feeds and are used to create the link that the user will use to proceed to your booking page.

`https://reservation-provider.com/examplerestaurant/book?date={availability_slot_start_seconds}&num_guests={resources_party_size}`

Available Values for URL Template

Template parameter Required / Optional Feed Field Example Value
availability_slot_availability_tag Optional availability availability_tag tag
availability_slot_duration_seconds Required availability duration_sec 3600
availability_slot_start_seconds Required availability start_sec 4152695841
resources_party_size Required availability.resources party_size 2
resources_room_id Optional availability.resources room_id bar_123

URL Template Definition

The following is the URL template that is sent in your Services feed.

    Message Services {

      // ..
      UriTemplate uri_template;

      // A template specifying how Google should generate URLs to external site.
      message UriTemplate {

        // The uri template must follow the RFC6570, see
        // https://datatracker.ietf.org/doc/html/rfc6570.
        // Supports Level 2 templates.
        // e.g.
        // http://example.com/book/{foo}?b={bar}
        // * foo = 2
        // * bar = abc
        // https://example.com/book/2?b=abc
        // These parameters will be resolved to their values specified in their
        // respective entities.
        // 1) {availability_slot_start_seconds} :: populated from start_sec field in
        //   availability feed
        // 2) {resources_party_size} :: populated from party_size field in
        //   availability feed
        // 3) {availability_slot_duration_seconds} :: populated from duration_sec
        //   field in availability feed
        // 4) {resources_room_id} :: populated from room_id field in the
        //   resource section of the availability feed
        // 5) {availability_slot_availability_tag} :: populated from availability_tag
        //   field of the availability feed

        string uri_template = 1;
      }
    }