Skip to main content

Overview

The Inventory Delta Export Feed is a Kibo-managed automated export that periodically queries your inventory for recently changed records and delivers a compressed CSV file to a destination of your choice. It is designed for scenarios where you need to keep a downstream system (e.g., a warehouse management system, an external marketplace, or a third-party platform) in sync with your Kibo inventory without pulling a full inventory snapshot each time.
Looking to push inventory changes into Kibo on a recurring basis instead? The Inventory Import File supports incremental update files (sometimes called a delta import feed) that apply quantity adjustments throughout the day.

How to Get Started

To set up an Inventory Delta Export Feed for your tenant, open a support ticket at help.kibocommerce.com with the following information:

Required Information

ItemDetails
Tenant IDYour Kibo tenant ID
Delivery destinationWhere you want the files sent (see options below)
Delivery credentialsAccess credentials for your chosen destination

Delivery Destination Options

Choose one of the following delivery methods and provide the corresponding details:

Option 1 — Amazon S3

  • S3 bucket name (and optional key prefix/folder path)
  • AWS region
  • IAM role or policy granting Kibo write access to the bucket

Option 2 — Google Cloud Storage (GCS)

  • GCS bucket name (and optional folder path)
  • A service account or Workload Identity Federation configuration with write access to the bucket

Option 3 — SFTP

  • SFTP hostname and port
  • Username and password (or SSH key)
  • Remote directory path where files should be deposited

How It Works

Once configured, the feed runs automatically on a schedule. On each run, Kibo:
  1. Identifies all inventory records that were updated since the last successful run
  2. Exports those records to a CSV file
  3. Compresses the CSV into a ZIP file
  4. Uploads the ZIP to your configured destination
If no inventory records changed during a given interval, no file is uploaded for that interval.

Timing Window

  • By default, each run captures changes from the last 30 minutes.
  • The timing window is tracked automatically — you do not need to manage state on your end.
  • If a run is delayed or missed, the system will not exceed a 4-hour catch-up window to prevent unexpectedly large exports.

Output File Format

Each delivery is a ZIP archive containing a single file named inventory.csv.

ZIP File Naming

{tenantId}_{YYYYMMDDHHmmss}.zip
Example: 100041_20240815143000.zip

CSV Structure

The CSV includes a header row. The base columns are:
ColumnDescription
location_codeThe location identifier where inventory is held
upcThe product’s UPC/SKU
onHandOn-hand quantity, net of safety stock
rawOnHandRaw on-hand quantity (before safety stock deduction)
availableAvailable quantity, net of safety stock and pending allocations
conditionProduct condition (e.g., new, used)
lot_codeLot code, if applicable
dateInventory date
serial_numberSerial number, if applicable
attributesLegacy attribute value, if configured

Optional Columns

The following columns can be enabled on request:
ColumnDescriptionHow to Enable
inventory_locator_namePlanogram or bin locator name for the productRequest in your setup ticket
Custom extensible attributesOne column per custom inventory attribute you have defined (e.g., Color, Size)Request in your setup ticket; multi-value attributes are pipe-delimited (e.g., Red|Blue)

Example CSV

location_code,upc,onHand,rawOnHand,available,condition,lot_code,date,serial_number,attributes
WAREHOUSE-A,012345678901,48,50,45,new,,,,
WAREHOUSE-B,098765432100,0,2,-1,new,,,,

Frequently Asked Questions

What if no inventory changed during an interval? No file is uploaded for that interval. Your destination will simply have no new file for that run. What time zone are timestamps in? All timestamps are in UTC. Can I receive files more or less frequently than every 30 minutes? This setting is fixed at 30 minutes and does not support customization. Can I receive files to more than one destination? Yes — include all destination details in your support ticket. What does available represent exactly? available = raw on-hand quantity - safety stock - pending allocations. onHand = raw on-hand - safety stock only. Use rawOnHand if you need the unmodified quantity. What if an extensible attribute has multiple values? Multi-value attributes are serialized as a pipe-delimited string in a single column. For example, a Color attribute with values Red and Blue would appear as Red|Blue.