Cancela el componente precompilado del pedido

El componente precompilado para cancelar un pedido verifica el nivel de autenticación de un usuario. Una vez que se autentica el usuario, el componente proporciona información sobre sus pedidos más recientes o anteriores. Luego, el usuario puede elegir cancelar un pedido completo o cancelar elementos específicos de un pedido. Este componente usa el componente precompilado de autenticación de venta minorista para autenticar a los usuarios. El componente también usa generadores para el resumen posterior a la llamada.

Limitaciones

Además de las limitaciones comunes de los componentes precompilados, este componente precompilado tiene las siguientes limitaciones:

  • Este componente no encripta ningún dato.

Diálogos de muestra

En los siguientes diálogos de muestra, se muestran situaciones comunes que controla este componente precompilado. Los diálogos de muestra demuestran el comportamiento cuando se llama al componente con telefonía, lo que activa el intent de bienvenida predeterminado y la primera respuesta del agente al comienzo de la conversación.

Cómo cancelar un solo producto de un pedido reciente

El usuario final ya se autenticó. El agente confirma qué artículos del pedido más reciente se deben cancelar. El agente verifica la forma de pago original y confirma los detalles de la cancelación con el usuario.

Entrada del usuario Respuesta del agente
¿Te comunicas en relación con tu pedido más reciente, que finaliza con 12978 y contiene 5 botellas de agua y 1 camiseta, realizado el 09/11/2023 a las 8:00 p.m.?
Encontramos algunos productos aptos en tu pedido. Dinos qué producto quieres cancelar.
Producto 1: Botella de agua de Google, Producto 2: Camiseta de Google.

Di o ingresa el número de producto del artículo que quieres seleccionar o di "siguiente" para mostrar más productos.
siguiente
No encontramos ningún otro elemento en nuestros registros. Elige de la lista compartida.
Producto 1: Botella de agua de Google, Producto 2: Camiseta de Google.

Di o ingresa el número de producto del artículo que quieres seleccionar, o di "siguiente" para mostrar más productos.
1
Solo para confirmar, quieres cancelar la botella de agua de Google. ¿Es correcto?
Podemos ver que la cantidad disponible del producto que seleccionaste es 5. Especifica la cantidad de productos que deseas cancelar.
4
Especifica el motivo de la cancelación. Puedes decir algo como: cambié de opinión, ya no lo necesito, me gustaría comprar otro artículo, retrasar la entrega, compré por error, quiero cambiar la forma de pago o decir otras opciones.
Quiero comprar otro artículo
Gracias por avisarnos.

¿Quieres cancelar otro producto?
no
En el caso de las compras realizadas con la Billetera, los reembolsos se acreditan en la Billetera o en la cuenta de crédito de Google Store. El reembolso tardará entre 3 y 5 días hábiles en aparecer en tu cuenta. Ten en cuenta que el importe del reembolso no incluirá los cargos de envío y gestión.

Cancelar todo el pedido

El usuario final ya se autenticó. El agente confirma que el usuario quiere cancelar un pedido específico y, luego, recopila el motivo de la cancelación. El agente verifica la forma de pago original y confirma los detalles de la cancelación con el usuario.

Entrada del usuario Respuesta del agente
¿Te comunicas en relación con tu pedido más reciente, que termina en 12345 y contiene 1 camisa, realizado el 10/11/2023 a las 6:00 p.m.?
no
¿Quieres cancelar otro pedido?
¿Podrías proporcionar los últimos 5 dígitos del ID del pedido del que quieres hacer un seguimiento?
12346
Los últimos cinco dígitos del ID del pedido que tenemos son 12346, ¿es correcto?
Genial. Ya terminamos de recopilar el ID del pedido.

¿Quieres cancelar todo el pedido?
Especifica el motivo de la cancelación. Puedes decir algo como: cambié de opinión, ya no lo necesito, me gustaría comprar otro artículo, retrasar la entrega, compré por error, quiero cambiar la forma de pago o decir otras opciones.
ya no es necesario
Gracias por avisarnos.

Se generó tu solicitud de cancelación.

Convenciones de nombres

Este componente precompilado usa las siguientes convenciones de nombres:

Atributo Formato Ejemplo
Flujo [Nombre del componente] Cancelar pedido
Tipo de entidad prebuilt_components_[component_name]_[entity_type] prebuilt_components_product_cancel_reason
Webhook prebuilt_components_[component_name]:[webhook_action] prebuilt_components_cancel_order:post_cancellation_details

Parámetros de entrada

Los parámetros de entrada son parámetros que se usan para configurar ciertos comportamientos del componente. Una o más condiciones dentro del flujo usarán los parámetros para determinar cómo debe comportarse el componente. Los parámetros centrados en el flujo se deben configurar en la página de inicio del componente. Los parámetros centrados en la sesión se pueden establecer mediante un flujo de llamadas o en la página de inicio de este componente.

Este componente precompilado acepta los siguientes parámetros de entrada:

Nombre del parámetro Descripción Formato de entrada
$session.params.phone_number (Opcional) Es el número de teléfono local del usuario, sin el código de país, que se usa para identificarlo. string
$session.params.all_recent_order_id (opcional) Este parámetro enumera los IDs de pedido asociados con el usuario autenticado, ordenados por la fecha de realización del pedido en orden descendente. El primer elemento del array representa el pedido más reciente. Si un usuario no tiene pedidos, el valor de este parámetro es null. Lista (cadena)
$session.params.email (Opcional) El correo electrónico registrado en la cuenta. string
$session.params.user_first_name Es el nombre (opcional) del usuario, que se usa para saludar y confirmar la propiedad de la cuenta. string

Este componente precompilado permite que los siguientes parámetros opcionales configuren el comportamiento del componente, incluidos los reintentos.

Nombre del parámetro Descripción Formato
$flow.max_retry_another_account_counter Especifica la cantidad de reintentos permitidos cuando se selecciona si se debe continuar con una cuenta alternativa. El valor predeterminado es 2. integer
$flow.max_retry_order_number Especifica la cantidad de reintentos permitidos cuando se proporcionan los últimos cinco dígitos de un número de pedido. El valor predeterminado es 2. integer
$flow.max_retry_another_order Especifica la cantidad de reintentos permitidos cuando se selecciona otro pedido en los casos en que no se encuentra el ID del pedido o este no es apto para cancelarse. El valor predeterminado es 2. integer
$flow.max_retry_select_order_number Especifica la cantidad de reintentos permitidos cuando se proporciona el número de pedido completo en los casos en que varios pedidos comparten los mismos últimos cinco dígitos. El valor predeterminado es 2. integer
$flow.max_product_display_counter Especifica la cantidad máxima de productos que se pueden presentar en un solo turno. El valor predeterminado es 2. integer
$flow.max_product_display Especifica la cantidad máxima de productos que se deben presentar durante toda la conversación. El valor predeterminado es 9. integer
$flow.max_retry_product_number_counter Especifica la cantidad máxima de reintentos permitidos cuando se selecciona un producto para cancelarlo. El valor predeterminado es 2. integer
$flow.max_product_cancel_confirm_counter Especifica la cantidad máxima de reintentos permitidos cuando se confirma el producto seleccionado. El valor predeterminado es 2. integer
$flow.max_retry_select_quantity Especifica la cantidad máxima de reintentos permitidos cuando se selecciona la cantidad de productos que se cancelarán. El valor predeterminado es 2. integer
$flow.order_product_cancel_reason_others Especifica el valor de la entidad prebuilt_components_product_cancel_reason que indica que el usuario seleccionó el motivo de cancelación "otros". El valor predeterminado es "others". string
$flow.max_retry_cancel_reason Especifica la cantidad de reintentos permitidos cuando se confirma el motivo de la cancelación. El valor predeterminado es 2. integer
$flow.order_payment_mode_COD Especifica el valor del campo order_payment_mode que muestra el webhook get_order_details que indica una forma de pago contra reembolso (COD). El valor predeterminado es "COD". string
$flow.order_payment_mode_store_credit Especifica el valor del campo order_payment_mode que muestra el webhook get_order_details que indica una forma de pago con crédito de Google Store. El valor predeterminado es "store_credit". string

Para configurar los parámetros de entrada de este componente, expande la sección para obtener instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona el agente.
  4. Selecciona la pestaña Build.
  5. Haz clic en el componente importado en la sección Flujos.
  6. Haz clic en la página principal en la sección Páginas.
  7. Haz clic en la ruta true en la página principal.
  8. En la ventana Ruta, edita los valores de Parámetros predefinidos según sea necesario.
  9. Haz clic en Guardar.

Los parámetros de resultado

Los parámetros de salida son parámetros de sesión que permanecerán activos después de salir del componente. Estos parámetros contienen información importante que recopila el componente. Este componente precompilado proporciona valores para los siguientes parámetros de salida:

Nombre del parámetro Descripción Formato de salida
phone_number Es el número de teléfono local del usuario, sin el código de país, que se usa para identificarlo. string
all_recent_order_id Este parámetro muestra los IDs de pedido asociados con el usuario autenticado, ordenados por la fecha de realización del pedido de forma descendente. El primer elemento del array representa el pedido más reciente. Si un usuario no tiene pedidos, el valor de este parámetro es null. Lista (cadena)
correo electrónico El correo electrónico registrado en la cuenta. string
user_first_name Es el nombre del usuario, que se usa para saludar y confirmar la propiedad de la cuenta. string
transfer_reason Este parámetro indica el motivo por el que se cerró el flujo, si no se realizó correctamente. El valor que se muestra es uno de los siguientes:

agent: El usuario final solicitó un agente humano en algún momento durante la conversación.

denial_of_information: El usuario final rechazó compartir la información que solicitó el componente.

max_no_input: La conversación alcanzó la cantidad máxima de reintentos para los eventos sin entrada. Consulta Eventos integrados sin entrada.

max_no_match: La conversación alcanzó la cantidad máxima de reintentos para los eventos de sin coincidencia. Consulta eventos integrados de sin coincidencia.

webhook_error: Se produjo un error de webhook. Consulta el evento integrado webhook.error.

webhook_not_found: No se pudo acceder a una URL de webhook. Consulta el evento integrado webhook.error.not-found.
string

Generadores

Este componente usa generadores para habilitar partes específicas de la conversación.

Resúmenes

El generador de Summarization se usa para generar un resumen posterior a la llamada que describe la conversación que controla el componente.

Configuración básica

Para configurar este componente precompilado, sigue estos pasos:

  1. Importa el componente precompilado.
  2. Configura los webhooks flexibles proporcionados con la configuración que describe tus servicios externos. Consulta la configuración de webhooks.

Configuración del webhook

Para usar este componente, deberás configurar los webhooks flexibles incluidos para recuperar la información necesaria de tus servicios externos.

Autenticación

Si no configuraste los servicios externos necesarios para la autenticación, deberás hacerlo para habilitar la autenticación de los usuarios de este componente. Consulta Configuración del webhook de autenticación de venta minorista para obtener instrucciones detalladas.

Obtén los detalles del pedido

El componente usa el webhook prebuilt_components_cancel_order:get_order_details para recuperar los detalles de un pedido específico.

Parámetros de solicitud a la API

El componente proporciona los siguientes parámetros como entradas a la solicitud de la API.

Nombre del parámetro Descripción Formato de entrada
$flow.order_id Es el ID de pedido del que se quieren recuperar los detalles. string

Parámetros de respuesta de la API

Los siguientes parámetros se extraen de la respuesta de la API para que los use el componente.

Nombre del parámetro Descripción Formato de salida
order_date Es la fecha en la que se realizó el pedido, en formato YYYY-MM-DD. string
order_time Es la hora en que se realizó el pedido, en formato HH:MM. string
order_product_count Es la cantidad de productos únicos de un pedido. integer
order_payment_mode Indica la forma de pago que se usó cuando se realizó el pedido. string
cancelable_product_id Es la lista de IDs de productos que se pueden cancelar dentro del pedido. Lista (cadena)
cancelable_product_name Es la lista de nombres de los productos cancelables del pedido. Lista (cadena)
cancelable_product_brand_name Es la lista de nombres de marca de los productos cancelables del pedido. Lista (cadena)
cancelable_product_quantity Es la lista de cantidades de los productos cancelables del pedido. Lista (cadena)

Para configurar el webhook Get order details de este componente, expande la sección para obtener instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona el agente.
  4. Selecciona la pestaña Administrar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_cancel_order:get_order_details.
  7. Reemplaza la URL del campo Webhook URL de los agentes de conversación (Dialogflow CX) por el extremo del servicio con el que deseas realizar la integración. Selecciona el Método adecuado en el menú desplegable.
  8. Revisa y actualiza el cuerpo de la solicitud para formar el formato de solicitud adecuado para tu webhook.
  9. Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifiques los nombres de los parámetros, ya que el componente los requiere para acceder a los valores de los campos que se muestran.
  10. Revisa y actualiza la configuración de Authentication según sea necesario.
  11. Haz clic en Guardar.

Obtén detalles de los pedidos duplicados

El componente usa elwebhook prebuilt_components_retail_services:get_duplicate_order_details para recuperar información detallada y distinguir entre pedidos cuando varios números de pedido tienen los mismos últimos cinco dígitos.

Parámetros de solicitud a la API

El componente proporciona los siguientes parámetros como entradas a la solicitud de la API.

Nombre del parámetro Descripción Formato de entrada
$flow.duplicate_order_id Es una lista que contiene los últimos cinco dígitos de los números de pedidos compartidos entre uno o más pedidos del usuario. Lista (cadena)

Parámetros de respuesta de la API

Los siguientes parámetros se extraen de la respuesta de la API para que los use el componente.

Nombre del parámetro Descripción Formato de salida
all_order_date Es la lista de fechas de los pedidos duplicados con los últimos cinco dígitos especificados en formato YYYY-MM-DD. Cada elemento de este array corresponde al mismo elemento del array all_order_time. Lista (cadena)
all_order_time Es la lista de horas de pedido de los pedidos duplicados con los últimos cinco dígitos especificados en formato HH:MM. Cada elemento de este array corresponde al mismo elemento del array all_order_date. Lista (cadena)

Para configurar el webhook Get duplicate order details para este componente, expande la sección para obtener instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona el agente.
  4. Selecciona la pestaña Administrar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_retail_services:get_duplicate_order_details.
  7. Reemplaza la URL del campo Webhook URL de los agentes de conversación (Dialogflow CX) por el extremo del servicio con el que deseas realizar la integración. Selecciona el Método adecuado en el menú desplegable.
  8. Revisa y actualiza el cuerpo de la solicitud para formar el formato de solicitud adecuado para tu webhook.
  9. Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifiques los nombres de los parámetros, ya que el componente los requiere para acceder a los valores de los campos que se muestran.
  10. Revisa y actualiza la configuración de Authentication según sea necesario.
  11. Haz clic en Guardar.

Publica los detalles de la cancelación

El componente usa el webhook prebuilt_components_cancel_order:post_cancellation_details para enviar una solicitud de cancelación.

Parámetros de solicitud a la API

El componente proporciona los siguientes parámetros como entradas a la solicitud de la API.

Nombre del parámetro Descripción Formato de entrada
$session.params.phone_number Es el número de teléfono local del usuario, sin el código de país, que se usa para identificarlo. string
$flow.order_id Es el ID del pedido para el que quieres enviar un ticket. string
$flow.cancel_product_id_list Es la lista de IDs de productos que el usuario quiere cancelar. Lista (cadena)
$flow.cancel_product_quantity_list Es la lista de cantidades de productos que el usuario desea cancelar, correspondientes a cada elemento de $flow.cancel_product_id_list. Lista (cadena)
$flow.cancel_reason_list Es la lista de los motivos de cancelación de cada producto cancelado, que corresponde a cada elemento de $flow.cancel_product_id_list. Lista (cadena)
$flow.order_refund_mode Es el modo de pago del reembolso. La entidad prebuilt_components_cancel_mode_of_refund define los valores válidos. string

Parámetros de respuesta de la API

Los siguientes parámetros se extraen de la respuesta de la API para que los use el componente.

Nombre del parámetro Descripción Formato de salida
order_cancellation_ticket_id Es el ID del ticket de la cancelación enviada. string

Para configurar el webhook Post cancellation details de este componente, expande la sección para obtener instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona el agente.
  4. Selecciona la pestaña Administrar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_cancel_order:post_cancellation_details.
  7. Reemplaza la URL del campo Webhook URL de los agentes de conversación (Dialogflow CX) por el extremo del servicio con el que deseas realizar la integración. Selecciona el Método adecuado en el menú desplegable.
  8. Revisa y actualiza el cuerpo de la solicitud para formar el formato de solicitud adecuado para tu webhook.
  9. Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifiques los nombres de los parámetros, ya que el componente los requiere para acceder a los valores de los campos que se muestran.
  10. Revisa y actualiza la configuración de Authentication según sea necesario.
  11. Haz clic en Guardar.

Completado

Tu agente y sus webhooks ya deberían estar configurados y listos para probarse.