Starter contract

retail_product

14 rules · plain YAML · starts in observation mode

OpenDQV Cloud starter template (v0.1) — your tenant inherits this baseline. First customer edit creates v1.0 in your audit trail; pin by yaml_hash for replay. Retail product catalogue record validation for merchandising, replenishment, and e-commerce pipelines. Enforces GS1 GTIN barcode format (8, 12, 13, or 14-digit numeric identifiers used across UK retail EDI), product lifecycle status classification, department taxonomy for planogram and space management systems, ISO 4217 currency codes, and product name length constraints for POS system compatibility. Prevents uncategorised products, invalid barcodes, and products without lifecycle status from entering EPoS, WMS, and retailer catalogue exchange pipelines.

These are starting points you own. Every rule below ships in the trial, starts in observation mode, and is yours to read, edit, or delete from day one. Rules that reference a lookup list (lookup_file) validate against reference data you control in your tenant.
Rules as at 29 August 2026 — starting points you own, not a maintained regulatory feed. We correct errors in these samples; tracking regulatory change in your active contracts is yours.
RuleFieldSeverityWhat it enforces (the message your team sees)
sku_requiredskuerrorsku is required
product_name_requiredproduct_nameerrorproduct_name is required
product_name_max_lengthproduct_namewarningproduct_name exceeds 100 characters — will be truncated in POS systems and retailer catalogue APIs
category_requiredcategoryerrorcategory is required
category_valuescategorywarningcategory should be a standard retail department — use one of the defined GS1 UK taxonomy values for space planning and category reporting
price_minpriceerrorprice must be >= 0
currency_formatcurrencyerrorcurrency must be a valid ISO 4217 three-letter code (e.g. GBP, EUR, USD)
stock_quantity_minstock_quantityerrorstock_quantity must be >= 0
barcode_requiredbarcodeerrorbarcode is required
barcode_gtin_formatbarcodeerrorbarcode must be a valid GS1 GTIN: 8, 12, 13, or 14 numeric digits (EAN-8, UPC-A, EAN-13, or ITF-14). e.g. 9521234567899 (GS1 demonstration prefix 952)
barcode_gtin_validbarcodeerrorbarcode has an invalid GS1 check digit (e.g. valid: 9521234567899, GS1 demonstration prefix 952) — full check-digit verification (was: shape-only format check)
product_status_valuesproduct_statuswarningproduct_status must be one of: active, out_of_stock, discontinued, end_of_life, recalled, pending_launch, delisted
supplier_id_requiredsupplier_iderrorsupplier_id is required
last_updated_formatlast_updatederrorlast_updated must be a valid date (YYYY-MM-DD)

Run your own data against this contract in the free trial — drop a CSV in the dashboard, no code, no credit card. Start free trial →