Propinas

Cuando un cliente confirma su compra, en la opción de pedidos de extremo a extremo se muestra un selector de propinas. Esto permite el cliente elige la cantidad de propina que incluirá con su pedido.

El pedido de extremo a extremo envía la cantidad elegida en SubmitOrderRequestMessage como LineItem de escribe GRATUITY dentro de un ProposedOrder.otherItem

Cómo ocultar el selector de propinas

Puedes ocultar el selector de propinas para un servicio de restaurante con el ServingConfig.disableTipWidget en tus feeds de datos de inventario.

Cómo establecer un importe predeterminado de propina

Puedes establecer un importe de propina predeterminado o rechazar la aceptación de una propina restaurante durante la confirmación de la compra. Se admiten los siguientes casos de uso en el CheckoutResponseMessage:

  • Un restaurante requiere una propina fija

    En el ProposedOrder.otherItems dentro de CheckoutResponseMessage, agrega una línea de pedido del tipo GRATUITY con un importe fijo en su interior.

    JSON

    {
      "name": "Required Tip",
      "type": "GRATUITY",
      "price": {
        "type": "ESTIMATE",
        "amount": {
          "currencyCode": "USD",
          "units": "3",
          "nanos": 100000000
        }
      },
      "gratuityExtension": {
        "gratuityType": "MANDATORY"
      }
    }
  • Un restaurante sugiere una propina y le da al cliente la opción de modificar el importe

    En el ProposedOrder.otherItems dentro de CheckoutResponseMessage, agrega una línea de pedido del tipo GRATUITY con un importe fijo. Asegúrate de agregar gratuityExtension con un valor gratuityType de USER_MODIFIABLE.

    JSON

    {
      "name": "Suggested Tip",
      "type": "GRATUITY",
      "price": {
        "type": "ESTIMATE",
        "amount": {
          "currencyCode": "USD",
          "units": "3",
          "nanos": 100000000
        }
      },
      "gratuityExtension": {
        "gratuityType": "USER_MODIFIABLE"
      }
    }
  • Un restaurante no acepta propinas

    En el ProposedOrder.otherItems dentro de CheckoutResponseMessage, Agrega un elemento de una sola línea del tipo GRATUITY con un importe en blanco dentro.

    JSON

    {
      "name": "Tip",
      "type": "GRATUITY",
      "price": {
          "type":"ESTIMATE",
          "amount": {
            "currencyCode":"USD"
        }
      }
    }