Skip to Content
Referencia de la APIProductosEditar stock del producto

Editar stock del producto

PUT /1/products/:id/stock/:id_stock

Método utilizado para editar la cantidad de stock de una variante para un determinado producto de una tienda en particular.

Headers

{ "Authorization": "Bearer {access_token}", "X-Shop-Id": "12345" }
ParámetroTipoRequeridoValores aceptadosDescripción
AuthorizationstringSiBearer + access_tokenToken obtenido mediante client_id y client_secret.
X-Shop-IdstringSiString numéricoIdentificador único de la tienda a la cual se desea obtener sus ventas.

Params

{ "id": "product-1234", "id_stock": "stock-5678" }
ParámetroTipoRequeridoValores aceptadosDescripción
idstringSiproduct-{id}Especifica qué producto editar a través de su identificador único.
id_stockstringSistock-{id}Especifica qué variante de stock editar a través de su identificador único.

Body

{ "quantity": 10 }
ParámetroTipoRequeridoValores aceptadosDescripción
quantityintSiquantity=null (stock infinito)
quantity>=0 (stock finito)
Especifica la nueva cantidad de stock.

Response exitosa: 201 Ok

{ "id": "stock-214106", "sku": "a124t512190", "quantity": 10, "unlimited": false, "price": 150, "offer": 2, "offer_price": 100, "offer_start_date": null, "offer_end_date": "2023-07-12T09:32:00Z", "wholesale_price": 0, "wholesale_min_quantity": 1, "show_price": true, "weight": 1, "width": 10, "height": 10, "depth": 10, "image_id": "image-1235", "digital_link": null, "digital_term": null, "digital_observation": null, "attribute_values": [ { "id": "attribute-49681", "name": "Color", "value": "Negro" }, //... ] }

Campos de la respuesta

AtributoTipoDescripción
idstringCorresponde al identificador único de stock.
skustringCorresponde al identificador de stock provisto por el comercio.
quantityintCorresponde a la cantidad de stock.
Si unlimited=true, entonces quantity=0
Si unlimited=false, entonces quantity>=0
unlimitedbooleanIndica si posee o no stock infinito.
pricefloatIndica el precio minorista del producto.
price>0 si show_price=true y type!=1
price=null si show_price=false o type=1
offerintIndica el tipo de oferta minorista.
0: sin oferta
1: con oferta por tiempo ilimitado
2: oferta con fecha de fin
3: oferta con fecha de inicio y fin
offer_pricefloatIndica el precio de oferta. Solo contendrá valor si offer>0. En caso contrario será null.
offer_start_datestringIndica la fecha en ISO 8601 desde que el offer_price es válido. Solo si existe si offer=3.
offer_end_datestringIndica la fecha en ISO 8601 hasta que el offer_price es válido. Solo si existe si offer=3 o offer=2.
wholesale_pricefloatIndica el precio mayorista del producto
wholesale_price>0 si type>=1
wholesale_price=null si type=0
wholesale_min_quantityintIndica la cantidad mínima mayorista que el cliente debe comprar de dicha variante de stock.
Aclaración: la diferencia con wholesale_product_min_quantity es que el mismo es un límite a nivel producto, es decir que si su valor es 5, entonces si se compran diferentes variantes de stock del mismo producto hasta llegar a dicha suma 5.
show_pricebooleanIndica si el producto es un producto con o sin price. Usado para mostrar productos como formato catálogo. El producto puede ser de venta mayorista con type=2 (no los de type=1), tener wholesale_price y a su vez no tener price. De manera que las personas no mayoristas tendrán un botón de consultar y los clientes mayoristas podrán agregarlo al carrito.
Valores:
false: el producto no tiene price y aparece un botón de consultar en lugar de agregar al carrito
true: el producto tiene price
weightfloatIndica el peso del producto empaquetado en kg
widthintIndica el ancho del producto empaquetado en cm
heightintIndica el alto del producto empaquetado en cm
depthintIndica la profundidad del producto empaquetado en cm
image_idstringCorresponde al identificador único de la imagen asociada al stock del producto. Debe ser un valor del array images.
digital_linkstringEs el link de descarga del producto digital que se envía cuando el producto es un producto digital con descarga automática y el usuario abona.
Valores:
Si digital=1 Regex: /^(https:\/\/|http:\/\/)[0-9a-zA-Z\.\:\/\#\-\_\?\=\&\$\%\@\~\!]{2,200}$/
Sino: null
digital_termstringEs el plazo de entrega del producto digital que se envía cuando el producto es un producto digital con envío manual.
Si digital=2 Regex: /^[a-zá-úÁ-Úä-üÄ-ÜA-Z0-9\s\!\.\-\,\?\"\'\:\¡\¿\%\(\)\[\]\$\+\~\#\_\&\/]{2,45}$/
Sino: ” o NULL
digital_observationstringEs una observación disponible para el usuario cuando el producto es un producto digital.
Valores:
Si digital>=1 Regex: /^[\s\S]{0,200}$/
Sino: null
attribute_values[][object]Contiene el valor de cada atributo para dicho stock.
Si no hay contenido, se debe mostrar []
attribute_values[].idstringCorresponde al identificador único de la variante de stock
attribute_values[].namestringCorresponde al nombre del atributo de la variante de stock
attribute_values[].valuestringCorresponde al valor del atributo para dicho stock.

Responses de error

En caso de que la respuesta http no sea 201, entonces se debe considerar el error.

AtributoTipoDescripción
statusintHttp code de respuesta.
codestringCódigo de error, indica la naturaleza del mismo.
msgstringMensaje de error.

Ejemplo response 401 Unauthorized:

{ "status": 401, "code": "error", "msg": "Unauthorized" }

Ejemplo response 400 Bad Request genérico:

{ "status": 400, "code": "request_error", "msg": "Send valid data" }

Ejemplo response 400 Bad Request si algún parámetro de entrada requerido no es enviado:

{ "status": 400, "code": "param_required", "msg": "invalid <param_name>. The value is required" }

Ejemplo response 400 Bad Request si algún parámetro de entrada es inválido:

{ "status": 400, "code": "param_invalid", "msg": "Invalid <param_name>. The value is invalid" }

Ejemplo response 500 Internal Server Error:

{ "status": 500, "code": "server_error", "msg": "Something went wrong" }