Inventory Quickstart
Getting started with the Stateset Inventory API
Stateset One provides a REST and GraphQL API for Inventory Management. The Inventory module in Stateset includes various objects that facilitate inventory management processes. These objects typically encompass:
- Inventory Items
- Packing Lists
- Packing List Items
- Shipments
- Orders
Inventory Management Overview
The Inventory module in Stateset One is designed to support the following inventory management processes:
- Receiving Inventory
- Picking Inventory
- Shipping Inventory
- Adjusting Inventory
Inventory Management Challenges
Inventory management is a complex process that requires a high degree of coordination between various stakeholders. The following are some of the challenges that companies face when managing inventory:
- Inventory is often stored in multiple warehouses and locations
- Inventory is often shipped to multiple customers
- Inventory is often shipped from multiple vendors
Stateset’s Inventory Management Solution
Stateset One provides a comprehensive solution for managing inventory. The following are some of the key features of Stateset’s invenotry management solution:
- Inventory Items can be created and managed in Stateset One
- Inventory Items can be associated with Packing Lists
- Packing Lists can be associated with Packing List Items
- Packing List Items can be associated with Purchase Orders
- Real-time inventory counts are available for each Inventory Item
Quickstart Guide
-
Setup your company’s Stateset One instance by signing up at stateset.io/signup
-
Create a new API Key in the Stateset Cloud Console cloud.stateset.com/api-keys
-
Install the stateset-node SDK in your project:
npm install stateset-node
- Create a new Inventory Item
import { stateset } from 'stateset-node'('API_KEY');
const created = await stateset.inventoryitem.create(
'ii_ODkRWQtx9NVsRX'
);
- Create a Packing List and Packing List Item
import { stateset } from 'stateset-node'('API_KEY');
const created = await stateset.packinglists.create(
'pl_ODkRWQtx9NVsRX'
);
const created = await stateset.packinglistitems.create(
'pl_ODkRWQtx9NVsRX',
'item_ODkRWQtx9NVsRX'
);
There are three inventory counts by UPC or SKU:
- Incoming - Packing List Item Quantity by UPC / SKU
- Available - Available Inventory Quantity by UPC / SKU
- Warehouse Counts - Warehouse Inventory Quantity by UPC / SKU
- Update Inventory Counts when Incoming Shipment Arrives at Warehouse
const dataGetInventoryCount = await stateset.packinglistitems.get({
packing_list_item_id
});
const item = dataGetInventoryCount.packing_list_item_by_pk.item;
const { incoming, available, warehouse } = item;
const new_incoming_quantity = incoming - packing_list_item_quantity;
const new_available_quantity = available + packing_list_item_quantity;
const new_warehouse_quantity = warehouse + packing_list_item_quantity;
const inventory_item_data = {
incoming: new_incoming_quantity,
available: new_available_quantity,
warehouse: new_warehouse_quantity
};
const updatedInventory = await stateset.inventoryitems.update({
upc,
inventory_item: inventory_item_data
});
const packing_list_item_data = {
arrived: true
};
const updatedPackingListItem = await stateset.packinglistitems.update({
packing_list_item_id,
packing_list_item: packing_list_item_data
});
Inventory Support
If you have any questions or need help, please contact us at: support@stateset.io