Stock
Detalle del Stock de un producto
GET /v2/products/100/stock
Response:
{
"id": 100,
"slug": "ventilador-de-pared-atma-40-cm-vr8312e",
"name": "VENTILADOR DE PARED ATMA 40 CM VR8312E",
"variants": [
{
"id": 101,
"sku_and_options_text": "7796962803126",
"corridor": null,
"column": null,
"row": null,
"image": "https://d2p3an6os91m4y.cloudfront.net/app/public/spree/products/126/gallery_thumb/7796962803126-1.jpg?1470943920",
"track_inventory": true,
"not_paid": [],
"paid_not_shipped": [],
"paid_and_shipped": [],
"stock_items": [
{
"id": 182,
"count_on_hand": 0,
"backorderable": false,
"job_id": null,
"stock_location": {
"id": 1,
"name": "LOGISTICA_SAN_NICOLAS"
},
"locked_stock": 0,
"in_process_stock": 0,
"in_process_shipped_stock": 0,
"total_on_hand": 0,
"stock_batches": [
{
"id": 84,
"count_on_hand": 0,
"name": "Default",
"expires_at": null,
"corridor": null,
"row": null,
"column": null
},
{
"id": 35429,
"count_on_hand": 0,
"name": "Falladas",
"expires_at": null,
"corridor": null,
"row": null,
"column": null
}
],
"almost_expired_batches": []
}
],
"last_orders": [
{
"number": "R448619684",
"completed_at": "2014-11-10T13:00:13.814-03:00"
},
{
"number": "R707971897",
"completed_at": "2014-11-10T12:48:39.946-03:00"
},
{
"number": "R405433708",
"completed_at": "2014-11-10T11:46:11.224-03:00"
},
{
"number": "R337400825",
"completed_at": "2014-11-10T08:54:50.719-03:00"
}
],
"rma": []
}
]
}
Modificar Stock de un Producto
Movimiento
En caso de querer registrar un movimiento de stock (agregar o quitar unidades al valor actual) usar la siguiente API:
POST /v2/stock_items
Body:
{
"variant_id": 101,
"stock_location_id": 1,
"stock_movement": {
"quantity": 10,
"stock_batch_id": 84
},
"async": false
}
Response: 204 - No Content
El stock_batch id debe ser el id de uno de los lotes de la variante obtenidos a partir de GET /v2/products/100/stock.
Después de está actualización, el count_on_hand del batch "Default" pasaría de 0 a 10.
Forzar stock
Si se desea pisar el valor actual por uno nuevo, la API a usar es la siguiente:
PUT /stock_location/1/stock_items/182
Body:
{
"stock_batches": [{
"id": 84,
"count_on_hand": 50,
"force": true
}]
}
Los IDs del stock location, stock item y stock batch se obtienen mediante la API "Detalle del Stock de un producto".
Forzar stock de una variante
Si se desea pisar el valor actual por uno nuevo, sin conocer el valor de id del batch, sólo es necesario pasarle el nombre del mismo, la API a usar es la siguiente:
PUT /variant/sku/:sku/stock
Body:
{
"stock_batch": {
"name": "Default",
"count_on_hand": 50,
"force": true
}
}
Esta api actualizará es válida para aquellos productos que manejen stock en un sólo stock_location.
Si en el parámetro force se envía el valor false, la api sumará (o restará dependiendo del signo del parámetro count_on_hand) las unidades a las actuales.
Stock Locations
Listado de Stock Locations disponibles
GET /v2/stock_locations/
Response:
{
"stock_locations": [
{
"id": 1,
"name": "LOGISTICA_SAN_NICOLAS"
},
{
"id": 8,
"name": "COLCHONES"
},
{
"id": 38,
"name": "PACHECO"
},
{
"id": 39,
"name": "PILAR"
},
{
"id": 7,
"name": "VINOS"
}
]
}