Skip to content

Inventory Management

Suppliers manage finished-product inventory within their tenant database. Blindstrader uses Redis for atomic inventory reservations to prevent overselling across concurrent customer orders.

Inventory Concepts

TermDescription
Stock levelTotal quantity available for a given product/SKU
ReservedQuantity held against in-progress orders (not yet confirmed)
Availablestock_level - reserved — what customers can actually order
CommittedConfirmed orders awaiting production/dispatch

Updating Stock Levels

  1. Go to Inventory → Products.
  2. Find the product you want to update.
  3. Click Adjust Stock.
  4. Enter the new quantity or the adjustment delta (+/-).
  5. Save.

Stock changes are logged with timestamps and the user who made the change.

Redis Inventory Locks

When a Retailer customer places an order, the Supply Chain Service acquires a Redis lock on the inventory:

inventory:supplier:{supplier_id}:product:{product_id}

The lock is held for the duration of the order confirmation flow (typically a few seconds). This prevents two customers from simultaneously reserving the same last unit.

If the order is confirmed, the lock is released and the stock is decremented. If the order fails (e.g. payment declined), the lock is released without decrementing stock.

INFO

You don't need to manage Redis locks manually. They are handled automatically by the platform. This section is for transparency and debugging purposes.

Low Stock Alerts

Configure low stock thresholds under Settings → Inventory Alerts:

  • Set a threshold per product (e.g. alert when stock falls below 10 units).
  • Alerts are sent via the Notification Service (email, Slack, or SMS based on your preferences).

Made-to-Order Products

For made-to-order products with no pre-built stock:

  1. Open the product record.
  2. Toggle Made to Order to ON.
  3. Set a Lead Time in working days.

Made-to-order products are always shown as "available" to customers (the platform will never show them as out of stock), and the lead time is displayed on the Retailer storefront.

Inventory per Retailer

By default, all connected Retailers share the same inventory pool. You can optionally ring-fence inventory for specific Retailers:

  1. Go to Inventory → Retailer Allocation.
  2. Select a Retailer.
  3. Set a Maximum Allocation quantity.

This ensures key Retailers always have guaranteed stock availability.

Bulk Stock Updates

For large catalogs, import stock levels via CSV:

  1. Go to Inventory → Bulk Update → Upload CSV.
  2. Download the CSV template to get the correct column format.
  3. Upload your file. The platform validates and applies the changes.

TIP

Use bulk updates for season changeovers or after physical stock takes.

Blindstrader Platform Documentation