Reading product data
Choose the narrowest method for what you actually need — fetching full product detail when you only need stock levels wastes both time and request quota.Bulk updates
Always use the bulk write methods — not one call per product:updateInventoryProductsStock— up to 1 000 products/variants per call.updateInventoryProductsPrices— up to 1 000 products per call.
Stock reservations
When an order is confirmed against a native Base inventory (as opposed to a read-only feed), Base automatically reduces and reserves the available quantity — even before your ERP has processed the order. This significantly reduces the risk of overselling when your sync cycle is slower than order arrival rate. Current availability and per-product reservation figures are both returned bygetInventoryProductsStock, so you can display accurate “X reserved, Y available” figures without any additional calls. The full order confirmation flow is covered in Order basics.
Product variants
Variants (size, color, and similar attributes) are not a separate entity with their own endpoints. They appear inside thegetInventoryProductsData response for their parent product, and you write or update them using the same bulk methods as regular products — just set variant_id on each entry. There are no separate variant-specific stock or price methods.
Multiple price groups via CSV feed
If you need to sync several price groups from feeds simultaneously, a dedicated CSV feed is more efficient than maintaining a separate XML file per group:- First column: a clear product identifier — Base ID, SKU, or EAN.
- Following columns: individual prices for each price group.
Connecting an external warehouse as a stock source or target is a different scenario covered by the Partnership & Shops API — it is not handled by the methods on this page.