Búsqueda por ciudad

Hola, buenas tardes!

Actualmente estamos utilizando la api de Search para obtener el listado de productos de un cliente. Y encontramos un cliente que tiene stock de acuerdo a la ciudad ¿Cómo puedo hacer para obtener stock de productos de acuerdo a la ciudad?

Saludos

Usas una franchise account? Utilizas el Intelligent search?

1 Like

Hola @leootonelo Para obtener el stock de productos de acuerdo a la ciudad, se deben seguir una serie de pasos que no están relacionados al API de search, debido a que desde esta no es posible obtener la información que necesitas. Además todo depende de tu tienda, por ejemplo si esta es una franquicia. Te explicaré dos formas de obtener el stock de productos de acuerdo a tu ciudad y región, ya tu tomarás la que mejor se ajuste a tu necesidad.

  1. Configurar el precio y disponibilidad por whitelabels.

Los Whitelabels son tiendas sucursales, las cuales pueden tener diferentes precios y disponibilidad de productos en inventario. Ver definición aquí. Para obtener los productos según la ciudad debes obtener o ya sea el código postal o la geolocalización desde servicios de geolocalización externos a VTEX como Google Maps o SmartQuick. En el caso de países como Colombia el código postal no es preciso, por ello se recurre a la geolocalización. Una vez capturada la información, se debe modificar la sesión del usuario (https://developers.vtex.com/vtex-rest-api/reference/sessions)

Edit Session
http://${account}.vtexcommercestable.com.br/api/sessions/${params.session}


public: {
          country: {
            value: country //CO
          },
          geoCoordinates: {
            value: `${geoCoordinates.longitude},${geoCoordinates.latitude}`
          }
        }

Lo anterior se realiza con el sistema de coordenadas, si su país aplica código postal solo debera enviar el código postal y el código de país:

{
	"public":{
		"country":{
			"value":"USA"
		},
		"postalCode":{
			"value":"32004"
		}
	}
}

Recuerda que al hacerlo por edición de la sesión del usuario, la carga de productos y demás ocurre a nivel de backend. En el front será necesario refrescar los datos del componente para visualizarlos. Se recomienda el uso de refresh() de graphql, en el backend para recargar los datos según la respuesta de la consulta.

Documentación de apoyo:
https://help.vtex.com/es/tutorial/%20configurar-el-precio-y-la-disponibilidad-de-skus-por-region
https://help.vtex.com/es/tutorial/vtex-session-vision-general-del-sistema-de-sesiones

  1. Obtener información desde el API de logistica
    https://developers.vtex.com/vtex-rest-api/reference/inventory#inventoryperwarehouse
    Para usar esta API es necesario tomar los Skuid para hacer la búsqueda por cada uno de manera independiente. Si posee el warehouseid le será más fácil realizar las busquedas de los productos.

Recuerde que debe validar como tiene la configuración de lógistica y del API de sesion. Los whitelabels dependen de la regla de negocio, estos son complemente personalizable según la necesidad. Un ejemplo del funcionamiento a nivel visual sobre la lista del stock de productos de acuerdo a una ciudad es el de Grupo Exito (https://www.exito.com/), este utiliza whitelabels

Para estos casos tan puntuales como este se requiere validar la configuración de logistica de su tienda y demás, poner un ticket al equipo de soporte para recibir asistencia personalizada que le faciliten la solución de su caso. Al tener una cuenta puede acceder a este tipo de asesoria.

Quedo atenta por si su problema no logra ser resuelto

1 Like

Gracias Erika, creo que esto es lo que necesitaba. Lo de sesión ya lo había probado pero no estoy haciendo la búsqueda por skuid. Voy a probar lo que me decís y cualquier cosa te aviso.
Saludos