Stock Online

Una vez contratado el servicio de Stock Online, debemos ingresar al item del menú Configurar y luego en dicho apartado se podrá seleccionar las bases de datos que se incluirán en la consulta de stock online.
Para agregar o contratar una base simplemente se debe clickear la opción de Contratar de la base deseada.

Al seleccionar la opción de "Contratar" en la base correspondiente, nos aparecerán las siguientes opciones:
En dicha ventana debemos seleccionar que servicio se contratará para la base en la que nos encontramos.
Los servicios disponibles son Stock Online, Venta Continua y Mercado Libre (esta última opción se utilizará para la publicación de stock automática en Mercado Libre).
Para finalizar la contratación de los servicios, se debe seleccionar una Tienda o generar una nueva. Para crear una nueva Tienda, hace falta cargar los siguientes datos:

- Nombre: corresponde al nombre de la Tienda en cuestión
- Dirección: de la tienda.
- Emails: de contacto.
- Etiquetas de inventario: dichas etiquetas sirven para agrupar a las tiendas, y poder sumarizar el stock al momento de utilizar el servicio Publicación de stock automática de Mercado Libre.
Por otro lado, también se puede seleccionar que el stock a informar sea el stock disponible (el stock disponible surge de la diferencia entre el stock y los pedidos de venta realizados en cada base o pendientes de entrega) o el Stock actual del artículo.
Es indispensable obtener un Token para poder trabajar con Stock Online, el mismo se debe solicitar desde la sección de Configuración de zNube - Acceso a Apps, y debe ingresarse en el producto correspondiente.
Es necesario configurar el token en cada maquina para mostrar la información en zNube, y debe generarse un token diferente para cada máquina, no debe usarse el mismo en diferentes máquinas.

Para poder obtener el token se debe presionar sobre el botón de "Nuevo acceso de App" y una vez dentro se debe ingresar un nombre para poder identificarlo. Luego se debe seleccionar el servicio relacionado con el futuro token.

Una vez generado un nuevo acceso a apps, es posible realizar distintas tipos de acciones tales como solicitar el token nuevamente, editar, desactivar o eliminar.
Ingresar token en Dragonfish
Una vez obtenido el token, debe crearse un archivo llamado "config.zoo", y ubicarlo en la ruta "C:\ProgramData\Zoo Logic\DRAGONFISH". Dentro del archivo se debe ingresar el token, respetando el siguiente formato:
"<token>xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</token>".

Ingresar token en Lince Indumentaria
Una vez obtenido el token, debe crearse un archivo llamado "config.zoo", y ubicarlo en la ruta "C:\ProgramData\Zoo Logic\Lince". Dentro del archivo se debe ingresar el token, respetando el siguiente formato:
"<token>xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</token>".

Consulta stock online
Ingresando en Consulta stock online, se podrá chequear el stock de las bases de datos contratadas. En la esquina superior derecha es posible seleccionar el tipo de visualización, que puede ser por base de datos, o por tienda según se configure. Esto modifica la grilla, añadiendo o quitando las columnas de Bases de datos y Tiendas.

Información técnica para desarrolladores
Encabezados
zNube-token (obligatorio): Token obtenido de zNube
Parámetros
Resources: Identificadores únicos de las bases de datos a consultar, separados por coma.
Limit: Cantidad de registros a traer en la consulta (para paginar)
Offset: Cantidad de registros a omitir en la respuesta, desde el primero (para paginar)
Sku: Filtro, devuelve solo los SKU que comiencen con el valor enviado. (CODIGODEARTICULO#CODIGOCOLOR#CODIGOTALLE)
ProductId: Filtro, devuelve solo los ProductId que comiencen con el valor enviado. (código de articulo o los primeros caracteres del mismo)
Order: Orden de los registros devueltos, admite Sku, ProductId, anteponiendo un - indica orden descendiente
FilterQuantity: true/false, filtrar los que tengan cantidad=0
VariantFilters: Filtro de variantes, string por ej COLOR.Id='AZ', COLOR.Name='BLANCO', TALLE.Id='10', se pueden combinar separados por ;
Ejemplo de respuesta
{
"Data": {
"TotalSku": 67, // Cantidad total de registros coincidentes con el criterio de búsqueda
"Stock": [ // Registros de stock por Sku
{
"Sku": "4600#00#U",
"ProductId": "4600", // Id del producto (ver coleccion Productspara referencia)
"Stock": [ // Colección con información de stock por DB
{
"ResourceId": "315c2830-f18b-470f-883f-e8752cadf0c6",
"Quantity": 0.0
}
],
"Variants": [ // Variantes del Sku
{
"Id": "00", // Id de la variante (ver abajo en colección Variants para referencia)
"Type": "COLOR" // tipo de la variante (ver abajo en colección Variants para referencia)
},
{
"Id": "U",
"Type": "TALLE"
}
]
}
],
"Resources": [ // Colección con información de DBs consultadas
{
"ResourceId": "315c2830-f18b-470f-883f-e8752cadf0c6",
"Name": "DEPMUJ",
"Store": "DEPMUJ",
"TotalStock": 10.0
}
],
"Products": { // Descripciones de las productos usados en la respuesta de Stock
"4600": "COLLAR",
},
"Variants": [ // Descripciones de las variantes usadas en la respuesta de Stock
{
"TypeName": "COLOR",
"Names": {
"00": "BEIGE/SUELA"
}
},
{
"TypeName": "TALLE",
"Names": {
"U": "U"
}
}
]
},
"Errors": null, // Información de errores posibles (null si no hay)
"Status": "OK" // Estado de la respuesta.
}
Ejemplo de respuesta y ejecución con error
{
"Data": null,
"Errors": [
{
"Message": "Error al ejecutar REST.", // Distintos posibles mensajes dependiendo de la situación
"Type": "GetStock" // Tipificación de error. (puede cambiar en situaciones muy específicas, por ej GetCompanyStock si se intenta obtener stock de una DB no contratada)
}
],
"Status": "Error" // Estado de la respuesta.
}