NAV Field Inventory — Product & Variant¶
ZWE-481
Field inventory for the NAV proof of concept, captured live from the NAV test sandbox (GetProduct, LS Retail service). Feeds the Layer 2 consolidation/mapping work (ZWE-482). Source data for this page: Core Webshop Endpoints.
Three real articles were captured to cover different statuses (ACTIEF, UITLOPEND, VERVALLEN — Active / Phasing out / Discontinued):
| ItemNo | Name | Brand | StatusCode |
|---|---|---|---|
003026453 |
W's venture jacket XL MF2 Tnf Black | The North Face | VERVALLEN |
003027608 |
Drop jacket III | Vaude | ACTIEF |
003027553 |
kian 4-s jacket | — | VERVALLEN (item) + UITLOPEND (14 of its variants) |
Status can be per-variant, not just per-item
003027553 has one item-level LSItemStatusLink entry (VERVALLEN, no VariantCode) plus 14 variant-level entries (UITLOPEND, each with its own VariantCode). The item's overall status and an individual variant's status can differ — don't assume one StatusCode applies to the whole item.
GEBLOKKEERD truncation (not directly observed, per ticket brief)
Per the ZWE-481 brief: the GEBLOKKEERD (blocked) status value is stored as the 10-character truncated string GEBLOKKEER in NAV. Not encountered in this sample (StatusCode values seen were ACTIEF/UITLOPEND/VERVALLEN only), but any code matching on the full GEBLOKKEERD string will silently fail to match. Flag this if a blocked item turns up.
Item-level fields (LSItem)¶
| Field | Type | Always present? | Nullable? | Example (003027608) |
|---|---|---|---|---|
ItemNo |
string | yes | no | 003027608 |
Name / ShortDescription |
string | yes | no | Drop jacket III |
FullDescription |
string | no | yes — empty in all 3 samples | (empty) |
PriceIncludingVAT |
decimal | yes | no | 110.00 |
Price |
decimal | yes | no | 90.909 |
PriceIncludesVAT |
boolean | yes | no | false |
Cost / LastCost |
decimal | yes | no | 48.868 / 57.50 |
StockQuantity |
decimal | yes | no | 21 (also seen: 0) |
StockThreshold |
decimal | yes | no | 0.00 in all 3 samples |
Blocked |
boolean | yes | no | false in all 3 samples — see warning above, real blocked value not yet observed |
NoStockPosting |
boolean | yes | no | false in all 3 samples |
ItemCategoryCode |
string | yes | no | KLEDING |
ProductGroupCode |
string | yes | no | JAS-HARD |
Brand / BrandDescription |
string | yes | no | VAUDE |
VendorItemNo |
string | yes | no | 04979 |
SeasonCode |
string | no | yes — empty on 003026453 |
23Z |
Published |
boolean | yes | no | false in all 3 samples (test data likely unpublished) |
Variant-level fields (LSItemVariant)¶
| Field | Type | Always present? | Nullable? | Example |
|---|---|---|---|---|
Code |
string | yes | no | 000 |
Description |
string | yes | no | L/125 CANARY |
StockQuantity2 |
decimal | yes | no | 0 |
StockThreshold |
decimal | yes | no | 0.00 |
Blocked |
string, not boolean | yes | no | false — note the type: this is a string field on the variant, unlike the boolean Blocked at item level |
ColourCodeVendor |
string | no | yes — empty on 003027553 |
VAU-125 |
Status link (LSItemStatusLink)¶
| Field | Type | Always present? | Nullable? | Notes |
|---|---|---|---|---|
StatusCode |
string | yes | no | Values seen: ACTIEF, UITLOPEND, VERVALLEN. GEBLOKKEER (truncated GEBLOKKEERD) documented per brief, not observed |
VariantCode |
string | no | yes — empty for item-level entries | Present only on variant-level status overrides (see 003027553 above) |