Saltar al contenido principal

Publicación de Productos RMQ

Guía completa para la publicación de productos en el ecosistema GAIA

Proceso de Publicación​

1. Creación de productos​

la creación de productos implica obtener toda la info necesaria de productos y estructurarla en formato json de la siguiente manera:

{
"sku": "12204_2",
"name": "Buró Blancx B - Negro",
"description": "La línea Blancx son piezas inspiradas en el estilo contemporáneo que da protagonismo a los espacios prácticos y piezas clave. Creada por el equipo de diseño ...",
"visibility": "4",
"weight": "12",
"status": 1,
"image": "+http://pim.gaia.design/var/assets//Producto/buro_blancx_b_negro_still1_v2.jpg",
"color_family": "Black",
"color": "Black",
"linea": "Contemporáneo",
"product_line": "Blancx",
"tiempo_entrega_max": 7,
"tiempo_entrega_max_sin_stock": 60,
"comportamiento_bajo_umbral": "2",
"extend_zone": "0",
"dimension_alto": 44,
"dimension_ancho": 40,
"dimension_largo": 40,
"extra_days_code": "OVS",
"category_1": "MUEBLES",
"category_2": "MUEBLES DE ALMACENAMIENTO",
"category_3": "BUROS",
"categories": "Muebles/Almacenar;;Muebles/Almacenar/Burós;;Muebles/Recámara/Burós y mesas laterales;;Cumpleaños;;Dale la bienvenida al cambio;;GAIA Basics;;Hot Sale descuentos;;Muebles;;Muebles/Recámara",
"marketplace": [
"VIVIA",
"MELI",
"AMAZON",
"LIVERPOOL",
"PRODUCTECA"
],
"ean": "840260461292",
"color_principal": "Negro",
"material_principal": "NA.",
"comercializable": 1,
"extra_tags": [
"Preventa"
],
"landing_pages": [
"300horas",
"ofertashotv3"
],
"additional_services": ["teflon_piloto"],
"material": "",
"gaia_grouped_skus": "",
"type": "simple",
"largo": 40,
"alto": 44,
"ancho": 40,
"label_discount": "+5% en cashback",
"link": null,
"image_link": null,
"additional_image_link": null,
"categories": "Muebles/Almacenar;;Muebles/Almacenar/Burós;;Muebles/Recámara/Burós y mesas laterales;;Cumpleaños;;Dale la bienvenida al cambio;;GAIA Basics;;Hot Sale descuentos;;Muebles;;Muebles/Recámara",
"images": [
"http://pim.gaia.design/var/assets/Producto/buro_blancx_b_negro_still1_v2.jpg",
"http://pim.gaia.design/var/assets/Producto/buro_blancx_b_negro_still2_v2.jpg",
"http://pim.gaia.design/var/assets/Producto/buro_blancx_b_negro_still3_v2.jpg",
"http://pim.gaia.design/var/assets/Producto/buro_blancx_b_negro_still4_v2.jpg",
"http://pim.gaia.design/var/assets/Producto/buro_blancx_b_negro_closeup1_v2.jpg",
"http://pim.gaia.design/var/assets/Producto/buro_blancx_b_negro_closeup2_v2.jpg",
"http://pim.gaia.design/var/assets/Producto/buro_blancx_b_negro_closeup3_v2.jpg",
"http://pim.gaia.design/var/assets/Producto/buro_blancx_b_negro_infografico1_still750_v3.jpg"
],
"enhanced_attributes": [
{
"key": "armado",
"label": "Armado",
"children": [
{
"key": null,
"label": "N/A",
"children": [
{
"key": "complexity_armed",
"label": "Complejidad de armado",
"value": "Avanzado",
"icon": "complexity_armed",
"visibility": true
},
{
"key": "tipo_de_armado",
"label": "Tipo de armado",
"value": "Requiere armado completo",
"icon": "tipo_de_armado",
"visibility": true
},
{
"key": "instructivo",
"label": "Instructivo",
"value": "https://drive.google.com/file/d/1MA5lbEGJsCN1p0SKyNf17HHZULqbqylE/view?usp=sharing",
"icon": null,
"visibility": true
}
]
}
]
},
{
"key": "cuidados",
"label": "Cuidados",
"children": [
{
"key": "mantenimiento",
"label": "Mantenimiento",
"children": [
{
"key": "mantenimiento",
"label": "Mantenimiento",
"value": "Sacudir el polvo de la superficie con un paño suave, en caso de mancha limpia con un paño ligeramente humedecido con agua y seca. No uses productos abrasivos, pulidores o con solventes para su limpieza. No tallar o cepillar la superficie para evitar dañar el laminado. Protege la superficie de objetos húmedos y/o calientes. No apoyar objetos punzocortantes que puedan rayar la superficie",
"icon": null,
"visibility": true
},
{
"key": "seguridad",
"label": "Seguridad",
"value": "Hacer modificaciones estructurales que alteren el diseño del producto aSi como el uso inadecuado de éste, puede causar lesiones graves o fatales. No superar el peso máximo recomendado. No arrastrar los productos para evitar daños estructurales y/o accidentes. Este producto no está diseñado para usarse como escalera. Colocar los productos más pesados en el cajón o repisa inferior. Nunca abrir más de 1 cajón al mismo tiempo. Recomendamos la fijación a pared de piezas apartir de 75 cm de altura para evitar caídas. No colocar electrodomésticos en productos que no están diseñados para ello",
"icon": null,
"visibility": true
}
]
}
]
},
{
"key": "informacion_general",
"label": "Información general",
"children": [
{
"key": null,
"label": "N/A",
"children": [
{
"key": "garantia",
"label": "Garantía",
"value": "12 meses",
"icon": null,
"visibility": true
}
]
}
]
},
{
"key": "peso_dimensiones",
"label": "Peso y dimensiones",
"children": [
{
"key": null,
"label": "N/A",
"children": [
{
"key": "peso_soportado",
"label": "Peso máximo soportado (kg)",
"value": "15",
"icon": null,
"visibility": true
},
{
"key": "weight",
"label": "Peso del producto armado (kg)",
"value": "12",
"icon": null,
"visibility": true
}
]
}
]
},
{
"key": "especificaciones",
"label": "Especificaciones",
"children": [
{
"key": "materiales",
"label": "Materiales",
"children": [
{
"key": "material_principal",
"label": "Principal",
"value": "MDF laminado",
"icon": null,
"visibility": true
}
]
}
]
}
],
"facetable_attributes": {
"tipo_de_armado": "Requiere armado completo",
"material_principal": "MDF laminado"
},
"recommended_items": "11_1,11_2",
"new_stock": 50,
"stock": {
"ARTZ": 0,
"ARTZ_EX": 1
},
"msrp": 1000,
"price": 999,
"master_scores": {
"score_1": 2.559837484
},
"has_cashback": false
}

La publicación de productos implica enviar el mensaje al exchange product con el routing key sed.product.* donde * puede ser la acción que se ejecuta en el producto (add, update, etc)

Este exchange está configurado para publicar productos en el queue .ares.product del virtual host SEDstg

2. Actualización​

La actualización de estos atributos implica reenviar el mensaje con el identificados de sku y solo los campos a actualizar que pueden ser una combinación de los anteriores, el único campo requerido es el sku.

Ejemplo de actualización para la visiblidad del producto​

Se utilizan los siguientes campos:

  • status: Indica si el producto esta habilitado en el catalogo.
    • 0 = Deshabilitado
    • 1 = Habilitado
  • comercializable: Indica si se desea vender el producto.
    • 0 = No comercializable
    • 1 = Si comercializable
  • comportamiento_bajo_umbral: Indica como afecta el stock para la venta.
    • 1 = Se puede vender sin stock; "DM|Usar dias maximos".
    • 2 = Solo se vende con stock; "NDPC|No disponible para carrito".
  • visibility: Indica si se puede mostrar en web.
    • 1 = No es visible individualmente; Se usa para dejar de mostrar en web.
    • 2 = Catálogo; No se utiliza.
    • 3 = Buscar; Antes se usaba para mostrar en POS pero no en web.
    • 4 = Catálogo, Busqueda; Se debe utilizar este para que se muestre en web.
    • 5 = A traves de simple; No se utiliza.
{
"sku": "12204_2",
"visibility": "4",
"status": 1,
"comportamiento_bajo_umbral": "2",
"comercializable": 1
}

Ejemplo de actualización de precio​

Se utilizan los siguientes campos:

  • msrp: Costo del producto "sin descuento".
  • price: Costo final del producto "con descuento", puede ser el mismo que msrp.
{
"sku": "12204_2",
"msrp": 500,
"price": 449
}

Ejemplo de actualización de stock​

Se utilizan los siguientes campos:

  • new_stock: Cantidad de stock disponible a la venta ( consideramos el stock de CEDIS ).
  • stock: Cantidad de stock en cada tienda, los códigos deben coincidir con el catalogo en headless.
    • El valor es un objeto entonces reemplazara lo que tenga Ares guardado previamente de forma que si se tenia el stock de ARTZ, SHOC y SHROM pero en la actualizacion solo se manda ARTZ se perderia SHOC y SHROM.
{
"sku": "12204_2",
"new_stock": 20,
"stock": {
"ARTZ": 3,
"ARTZ_EX": 0
}
}