Propinas

Cuando un cliente confirma la compra, en Ordering End-to-End se muestra un selector de propinas. Esto le permite al cliente elegir el importe de propina que incluirá con el pedido.

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

Cómo ocultar el selector de propinas

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

Cómo establecer un importe de propina predeterminado

Puedes establecer un importe de propina predeterminado o negarte a aceptar la propina por un restaurante durante la confirmación de la compra. Se pueden admitir los siguientes casos de uso en CheckoutResponseMessage:

  • Un restaurante requiere un importe de propina fijo

    En ProposedOrder.otherItems dentro de CheckoutResponseMessage, agrega una línea de pedido de 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 ofrece al cliente la opción de modificar el importe

    En ProposedOrder.otherItems, dentro de CheckoutResponseMessage, agrega una línea de pedido de tipo GRATUITY con un importe fijo. Asegúrate de agregar también 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"
      }
    }
    
  • Los restaurantes no aceptan propinas

    En ProposedOrder.otherItems dentro de CheckoutResponseMessage, agrega una línea de pedido de tipo GRATUITY con un importe en blanco adentro.

    JSON

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