Es la entidad que almacena la información de precios e inventario. Cada producto contiene 1 variante master, y, opcionalmente, otras variantes dependiendo de su configuración.
Por ejemplo: una camiseta (producto) puede tener múltiples “tallas” (variantes) y cada variante puede tener un precio, inventario o imagen específica, aunque pertenezcan al mismo producto.
A través del uso de variantes se puede presentar a nivel visual (en la misma ficha de un producto) todas las opciones que tenga (los distintos colores, sabores, fragancias, etc. del mismo producto) para una experiencia de compra mejorada.
Importante: Para actualizar precio y cantidad disponible de un producto existente, es necesario hacerlo a través del endpoint de variantes, y no de productos.
Listado de variantes
GEThttps://tiendagoshop.com/api/v1/variants
Este endpoint permite obtener un listado de todas las variantes.
Array de objetos con los siguientes parametros, stock_location_id(id del stock, integer), count_on_hand(cantidad del producto, integer)
Ej. stock_items_attributes:[ {
"stock_location_id": 1, "count_on_hand": 99
}
]
product_id
integer
ID del producto al que pertenece la variante.
options
array
Opciones de la variante. Por ejemplo: Color rojo. Los nombres de las opciones deben coincidir con las definidas en el producto (option_types).
Array de objetos JSON con la siguiente estructura: [ { "name": "Talla", "value": "small" }, { "name": "Color", "value": "rojo" } ]
sku
string
Referencia / código interno único.
price
number
Precio. Si no se especifica, coge el precio del producto al que pertenece.
cost_price
number
Precio de lista.
gd_size_reference
string
Referencia de tamaño del paquete (para GoDelivery):
track_inventory
boolean
Controlar inventario.
fixed_stock
integer
Cantidad disponible en inventario.
(deprecated)
Ver stock_items_attributes
images
array
Imágenes de la variante.
Array de objetos JSON con la siguiente estructura:
[ { "remote_url": "http://dominio.com/images/1.png" } ]
tax_category_id
integer
ID del tipo de impuesto.
1 = ITBIS 18%
2 = ITBIS 16%
3 = Exento de ITBIS
prices_attributes
array
Array de objetos, donde cada objeto debe estar compuesto por :
1- amount, (Precio)
2- compare_at_amount, (Precio de lista)
3- currency, (Moneda)
Ej:
"prices_attributes": [
{ "amount": 25, "compare_at_amount": 30, "currency": "USD" },
{ "amount": 35, "compare_at_amount": 45, "currency": "DOP" }
]
Observación: Solo aplica a multitiendas.
fixed_stock se encuentra obsoleto, favor utilizar stock_items_attributes
Modificar una variante
PUThttps://tiendagoshop.com/api/v1/variants/:id
Este endpoint permite modificar una variante en específico.
Path Parameters
Name
Type
Description
id
integer
ID de la variante.
Headers
Name
Type
Description
X-Spree-Token
string
Token generado desde el CMS de GS
Request Body
Name
Type
Description
stock_items_attributes
array
Array de objetos con los siguientes parametros, stock_location_id(id del stock, integer), count_on_hand(cantidad del producto, integer)
Ej. stock_items_attributes:[ {
"stock_location_id": 1, "count_on_hand": 99
}
]
tax_category_id
integer
product_id
integer
ID del producto al que pertenece la variante.
options
array
Opciones de la variante. Por ejemplo: Color rojo. Los nombres de las opciones deben coincidir con las definidas en el producto (option_types).
Array de objetos JSON con la siguiente estructura: [ { "name": "Talla", "value": "small" }, { "name": "Color", "value": "rojo" } ]
sku
string
Referencia / código interno único.
price
number
Precio. Si no se especifica, coge el precio del producto al que pertenece.
cost_price
number
Precio de lista.
gd_size_reference
string
Referencia de tamaño del paquete (para GoDelivery):
track_inventory
boolean
Controlar inventario.
fixed_stock
integer
Cantidad disponible en inventario.
(Deprecated).
Ver stock_items_attributes.
images
array
Imágenes de la variante.Array de objetos JSON con la siguiente estructura:[ { "remote_url": "http://dominio.com/images/1.png" } ]