> For the complete documentation index, see [llms.txt](https://docs.claret.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.claret.app/integrations/data-interface-requirements.md).

# Data Interface Requirements

## Master Data

### Finished Good Items

<table><thead><tr><th>Field</th><th>Data Type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required?</th></tr></thead><tbody><tr><td>Parent Item Name</td><td>String (255 character max)</td><td>Unique identifier for parent item (if this item is not in the top level of the hierarchy)</td><td>123A</td><td>false</td></tr><tr><td>Name</td><td>String (255 character max)</td><td>Unique identifier for the item</td><td>123ABC</td><td>true</td></tr><tr><td>Description</td><td>String (255 character max)</td><td>Text to further explain the item. This is not unique.</td><td>ZAM Apps NV CS</td><td>true</td></tr></tbody></table>

### Work in Process (WIP) Items

<table><thead><tr><th>Field</th><th>Data Type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required?</th></tr></thead><tbody><tr><td>Parent Item Name</td><td>String (255 character max)</td><td>Unique identifier for parent item (if this item is not in the top level of the hierarchy)</td><td>123A</td><td>true</td></tr><tr><td>Parent Item Current Vintage</td><td>String (255 character max)</td><td>Year of the current vintage for the bulk item</td><td>2021</td><td>true</td></tr><tr><td>Name</td><td>String (255 character max)</td><td>Unique identifier for the item</td><td>123ABC</td><td>true</td></tr><tr><td>Description</td><td>String (255 character max)</td><td>Text to further explain the item. This is not unique.</td><td>ZAM Apps NV CS</td><td>true</td></tr><tr><td>Routings.Name</td><td>String (255 character max)</td><td>Name of routing if the routing interface (below) is being used. One of this 'Routing' column and 'Age on Release' column is required</td><td>Cabernet Sauvignon Standard Routing</td><td>false</td></tr><tr><td>Age on Release</td><td>Integer</td><td>Duration, in months, of the aging profile for the bulk wine</td><td>12</td><td>false</td></tr><tr><td>Age Start Date</td><td>Date</td><td>The start date for aging</td><td>2024-03-01</td><td>true</td></tr></tbody></table>

### Crop Items

<table><thead><tr><th>Field</th><th>Data Type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required?</th></tr></thead><tbody><tr><td>Parent Item Name</td><td>String (255 character max)</td><td>Unique identifier for parent item (if this item is not in the top level of the hierarchy)</td><td>CAB</td><td>false</td></tr><tr><td>Name</td><td>String (255 character max)</td><td>Unique identifier for the item</td><td>CAB-A</td><td>true</td></tr><tr><td>Description</td><td>String (255 character max)</td><td>Text to further explain the item. This is not unique.</td><td>A Grade Cabernet Sauvignon</td><td>true</td></tr></tbody></table>

### Customer Groups

<table><thead><tr><th>Field</th><th>Data type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td>Parent Customer Group Name</td><td>String (255 character max)</td><td>Unique identifier for parent customer group (if this item is not in the top level of the customer group hierarchy)</td><td>789X</td><td>false</td></tr><tr><td>Name</td><td>String (255 character max)</td><td>Unique identifier for the customer group</td><td>789XYZ</td><td>true</td></tr><tr><td>Description</td><td>String (255 character max)</td><td>Text to further explain the customer group. This is not unique.</td><td>Jane’s Liquor</td><td>true</td></tr></tbody></table>

### Locations

<table><thead><tr><th>Field</th><th>Data type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td>Name</td><td>String (255 character max)</td><td>Unique identifier for the location</td><td>456WHS</td><td>true</td></tr><tr><td>Description</td><td>String (255 character max)</td><td>Text to further explain the location. This is not unique.</td><td>ZAM Warehouse</td><td>true</td></tr></tbody></table>

### Item @ Locations

<table><thead><tr><th>Field</th><th>Data type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td>Items.Name</td><td>String (255 character max)</td><td>This is the unique name used in the Items table</td><td>123ABC</td><td>true</td></tr><tr><td>Locations.Name</td><td>String (255 character max)</td><td>This is the unique name used in the Locations table</td><td>456WHS</td><td>true</td></tr></tbody></table>

### Item @ Customer Groups

<table><thead><tr><th>Field</th><th>Data type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td>Items.Name</td><td>String (255 character max)</td><td>This is the unique name used in the Items table</td><td>123ABC</td><td>true</td></tr><tr><td>Customer Groups.Name</td><td>String (255 character max)</td><td>This is the unique name used in the Customer Groups table</td><td>789XYZ</td><td>true</td></tr></tbody></table>

### Routings

<table><thead><tr><th width="201.33333333333331">Field</th><th width="201">Data type</th><th width="197">Description</th><th width="157">Example</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td>Routing Name</td><td>String (255 character max)</td><td>Unique identifier for the routing</td><td>Cabernet Sauvignon Standard Routing</td><td>true</td></tr><tr><td>Routing Description</td><td>String (255 character max)</td><td>Text to further explain the routing. This is not unique.</td><td>Standard aging profile for Cabernet Sauvignon</td><td>true</td></tr><tr><td>Time in Barrel</td><td>Integer</td><td>Number, in months, of time spent in barrel for this profile</td><td>6</td><td>false</td></tr><tr><td>Time in Tank</td><td>Integer</td><td>Number, in months, of time spent in tank for this profile</td><td></td><td>false</td></tr><tr><td>Time in Bottle</td><td>Integer</td><td>Number, in months, of time spent in bottle for this profile</td><td>6</td><td>false</td></tr></tbody></table>

### Recipes

<table><thead><tr><th width="203">Field</th><th width="200">Data Type</th><th width="200">Description</th><th width="179">Example</th><th data-type="checkbox">Required?</th></tr></thead><tbody><tr><td>Items.Name as Recipe Header</td><td>String (255 character max)</td><td>Unique identifier, from the Items table, that the recipe is for</td><td>123A</td><td>true</td></tr><tr><td>Locations.Name</td><td>String (255 character max)</td><td>This is the unique name used in the Locations table. Only required if recipes are to be location specific (for example with crops)</td><td>456WHS</td><td>false</td></tr><tr><td>Yield Quantity</td><td>Decimal (8,2)</td><td>The yield amount for the recipe</td><td>1.00</td><td>true</td></tr><tr><td>Yield UOM</td><td>String (255 character max)</td><td>Unit of measure that this yield represents. Note: Claret has a list of UOMs to choose from.</td><td>9LE Case</td><td>true</td></tr><tr><td>Items.Name as Ingredient</td><td>String (255 character max)</td><td>Unique identifier, from the Items table, for the ingredient of the recipe. (If there is more than one ingredient another row of data will be required)</td><td>ZAMNVCS21</td><td>true</td></tr><tr><td>Quantity</td><td>Decimal (12,4)</td><td>Quantity of the ingredient in the recipe</td><td>0.2</td><td>true</td></tr><tr><td>UOM</td><td>String (255 character max)</td><td>Unit of measure that this quantity represents. Note: Claret has a list of UOMs to choose from.</td><td>Ton</td><td>true</td></tr><tr><td>Convert to UOM</td><td>String (255 character max)</td><td>Unit of measure that this quantity should be converted to (if required). Note: Claret has a list of UOMs to choose from.</td><td>Gallon</td><td>false</td></tr><tr><td>Conversion Factor</td><td>Decimal (8,2)</td><td>If 'Convert to UOM' is populated, the conversion factor to make this conversion</td><td>3</td><td>false</td></tr><tr><td>Waste Factor</td><td>Decimal (12,4)</td><td>The % of waste lost during conversion</td><td>1.00%</td><td>false</td></tr></tbody></table>

## Transactional Data

### Sales

This contains sales history, sales forecasts and any other sales projection data.

<table><thead><tr><th>Field</th><th>Data type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td>Items.Name</td><td>String (255 character max)</td><td>This is the unique name used in the Items table</td><td>123ABC</td><td>true</td></tr><tr><td>Customer Groups.Name</td><td>String (255 character max)</td><td>This is the unique name used in the Customer Groups table</td><td>789XYZ</td><td>true</td></tr><tr><td>Sell Date</td><td>Date</td><td>The date when this sale took place(in the case of historical sales) or when the sale will take place(forecasted sales)</td><td>2023-01-01</td><td>true</td></tr><tr><td>Timing Interval</td><td>String (255 character max)</td><td>Timing interval that the Sell Date represents. Note: Claret has a list of Timing Intervals to choose from.</td><td>month</td><td>true</td></tr><tr><td>Quantity</td><td>Decimal (16,4)</td><td>The sales quantity that this record represents</td><td>100</td><td>true</td></tr><tr><td>UOM</td><td>String (255 character max)</td><td>Unit of measure that this quantity represents. Note: Claret has a list of UOMs to choose from.</td><td>9LE Case</td><td>true</td></tr><tr><td>Sale Type</td><td>String (255 character max)</td><td>Identifies what kind of sales data this row represents (e.g. “Budget”,“History”, etc.). Note: Claret has a list of Sale Types that are user-defined.</td><td>Forecast</td><td>true</td></tr></tbody></table>

### Inventory: Bulk wine

<table><thead><tr><th>Field</th><th>Data type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td>Items.Name</td><td>String (255 character max)</td><td>This is the Intended Use or Program of the bulk wine</td><td>ZAMNVCS21</td><td>true</td></tr><tr><td>Locations.Name</td><td>String (255 character max)</td><td>Location where the inventory is located.</td><td>ZAM-WINERY</td><td>true</td></tr><tr><td>Bin</td><td>String (255 character max)</td><td>The identifier for where the bulk wine is located within the location(e.g. Tank 123, Barrel Group ABC, etc.)</td><td>Tank 123</td><td>true</td></tr><tr><td>Location area</td><td>String (255 character max)</td><td>Section of the winery. Usually to help group the bins (tanks). For instance, “Northeast Tank Group”.</td><td>Northeast Tank Group</td><td>true</td></tr><tr><td>Lot</td><td>String (255 character max)</td><td>Unique lot code for the bulk wine</td><td>LOT.123.ABC</td><td>true</td></tr><tr><td>Quantity</td><td>Decimal (16,4)</td><td>The amount of inventory.</td><td>100000</td><td>true</td></tr><tr><td>UOM</td><td>String (255 character max)</td><td>Unit of measure that this quantity represents (e.g. “Gallon”,“Liter”,etc.). Note: Claret has a list of UOMs to choose from.</td><td>Gallon</td><td>true</td></tr><tr><td>Fill Date</td><td>Date</td><td>The date this bin (tank/vessel)was filled with this wine.</td><td>2021-09-15</td><td>true</td></tr></tbody></table>

### Inventory: Finished goods

Note: Same data fields as Bulk Wine inventory

<table data-header-hidden><thead><tr><th>Field</th><th>Data type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required?</th></tr></thead><tbody><tr><td>Items.Name</td><td>String (255character max)</td><td>This is the non-vintage item (e.g.“Bonanza”)</td><td>123ABC</td><td>true</td></tr><tr><td>Locations.Name</td><td>String (255character max)</td><td>Storage location</td><td>456WHS</td><td>true</td></tr><tr><td>Bin</td><td>String (255character max)</td><td>Not necessary</td><td>Generic FG Bin</td><td>false</td></tr><tr><td>Location area</td><td>String (255character max)</td><td>Not necessary</td><td>Generic FG Area</td><td>false</td></tr><tr><td>Lot</td><td>String (255character max)</td><td>Not necessary</td><td>Generic lot</td><td>false</td></tr><tr><td>Quantity</td><td>Decimal (16,4)</td><td>The amount of inventory</td><td>1000</td><td>true</td></tr><tr><td>UOM</td><td>String (255character max)</td><td>Unit of measure that this quantity represents. Note: Claret has a list of UOMs to choose from.</td><td>9LE Case</td><td>true</td></tr><tr><td>Fill Date</td><td>Date</td><td>When was this inventory stored. We can assume this to be the date of when we pulled the inventory.</td><td>2023-01-01</td><td>true</td></tr></tbody></table>

### Supply Plan

<table><thead><tr><th>Field</th><th>Data type</th><th>Description</th><th>Example</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td>Items.Name</td><td>String (255 character max)</td><td>This is the unique name used in the Items table</td><td>123ABC</td><td>true</td></tr><tr><td>Locations.Name</td><td>String (255 character max)</td><td>This is the unique name used in the Locations table (only required if the Supply Type has a category of 'items-locations' within Claret</td><td>ZAM-WINERY</td><td>false</td></tr><tr><td>Date</td><td>Date</td><td>The date when this supply is planned for<br>(or, historically, when the supply occurred)</td><td>2023-01-01</td><td>true</td></tr><tr><td>Timing Interval</td><td>String (255 character max)</td><td>Timing interval that the Date represents. Note: Claret has a list of Timing Intervals to choose from.</td><td>month</td><td>true</td></tr><tr><td>Quantity</td><td>Decimal (16,4)</td><td>The quantity that this supply plan record represents</td><td>100</td><td>true</td></tr><tr><td>UOM</td><td>String (255 character max)</td><td>Unit of measure that this quantity represents. Note: Claret has a list of UOMs to choose from.</td><td>Gallons</td><td>true</td></tr><tr><td>Supply Type</td><td>String (255 character max)</td><td>Identifies what kind of supply data this row represents (e.g. Make Plan, Crop Supply Plan, etc.). Note: Claret has a list of Supply Types that are user-defined.</td><td>Make Plan</td><td>true</td></tr></tbody></table>
