---
title: "Product Maintenance"
canonical: "https://kb.myframeworks.com.au/space/FRAM/28378114/Product%20Maintenance"
format: markdown
---
# Overview

The **Product Maintenance **screen allows you to edit and maintain all the required information for your products.

# Accessing Product Maintenance

There are a number of ways for you to access the **Product Maintenance** screen. These are:

1. Click the **Frameworks Menu** and enter **Product Maintenance** into the **Search Box.**
2. Click the **Frameworks Menu **and navigate to **Inventory **>** Maintenance **>** Product Maintenance** from the navigation tree.
3. From within the **Product Dashboard**, for a selected product, click **Maintain**.

# Finding a Product

There are 2 options available to narrow your search: the **Basic** and **Detailed Search**.

### Basic Search

To refine your search, complete either or both of the following:

- Select a **Branch** from the dropdown menu. The dropdown defaults to **All Branches** and includes branches from all companies your user account is permitted to access. After selecting an individual branch, select **All Branches** to return to the full list.
- In the **Search **field, enter the product ID, product code or product name (or partial product ID or name).

### Detailed Search

Clicking on the **Detailed Search** heading will open up additional search options to help further refine your search. These options are:

- **Supplier**: Enter or search for a specific supplier for the products you are looking for.
- **Product From **and** To**: Enter a product ID range for the products you are looking for.
- **Description From **and** To**: Enter a Product description range for the products you are looking for.
- **Product Group **and** Sub Group**: Enter or search a product group or sub groups for the products you are looking for.
- **Description Begins**: Enter the beginning of the description to find all products with this text at the start of the products you are looking for.

When ready, click **Find** to return a list of related products.

# Navigating Product Maintenance

The **Product Maintenance **screen has four main sections allowing you to modify a number of details relating to your existing products.

1. The **Product Options Menu**
2. The **Product Overview and Navigation**
3. The **Product Customisation Fields**
4. The **Command Buttons**

![image-20260427-141551.png](media://bb03743b-8c34-4f3a-85df-2c472e373c69)

## 1. The Product Options Menu

The product options menu contains a full list of categories available for customisation. Click each of the available options to populate the main part of the screen with the related information and make your changes accordingly. 

## 2. The Product Overview and Navigation

Displayed here are the basic details of your product including the **Product Id**, **Barcode **and **Description** and from here you can:

- Click **Previous Product** or **Next Product** to navigate to adjacent product entries. This is dependent on sequential product IDs.
- Click **Queue Label** to add labels for a product. The label type and quantity are based on the **Product Branch Stock** settings. Select any available batch, including those from multiple branches, by enabling the relevant checkboxes.
  - If a matching label batch (same type and branch) exists, it will appear in the **Queue Labels** window.
  - If no match is found, the system creates a new batch called **From Inventory Maintenance**, which appears as a new checkbox. This new batch uses the label type and quantity from the **Product Branch Stock** settings.

![image-20250704-011336.png](media://84b8cf31-1b24-4023-af9e-cfebf052c419)

> ℹ️ **Note: **Only the latest label batches appear in the **Queue Labels **window.

## 3. The Product Customisation Fields

This section is populated based on the selected menu item and allows you to add and maintain information related to the selected product.

### Key Details

Listed here are the basic details relating to your product, including:

- The product ID, barcode and description
- The product type and group
- The primary unit of measure
- The sell price and cost along with the pricing rules.

Using the **Supersede **button you can create a supersedence relationship between this product, that has become old or obsolete, and a new or updated product entry.

> ✅ Refer to [Product Superseding](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28390462) for more information on the superseding process.

![image-20260427-140013.png](media://3e375174-883b-48c2-b78f-5414e68103d9)

<details>
<summary>For more information about the Key Details options, click here.</summary>

**Product ID**

The product’s ID number.

---

**Bar Code**

The product’s bar code.

---

**Product Type**

> Macro (excerpt-include)



---

**Product Description**

The product’s description.

---

**Is Assembly Product**

The **Is Assembly Product** indicator identifies the product as a Special Assembly Product — a unique product generated by Frameworks when a sales order containing a Template Kit configured as an Assembly Kit is marked complete. The indicator is read-only and set by the system at the time of conversion. It cannot be enabled or disabled manually.

Special Assembly Products are uniquely identified by combining the **InvKitPrefixS** prefix and **InvKitNextNo** sequence values set in System Settings. The product carries traceability values linking it back to the originating sales order line and the template kit it was generated from.

**Format:** Indicator (read-only) | **Editable:** No (system-managed) | **Visibility:** Only set for Special Assembly Products generated through the Custom Manufacturing workflow.

> ✅ Refer to [Custom Manufacturing - Implementation Guide](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/737837057) for the complete workflow and configuration sequence.

---

**Customer Description**

The **Customer Description** field stores an alternative product description intended for customer-facing contexts. This description can differ from the default product description to provide clearer or more relevant information for customers. The field accepts a maximum of 300 characters.

The **Customer Description** is not used automatically. A set of system flags controls whether the **Customer Description** replaces the default product description on specific documents and outputs. When none of these flags are enabled, the default product description is used on all documents, and the **Customer Description** field has no effect.

**Format:** Text (alphanumeric, max 300 characters) | **Required:** No | **Related flags:** Order Confirmations (**ProdCustDescCnf**), Delivery Dockets (**ProdCustDescDel**), Invoices (**ProdCustDescInv**), Labels (**ProdCustDescLbl**), Picking Slips (**ProdCustDescPsl**), Purchase Orders (**ProdCustDescPur**), Quotes (**ProdCustDescQte**) and the Trade Portal (**ProdCustDescTP**).

---

**Product Group**

Enter the product group code or click the search icon to open the **Product Group Finder**.

> ⚠️ Manufactured (type 5) and Miscellaneous (type 6) products can only be associated with product groups where “**Is Non Balanced Stock Group**”** **is enabled.

> ✅ Refer to[https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28405034/Product+Group+Maintenance#1.-Key-Details](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28405034/Product+Group+Maintenance#1.-Key-Details) for more information about the Is Non Balanced Stock Group option.

---

**Product Sub Group**

Enter the product sub group code, if applicable, or click the search icon to open the **Product Sub Group Finder**.

---

**Unit of Measure**

Enter the UOM code or click the search icon to open the **Unit of Measure Code Finder**.

---

**Length Tally**

Enable to assign the product as a tally product. When enabled, the **Tally Maintenance** window will be opened whenever the product is added to a sales order, purchase order, etc.

If disabled, the product is considered a non-tally product. 

---

**Length Validation**

Enable to enforce tally validation when tallies are entered against this product within POS, SOP, Purchasing, etc. If the entered tally doesn’t match a defined value, the user will not be able to complete the transaction until a valid length is entered.

---

**Maintain Offcut Scratchpad**

Enable for this product to track and maintain offcuts. The offcuts scratchpad lengths can be viewed within **Product Offcuts Maintenance** and the **Branch Stock **information in the **Product Dashboard **entry for this product.

> ⚠️ Only non-tally products can be enabled to maintain offcuts.

---

**Show Inches?**

The **Show Inches?** checkbox controls whether the inches entry field is displayed in the tally maintenance popup when this product is added to a transaction. Enable the **Show Inches?** checkbox for products with an imperial unit of measure (example: BF, LF, SF) where users need to enter quantities in both feet and inches.

When the **Show Inches?** checkbox is disabled (the default), users enter tally quantities in feet only. This is the recommended setting for the majority of sheet metal and imperial UOM products. When the **Show Inches?** checkbox is enabled, an inches entry field appears alongside the feet field in the tally maintenance popup.

![image-20260427-135834.png](media://97c0c37e-0315-4db0-9f45-8b24df9cd55f)

> ℹ️ **Note:** When the **Show Inches?** checkbox is disabled, the system may still display an inches value of 0 in tally transaction records. This is expected system behaviour and does not indicate an error.

**Format:** Checkbox | **Required:** No | **Default:** Unchecked | **Visibility:** Only displayed when the product has an imperial unit of measure (e.g. BF, LF, SF). Not visible for metric or decimal UOM products.

---

**GST Code**

Select the preferred GST option from the dropdown menu.

---

**Settlement Discount**

Select a settlement discount from the dropdown menu if applicable. If not, select **No Discount**.

---

**Min GP%**

The minimum gross profit percentage to be applied to the sell price. Users will be prevented from selling this product if the GP% falls below this value.

---

**Round Decimals To**

 The number of decimal places the sales price of this product is rounded to; either 2, 3 or 4. In a GST-Inc environment, the unit sell is first rounded before the GST is calculated and added to give the GST inclusive price.

---

**Price Rounding**

The **Price Rounding** drop-down menu allows you to assign a price rounding method to the product. Price rounding methods define rules that control how the product's sell price is rounded to specific values (for example, rounding cents to .49 or .99). When a method is assigned and the product is saved, the sell price recalculates immediately using the method's rules. The final rounded value is the GST-inclusive sell price.

Select a method from the drop-down menu or leave the field blank if no rounding is required. The **Price Rounding** field is only visible when at least one price rounding method has been defined in **Price Rounding Methods Maintenance**.

> ✅ Refer to [Understanding Price Rounding Methods](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/585826307) for an overview of how price rounding methods work. 
> ✅ 
> ✅ Refer to [Price Rounding Methods - Implementation Guide](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/626982913) for setup instructions.

---

**Retain GP% (Up)**

If enabled, if the cost price rises for this product, a new higher sell price will be calculated using the same GP%.

---

**Retain GP% (Down)**

If enabled, if the cost price decreases for this product, a new lower sell price will be calculated using the same GP%.

---

**Costing Method**

Select the appropriate costing method from the drop-down menu. The **Costing Method** determines how the product's base cost is derived. When a costing method is selected, the cost is calculated based on the selected method and any configured variance percentage. Available costing methods include Last Purchase Order, Last Receipt, Market Cost and Preferred Supplier and those defined under Product Costing Methods (System Administration > System Setup > Inventory > Product Costing Methods).

This field is only visible when the `InvUseProdCostingMth` system flag is enabled. When the flag is disabled, product costs are managed using the standard or average cost fields directly.

> ℹ️ The GL postings will be updated when the costing method changes in a non-average costing environment. In an average costing environment, no GL postings will be made.

---

**Costing Methods Panel**

The **Costing Methods** panel in the top right of the **Key Details** section displays a summary of the product's cost under each available costing method (Last Purchase Order, Last Receipt, Market Cost and Preferred Supplier). The panel is read-only and provides a quick comparison of costs across methods without needing to change the selected **Costing Method**.

> ⚠️ This field is only visible when the `InvUseProdCostingMth` system flag is enabled.

---

**Market Cost**

The **Market Cost** field displays the product's market price, expressed in the product's stocking UOM. This value is entered manually and is used as the base cost when the product's **Costing Method** is set to **Market Cost**.

To enter a market cost that was quoted by a supplier in a different UOM, use the **Calculator** button beside the **Market Cost** field to open the **Market Cost Calculator** window. The calculator converts the supplier-quoted cost to the stocking UOM automatically. 

> ✅ Refer to [Use the Market Cost Calculator](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/716472333) for step-by-step instructions.

If the supplier's UOM matches the product's stocking UOM, you can enter the cost directly into the **Market Cost** field without using the calculator.

**Format:** Currency | **Required:** No | **Visibility:** Only visible when the `InvUseProdCostingMth` system flag is enabled.

---

**Market Cost Calculator**

The **Market Cost Calculator** window opens when you click the **Calculator** button beside the **Market Cost** field. The calculator converts a market cost entered in any valid UOM for the product into the product's stocking UOM.

The calculator is only available for existing saved products. If the **Calculator** button is clicked while creating a new product, the window opens but all fields are disabled and **Apply** is unavailable. Configure the product's UOMs after saving the new product, then use the calculator.

**Market Cost Calculator Fields:**

**Market Cost** Enter the cost as quoted by the supplier, in the UOM selected below.

---

**UOM**

Select the UOM in which the market cost is expressed from the **UOM** drop-down menu. Defaults to the product's stocking UOM. Only UOMs defined as valid for this product (as a stocking, purchasing, or alternate UOM) are available for selection. If the required UOM is not listed, configure it in the **Units of Measure** section before using the calculator.

---

**Stocking UOM**

Displays the product's stocking/selling UOM for reference. Read-only.

---

**Converted Cost**

Displays the market cost converted to the stocking UOM using the configured conversion factor. Updates automatically when the UOM selection changes. The converted cost is not rounded.

---

**Apply / Close** 

Click **Apply** to populate the **Market Cost** field on the **Key Details** screen with the converted cost. Click **Close** to discard the calculation — the **Market Cost** field retains its existing value. The **Apply** button is disabled if the converted cost is $0.00 or if there are validation errors.

---

**Base Cost**

The base cost of the product before any components of cost are added. The **Base Cost** is derived dynamically from the **Landed Cost** minus the **Total Cost Components** value. The **Base Cost** field is read-only.

> ⚠️ This field is only visible when the `InvUseProdCostingMth` system flag is enabled.

---

**Total Cost Components**

The total value of all currently effective cost components applied to the product at the product master level. The **Total Cost Components** value is calculated and stored by the **Apply Product Components of Cost** scheduled task. The **Total Cost Components** field is read-only.

> ⚠️ This field is only visible when the `InvUseProdCostingMth` system flag is enabled.

---

**Components of Cost**

The **Components of Cost** button opens the **Components of Cost** breakdown window, which displays each applicable cost component with its value, type and calculated amount for the product. Refer to Understanding Components of Cost for information about the breakdown viewer.

> ⚠️ This field is only visible when the `InvUseProdCostingMth` system flag is enabled.

---

**Landed Cost**

The total cost of the product inclusive of all applicable cost components and wastage. When the `InvUseProdCostingMth` system flag is enabled, the **Landed Cost** equals the **Base Cost** plus the **Total Cost Components**. When the flag is disabled, the **Landed Cost** represents the supplier cost in a standard cost environment.

> ⚠️ Only editable if **InvCstWst** is enabled.

---

**Wastage %**

Enter the wastage percentage.

> ⚠️ Only editable if **InvCstWst** is enabled.

---

**Standard Cost**

The standard cost of the product.

> ℹ️ If the product has a zero cost and is linked to a product group that has an expected GP%, the system will calculate the cost price to achieve the expected GP%.

---

**Gross Profit %**

The gross profit percentage.

---

**Unit Sell**

The unit sell price.

---

**Unit Sell GST Inc**

The unit sell price, including GST.

---

**Product Information**

Any additional product information is displayed here.

---
</details>

### General Information

This tab contains additional product information and product-related settings.

![image-20250521-070902.png](media://99835f34-09b5-4fd2-9f82-9a6ae83d329f)


<details>
<summary>For more information about the General Information options, click here.</summary>

**Alternate Item**

The product number of an alternate product if this product is unavailable.

---

**Buying Group Item**

The national buying group code for the product when the product is being purchased under a buying group.

---

**Core Product**

Enable if this product is a core, major selling product.

---

**Core Level**

The core level for reporting with a branch’s core levels.

Once a core level is entered against a product, it will automatically be treated as a core product but only at branch level. This product's core level will be checked against the core level entered against the branch you are producing the report for to determine whether or not it will appear on the report.

> ℹ️ The core levels are defined in **Core Product Levels** within the **Inventory **section of **System Setup**.

---

**Kit Header**

Enable if this product is the header for a kit product. A kit header product is the top level of a kit and used as a single product when adding the kit to an order.

> ⚠️ A parent product cannot be a kit header.

Kit Header products can be configured as **Assembly Kits** in [Kit Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28409556), where they act as the front-end product on a sales order for a custom-manufactured item. When the order is marked complete, Frameworks converts the Assembly Kit into a unique Special Assembly Product. 

> ✅ Refer to [Understanding Kit Types](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28409556) for an overview of available kit types.

---

**Product**, **Priced Product** and **Shelf Labels**

Enable each label type to be printed for the product by default when it is received.

---

**Print on P/Slip**

Enable to print on a picking slip when the product is ordered.

---

**Allocated Suppliers Only**

Enable to restrict the product to allocated suppliers only.

---

**Stop Price Round**

Enable to stop price rounding in inventory functions.

---

**Stop Discounts**

Enable to stop all discounting of this product. When enabled, it stops a price override of a discount from being applied by **non-POS Supervisors** or **limited POS Supervisors **unless it has been authorised by a **POS Supervisor.**

**When the discount is NOT applied.**

- For discount set at product level.
- For discount set at product group level (module).
- For price override of a discount - non-supervisors or limited POS supervisors are required to authorise.

**When the discount IS still applied.** 

- For discounts set at product level on a promotion.
- For discounts set at product group level on a promotion.
- For discounts set at product level on contracts.
- For discounts set at product group level on contracts.

---

**Prevent Supply Price**

Enable to prevent supplier cost from overriding standard and branch cost.

---

**Tariff Code**

Enter the tariff code or click the search icon to open the **Tariff Code Finder**.

---

**Product Brand**

The brand name of the product.

---

**Manufacturing Profile**

If the product is a manufactured product, enter the manufacturing profile code or click the search icon to open the **Manufacturing Profile Code Finder**.

---

**Manufacture Type**

Select the **Manufacture** **Type **from the drop-down menu:

- Not Set
- Labour
- Freight
- Consumables
- Miscellaneous

Only components of a manufactured product need to have this field completed. This field is used in the Production Report to break down the components of a manufactured product.

---

**Product Origin**

Enter the product origin code or click the search ion to open the **Code Lookup**. This allows you to be able to report on this if required.

> ℹ️ The origin codes are defined in **Product Origin Codes** within the **Inventory **section of **System Setup**.

---

**Incentive Code**

The sales product incentive code. Can be reported against.

---

**Services Product**

Enable if this is a Services Product. The services product flag acts as a tag for those products that will be used to produce a Sundry invoice (typically charges for fuel, hotel receipts and other sundry charges). 

The **Services Product** field then acts as a filter option in the Scheduled Invoice Send module. Any Invoice, that contains a services product, is treated as a **Sundry Invoice**.

Sundry Invoices will only be included in the **Invoice Batch Print**, if the option **Print Sundry Invoices** is enabled.

---

**Australian Made**

Enable if the product is made or manufactured in Australia.

---

**Info at POS**

Enable to display the product information box on the screen when entering an order through **Sales Order Processing** or **Point of Sale**.

> ℹ️ If either **Info at POS** or **Info at P/Order** is enabled for a product, the product information box is also displayed whenever performing a stock enquiry or a price look-up on the product.

---

**Info at P/Order**

Enable to display the product information box on the screen when entering a purchase order.

> ℹ️ If either **Info at POS** or **Info at P/Order** is enabled for a product, the product information box is also displayed whenever performing a stock enquiry or a price look-up on the product.

---

**Web **and **App Enabled**

Enable to allow the product to be available in the Trade Portal and/or other configured 3rd party online applications.

---

**Independently Traded**

Select this checkbox if the non-tally parent product can be bought or sold as a standalone product. This means the parent product to be added to a sales or purchase order without choosing a child product. Its stock levels will also be updated when it is traded independently. 

> ⚠️ This checkbox is not visible if the product is **NOT** a non-tally parent product.

> ℹ️ You can also use the [Product Import](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28409372) functionality to bulk update products and specify which items can be traded independently.

---

**Product Class**

Enter the product class code or click the search icon to open the **Code Lookup**. This is used in the Trade Portal.

> ℹ️ The product class codes are defined in **Product Class Codes** within the **Inventory **section of **System Setup**.

---
</details>

The media information section allows you to store and maintain product media files. From here you can:

- Click **Edit** to maintain existing media URLs.
- Click **Add **to enter new media URLs.

<details>
<summary>For more information about the Media Information options, click here.</summary>

**Media Type**

Select from the drop-down menu the required media type:

- **Sec. Image**:** **The **Sec Image **is used as the specification or dimensions Image on the **Trade Portal** and on a **Brochure** **Quote** if an attribute is not defined.
- **Animation**:** ***Not currently used, available for possible future developments.*
- **Archive**:** **Select if the media is no longer required but you want to keep the link associated with the product.
- **CAD dwg**:** ***Not currently used, available for possible future developments.*
- **Datasheet**: The **Datasheet** image is used under **Product Information **on the **Datasheet **tab** **on the **Product Dashboard**.
- **Main Image**: The **Main Image** is used as the product image under **Product Information **on the **Product Dashboard**, when entering a product in **POS**, on the **Trade Portal** and on a **Brochure** **Quote** if an attribute is not defined.
- **Other**:** ***Not currently used, available for possible future developments.*
- **Video**:** ***Not currently used, available for possible future developments.*

---

**URL**

Enter the URL linked to the media file you are adding to the file.

> ⚠️ The file location needs to be accessible to your Frameworks database. This may require a file server where the URLs are publicly accessible. Please contact your IT for support with this.

---
</details>

### Attributes

The **Attributes** section contains the product's attributes. Use product attributes to store further information like: 

- Additional product information, either individually or via attribute sets to apply actual properties of a product based on chosen definitions.
- Alternate descriptions and image locations for stationary types, such as brochure quotes.
- Prompts to capture or acknowledge information at transaction time, when the attribute is defined in a transaction-prompt category.

> ℹ️ If a product attribute has been defined with the **Auto Add** enabled, it will be applied automatically upon creation of a product.

![image](media://6daaca57-31b0-4472-a9c1-5d656faede98)

<details>
<summary>For more information about the Product Attributes, click here.</summary>

**Category**

The attribute's category. Use the search** **icon to select an existing attribute category.

---

**ID**

The attribute's ID. Use the search icon to select an attribute ID.

---

**Value**

The attribute's value. Enter the value or, if the vales are defined, use the search** **icon to select the relevant value.

---
</details>

**Transaction Prompt Attributes**

Attributes defined in the reserved categories **SOPDetailPrompt**, **POSDetailPrompt** and **PURDetailPrompt** prompt the user to capture or acknowledge information when the product is added to a transaction. When a product carrying one of these attributes is added to a matching transaction, the **Transaction Product Attribute Prompt** window displays for the user to complete.

- **SOPDetailPrompt** prompts in Sales Order Processing.
- **POSDetailPrompt** prompts at Point of Sale.
- **PURDetailPrompt** prompts in Purchase Order Processing.

The attribute's data type determines the prompt: character, integer, decimal and date present an entry field, while logical presents a checkbox for acknowledgement. To set up a transaction-prompt attribute, see [Configure Product Attribute Definitions](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/881033221).

### Units of Measure

Listed here are all the units of measure (UOM) for your product. From here you have the option to:

- Click the **GTIN** hyperlink to populate the fields below and edit the UOM. Depending on your system settings, the **Stocking** and **Purchasing **type Units of Measure are not editable.
- Click **Add **to open the **New Product Unit of Measure **window and enter a new UOM.

Enable **Purchases ?** and/or **Sales ?** to allow your UOM to be available as a purchasing and/or selling UOM respectively.

![image](media://e7f47bec-d7de-4e56-bfbf-06afe918eea1)

### Change Purchasing UOM

From here you can change the purchasing unit of measure for your product. Enter the UOM code in the **New Purchasing UOM** field or click the search icon to open the **Unit of Measure Code Finder**. The **Override Conversion Factor** and **Base UOM** will auto populate based on the selected unit of measure.

> ⚠️ The purchasing unit of measure can only be changed in certain circumstances:
> ⚠️ 
> ⚠️ - If average costing is being used, the purchasing UOM can only be changed if there are no outstanding purchase orders containing the product.
> ⚠️ - If standard costing is being used, the purchasing UOM can be updated.

![image](media://0102aba5-83a3-48dd-9904-45d6a23ff39d)

### Timber / Sheet Information

In this section, you can add timber and sheet dimensions. 

By clicking **Add**, you can add a list of **Supplier **and **Production **information with pre-defined **Pack Size**(s).

The **Width**, **Depth** and **Length** values recorded here are used for load planning in [Runsheet Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28399634) and the [Despatch Calendar](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28386712), where they calculate the product's Volume. If a product has none of this information recorded, its Volume displays as blank in those screens.

> ℹ️ The **Cubic Volume** field can be left blank to let the system calculate volume automatically from **Width**, **Depth** and **Length**. Entering a value here instead overrides the automatic calculation for every quantity of the product ordered, so an incorrect entry will affect the Volume shown on any order that includes it.

![image](media://16715cc7-22c7-49cb-ba36-6e4c2c896830)

### Alternate Codes

Alternate product codes can be used as 'shortcuts' or 'hotkeys' to the product. An alternate code cannot be an existing product number or barcode.

Click **Add** to enter an alternate code for your product.

![image](media://669ff9c3-0dda-40f1-a4ea-975e7017555f)


### Hazardous Goods

This section is used to store hazardous goods information. The various hazardous goods codes can be added or edited anytime as required.

> ⚠️ **Note:** Enabling the **HazMatDets **system settings flag, to print a dangerous goods shipping document to accompany the goods during transportation in the event of an accident or spillage. This document will be printed when the order is released for any product sold with recorded hazardous goods details. *If this is required, please ensure the required stationary has been created.*

> ℹ️ You will need to define the default printer for **Dangerous Goods** via **My Printer Configurations.**

![image](media://ed8a517b-ebc8-4982-8dc7-5585b4bfe125)

<details>
<summary>For more information about the Hazardous Goods fields, click here.</summary>

**UN Number**

Enter the required UN Number or ID used to identify the specific hazardous substance or article. 

The UN Number is used to ensure that the hazardous material is transported safely and in compliance with regulations.

---

**Proper Shipping Name**

Enter the proper shipping name for the specific hazardous substance or article. 

This differs from the product name or description and is related to the UN number for proper identification.

---

**Packaging Group**

If required, enter the related packaging group for the hazardous substance or article. Click the **Search **icon to use the **Code Finder** window.

This is used to categorise the level of risk associated with different hazardous materials or substances. These materials are assigned to one of three packaging groups:

- Packaging Group I (PG I): Substances and articles that present a high degree of danger. These are the most hazardous materials and require the most robust packaging and handling precautions.
- Packaging Group II (PG II): Substances and articles that present a medium level of danger. They are less hazardous than those in Packaging Group I but still require careful handling and packaging.
- Packaging Group III (PG III): Substances and articles that present a relatively low level of danger. These materials are considered less hazardous and can be packaged and transported with fewer restrictions than those in the higher packaging groups.

---

**Hazchem Code**

If required, enter the Hazchem Emergency Action Code for the product. Click the **Search **icon to use the **Code Finder** window.

This is used in the event of a chemical spill or accident involving hazardous substances during transportation. It is a safety system that helps emergency services and responders quickly understand the risks associated with a particular chemical or substance and take appropriate actions.

The Hazchem code typically consists of a code with three parts:

1. Hazchem Code: A numeric or alphanumeric code that represents the specific chemical or substance. This code is used for quick reference and identification.
2. Emergency Action Guide (EAG): This guide provides information on the appropriate actions to take in case of a spill or accident involving the hazardous substance. It includes information on personal protective equipment, containment, and evacuation procedures.
3. Hazchem Substance Code: This code provides additional information about the physical and chemical properties of the substance, as well as any potential hazards.

> ⚠️ The Hazchem code system is specific to Australia and New Zealand and may differ from other international hazardous materials identification systems.

---

**Dangerous Goods Code**

Enter the Dangerous Goods Class or Division code for the specific hazardous substance or article. Click the **Search **icon to use the **Code Finder** window.

This is used to help quickly identify the nature of the hazardous material and take appropriate safety measures. There are nine primary classes or divisions of dangerous goods, each with its unique properties:

1. **Class 1**: Explosives - Materials that can cause an explosion, such as fireworks and dynamite.
2. **Class 2**: Gases - Gaseous materials, are divided into three divisions: flammable gases, non-flammable, and toxic gases.
3. **Class 3**: Flammable Liquids - Liquids with a flashpoint below a certain temperature, like gasoline and alcohol.
4. **Class 4**: Flammable Solids - Solids that can ignite and burn easily, including some powders and metals.
5. **Class 5**: Oxidizing Substances and Organic Peroxides - Substances that can release oxygen and promote combustion.
6. **Class 6**: Toxic and Infectious Substances - Materials that can cause harm to human health, including toxic and infectious substances.
7. **Class 7**: Radioactive Material - Materials that emit ionizing radiation, like uranium and plutonium.
8. **Class 8**: Corrosive Substances - Materials that can cause damage to living tissues, metal, or other materials.
9. **Class 9**: Miscellaneous Dangerous Goods - Substances that don't fit into the other classes but are still hazardous, such as environmentally hazardous substances.

---

**Subrisk Code**

If required, enter the subrisk code related to the Dangerous Goods Code above. Click the **Search **icon to use the **Code Finder** window.

This is used to provide additional information about specific risks associated with certain hazardous materials. It helps further specify the nature of the hazard and provides more details about the material.

---

**Poison Code**

If required, enter the poison code for the hazardous substance or article. Click the **Search **icon to use the **Code Finder** window.

This may be required for Class 6: Toxic and Infectious Substances.

---

**Liquid Flash Point Code**

If required, enter the liquid flash point code for the hazardous substance or article. Click the **Search **icon to use the **Code Finder** window.

This may be required for Class 3: Flammable Liquids with a flashpoint below a certain temperature, like gasoline and alcohol.

---

**Packaging Size**

Enter the size, capacity, or volume of the container used to store or transport hazardous substances.

This is used to helps in determining how these materials are transported, stored, and handled.  

---

**UOM**

Selected the Unit of Measure related to the entered packaging size.

---
</details>

### Product Branch Stock

The **Product Branch Stock** section allows you to view and set stock level information at a branch level. The grid displays branches from all companies your user account is permitted to access, not just your session company. To add new branch level information, select a branch from the **Select Branch** drop-down and click **Add**, then complete the details.

![image](media://29d69b6f-6f5d-46d3-a21e-a683f3788efe)

<details>
<summary>For more information about the Product Branch Stock options, click here.</summary>

**Branch**

The **Select Branch** drop-down includes branches from all companies your user account is permitted to access. After selecting a branch, select **All Branches** to return to the full list.

---

**Type**

From the **Type** dropdown menu, select if the product is a **Stocked **or **NOT Stocked** product for the selected branch.

> ℹ️ When **Stocked** is selected, the **Stock Take Interval **will default to 52. When **NOT Stocked** is selected, the **Stock Take Interval** will default to 0.

---

**Picking Group**

The **Picking Group** field assigns this product to a Picking Group for the selected branch. Picking Groups control how the product's line sorts and page breaks on a picking slip, and whether extra copies print for its section. Leave this field blank if the product doesn't need Picking Group based sorting or duplicate copy printing.

Because this field is set per branch, the same product can belong to a different Picking Group at each branch, or have no Picking Group assigned at one branch while being assigned at another.

**Format:** Text (lookup) | **Required:** No | **Related fields:** Picking Groups are created and maintained on the **Picking Groups** screen. Refer to [Picking Groups - Field Definitions](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/1098612740) for the Code, Description, Number and Additional Copies fields.

---

**Label Type**

From the **Label Type** dropdown menu, choose which label type you want as the default for the selected branch. This field defaults to **Shelf** label, other options are** Rack**,** Swing** and **Product **labels.

---

**Usage**

**Usage **is used to displays how or where the product may be used to help in the breakdown of quotes and orders. For Example, **Flooring **and **Framing** may be applied to different order lines of the same **product **to better break down a quote or order.

From the **Usage** drop-down, enter or choose the **default Usage** for the product at the selected branch. By default the field is blank when a new product is created. 

> ℹ️ If **OrdUsagVal** is enabled the **System Settings - Flag** table, the system validates that the selected **Usage **is defined within the **Job Usages** miscellaneous table. If **OrdUsagVal **is disabled, the **Usage **field accepts free-form text.

---

**Manufacturing Model**

The **Manufacturing Model** field links the product to a Process Model defined in [Process Model Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28402124). When the product is added to a sales order, the tasks defined in the linked Process Model are automatically created against the order as it progresses through Production Scheduling.

Enter the Process Model ID directly or use the search icon to look up an existing model.

**Linkage validation for Assembly Kits:** When linking a process model to a product configured as an **Assembly Kit** in Kit Maintenance, Frameworks validates that the model contains only Assembly-type tasks. If the model contains any manufacturing tasks (Detailing, Estimating, Manufacturing), the linkage will fail. Either select a different model, or remove the conflicting tasks from the model in Process Model Maintenance.

**Format:** Text (Process Model ID lookup) | **Editable:** Yes | **Required:** No | **Related fields:** Links to a model defined in [Process Model Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28402124).
</details>

### Product Branch Pricing

The **Product Branch Pricing** section allows you to view and maintain cost and sell pricing at a branch level. The grid defaults to an **All Branches** view and displays branches from all companies your user account is permitted to access, not just your session company. Pricing is available for all branches configured in **Product Branch Stock**.

![image-20241104-002033.png](media://59d0698e-b060-467e-a799-a0ea185cdbe1)


<details>
<summary>For more information about the Product Branch Pricing, click here. </summary>

**Costing Method**

** **Select the appropriate costing method from the drop-down menu. When a costing method is selected, the applicable cost for that costing method is populated in the **Unit Cost** field.

---

**Market Cost**

The **Market Cost** field displays the branch-level market price for this product, expressed in the product's stocking UOM. This value is entered manually and applies only to this branch. The branch-level market cost takes precedence over the product-level market cost when the branch **Costing Method** is set to **Market Cost**.

To enter a cost that was quoted by a supplier in a different UOM, click the **Calculator** button beside the **Market Cost** field to open the **Market Cost Calculator** window. The calculator converts the supplier-quoted cost to the stocking UOM automatically. Each branch can have an independent source UOM and converted cost.

> ✅ Refer to [Use the Market Cost Calculator](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/716472333) for step-by-step instructions.

> ℹ️ This field is only visible when the `InvUseProdCostingMth` system flag is enabled.

---

**Unit Cost**

Total cost to produce one unit of a product. 

---

**Cost Loading**

Displays what the current cost loading amount is on the product branch cost.

> ℹ️ When a Branch Transfer transaction is released, the cost loading should be included in the branch transfer cost, whether it is a percentage or a dollar value. However, note that length surcharges, other surcharges, and wastage calculations are excluded.

---

**Loading Type**

The cost loading refers to the dollar ($) or percentage (%) increase or decrease on the product's unit cost or standard cost, if a unit cost isn't defined. Select a loading type from the drop-down menu. 

- Dollar Value
- Percentage

---

**Gross Profit %**

The Gross Profit % field is read-only. If a value is defined, it will be displayed; if not, it will be calculated using the Standard cost or the Branch cost, if added.

> ✅ Refer to [Update Branch GP% and Sell Price](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28400096) for more information.

---

**Unit Sell**

Price at which a single unit of a product is sold to customers.

---

**Hold Std Sell**

Enable this checkbox to maintain the standard selling price. 

---
</details>

### Product Discounts

The **Product Discounts** section allows you to define and manage customer discount pricing for the selected product. Discounts can be configured by discount group, branch, and price rule, giving users granular control over margin targets and pricing at a branch level.

> ℹ️ The group discounts are maintained via **Discount Groups** (under **System Administration** > **System Setup** > **Pricing**).

![Product Discounts (Product Main).png](media://b35f25fe-61db-4470-bf0f-22fccc416cb8)

<details>
<summary>For more information about the Product Discounts tab, click here. </summary>

**Discount**

The discount group code.

---

**Branch**

The branch this discount applies to. A value of **0** within the discounts grid indicates the discount applies to all branches.

---

**Price Rule**

The method used to calculate the customer's price. There are two price rules:

- **D** - Discount %: Set the discount for this discount group by entering a **Discount %** into the available field to take off the standard unit price. The **Gross Profit %** field is disabled.
- **G** - Gross Profit %: The customer's price is calculated to achieve a target gross profit percentage. Enter the desired GP% in the **Gross Profit %** field. The **Discount %** field is disabled.

---

**Discount %**

The current discount percentage. Available to edit only when Price Rule **D** is selected, otherwise calculated using the other fields.

---

**Discount Price**

The calculated selling price after the discount is applied (ex GST).

---

**Discount Price GST Inc**

The calculated selling price after the discount is applied (inc GST).

---

**Gross Profit %**

The gross profit percentage at the current discount price. Available to edit only when Price Rule **G** is selected, otherwise calculated using the other fields.

---

**Future Discount %**

The future discount percentage.

---

**Future Price**

The calculated future selling price (ex GST).

---

**Future Price GST Inc**

The calculated future selling price (inc GST).

---

**Future Gross Profit %**

The gross profit percentage at the future discount price.

---

**Future Date**

The date from which the future pricing values will be applied.

---
</details>

### Product Volume Discounts

The **Product Volume Discounts** option allows users to apply bulk rate discounts off the standard cost. Click **Add** to enter a volume discount break quantity.

![image](media://a352cd43-e616-46d8-a1ed-fb6a53111a6b)

### Product Suppliers

Preferred and alternate suppliers of your product are defined here. Click **Add** to create a new supplier entry and enable **Preferred Supplier **to assign the preferred supplier for this product. 

> ℹ️ For alternate suppliers, you can apply a **Rank **to each supplier to help when sorting the list of product suppliers.

![image](media://0da0fa6b-ef0a-4dcb-9892-5cd6319e9dd7)

The available tabs for data entry are:

#### Details Tab

Contains the main supplier details including the barcode, catalogue number, supplier SKU, supplier rebates and stock source.

<details>
<summary>For more information about the Details tab, click here.</summary>

**Preferred Supplier**

Enable to define the selected supplier as the products preferred supplier. 

> ⚠️ There can only be ONE preferred supplier for a product. If selected and another supplier is the preferred supplier then, once saved, the newly selected supplier will become the preferred supplier.

---

**Catalogue No**

Displays the Suppliers Catalogue Number** **for the product. The product ID in the supplier’s catalogue.

> ℹ️ The Catalogue No. will also be used when searching for a product via a **Product ID **field.

---

**Bar Code**

Displays the product's** **barcode number** **used when scanning a product.

> ℹ️ The Barcode will also be used when searching for a product via a **Product ID **field.

---

**Supplier SKU**

Displays the supplier's SKU** **details for the product. This is the internal code for a buying group to help identify the product.

> ℹ️ Typically used when your business is part of a buying group.

---

**Inner Pack Qty**

Displays the quantity of the suppliers purchasing UOM required to make up a pack (Box).

**For Example:** If there are 6 items in a box then **Purchase UOM **would be each and the **Inner Pack Qty** would be 6.

---

**Outer Pack Qty**

Displays the outer pack quantity. An outer pack would be a larger packaging unit that held the boxes (inner packs) i.e. a pallet.

---

**Minimum Order**

Displays the minimum order quantity required by the supplier when ordering the product.

---

**Stock Source**

Displays where the supplier is sourcing the product from.

From the dropdown menu select: 

- **BLANK**: The stock source should remain blank if you are ordering from a supplier and no other suppliers are involved.
- **Warehouse**: When selected, the stock is being supplied from the supplier's warehouse. An **Original Supplier** is required to be added to show who the original supplier is prior to being sourced by the warehouse.
- **Direct: **When selected the stock is being ordered direct from a supplier. However, the invoice is then paid to the creditor which is different from the supplier of the product. A **Creditor **is required to be defined.
- **NDC**: This stands for National Distribution Centre and is similar to **Warehouse**. An **Original Supplier** is required to be added.

---

**Creditor**

Displays who the creditor is for the product when the **Stock Source **is **Direct**. As in, the stock is being ordered direct from a supplier, but the invoice is then paid to the creditor. 

---

**Original Supplier**

Displays the suppliers name of where the stock originated from when the **Stock Source **is **Warehouse** or **NDC**.

---

**Rank**

Displays the ranking number if an alternate supplier is selected. Helps when sorting your list of product suppliers. Not required for the preferred supplier.

---

**Can Break Pack**

When enabled, the pack quantity will NOT be enforced.

When disabled, the pack quantity will be enforced in the following:

- The **Stock Forecasting Update** scheduled task will apply the pack quantities to the calculation of max stock amount of the product for the supplier.
- The **Stock Reordering **scheduled task will round up to match the inner pack quantity of the product for the supplier.
- When entering or editing products into a purchase requisition or order. You will receive an error message regarding the entered quantity as NOT a multiple of the inner pack quantity.

---

**Discount % 1**, **2** and **3**

Displays the agreed discount percentages given from the supplier for the product.

The calculation of how these discounts affect the invoice cost is displayed on the **Prices** tab.

---

**Supplier Rebate %**

Displays the total amount of the applied supplier sales rebates.

---

**Purchase UOM**

Displays the purchasing unit of measure for the product from the supplier. The purchasing UOM is how the supplier likes to receive their order, for example, boxes of or each.

---

**Freight **and **Freight %**

These fields display either the fixed freight cost or a Percentage of the Gross + discounts cost** **passed on from the supplier and added to the invoice cost of the product.

---

**ETM P/O in Purchase UOM**

Enable for electronic purchase orders to convert the quantity entered on the purchase order to be the quantity related to the suppliers purchase UOM. 

For example, If the purchase UOM is each and you added 10 boxes to a purchase order, the electronic purchase order will be automatically converged to the “each quantity” in the 10 boxes.

---

**External Freight Cost**

Displays any additional freight costs per external freight UOM.

> ⚠️ An **External Freight UOM **needs to be entered first.

---

**External Freight UOM**

Displays the unit of measure required for the external freight. This will typically differ from the purchase UOM.

---

**Conversion Factor**

Displays the conversion factor (number of units) for the **External Freight UOM**.

> ⚠️ An **External Freight UOM **needs to be entered first.

---
</details>

#### Prices Tab

Add gross costs here (all other cost fields are view only). Enable **Reset Standard Cost** to reset the product standard cost with the cost price for this supplier or disable to leave the standard cost as it is. If you enable **Reset Branch Cost**, this will reset the product branch cost with the cost price for this supplier or disable to leave the branch cost as it is. Area Pricing (1-6) is determined by the **Supply Cost Area** field in **Branch Maintenance**.

#### Volume Discounts Tab

Listed here are the volume discount amounts with either a % discount or $ discount value off the supplier’s unit price for each volume discount quantity break.

<details>
<summary>For more information about the Volume Discounts Tab, click here. </summary>

**Order Type**

> ⚠️ The **Order Type** column is hidden when [FWPurchaseType](https://kb.myframeworks.com.au/space/FRAM/580748063/Purchasing+and+Receipting+Related+System+Settings#FWPurchaseType) flag is disabled.

Select an order type from the drop-down. The available options are: 

- **Stock**: This order type is used for purchasing larger quantities of products to maintain inventory.
- **Daily**: This order type is for products that are needed on a daily basis.
- **All**: If neither daily nor stock is selected, the order type will default to ‘All’.

**Volume Discounts Based on Order Type**

The table outlines the volume discounts that are applied based on the types of order entered. 

| **Applied Order Type** | **Order Types Available in Volume Discounts** |
| --- | --- |
| Daily | When both "All" and "Daily" type orders are available, the discount for Daily orders will be applied. |
| Stock | When both "All" and "Stock" type orders are available, the discount for Stock orders will be applied. |
| All | When only the "All" supplier volume discount is available, it will apply to both daily and stock orders. |

> 📝 When importing volume discounts via the Electronic Product Code (EPC), you can use the *type_order_volume_disc* field in the [https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28409322](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28409322) to define a value for this field. The value can be either "S" (stock) or "D" (daily). If any other value is specified, the supplier volume discount type will default to 'All'.

> ℹ️ To set a default **Order Type **value on purchase orders and requisitions, you need to enable the following flags:
> ℹ️ 
> ℹ️ - [FWPurchaseType](https://kb.myframeworks.com.au/space/FRAM/580748063/Purchasing+and+Receipting+Related+System+Settings#FWPurchaseType): Enables to use order types in purchase orders and requisitions.
> ℹ️ - [FWPurchaseDfST](https://kb.myframeworks.com.au/space/FRAM/580748063/Purchasing+and+Receipting+Related+System+Settings#FWPurchaseDfST): Allows you to set a default order type for purchase orders.
> ℹ️ - [FWReqDefST](https://kb.myframeworks.com.au/space/FRAM/580748063/Purchasing+and+Receipting+Related+System+Settings#FWReqDefST):  Allows you to set a default order type for purchase requisitions.

> ⚠️ **Note: FWPurchaseType** must be enabled to use **FWPurchaseDfST** and **FWReqDefST**.

---

**Quantity Break**

Enter a threshold quantity for volume discounts. 

---

**Discount %**

Enter a discount based on percentage.

---

**Discount $**

Enter a discount based on dollar amount.

---

**Unit Cost**

Enter a discount based on the unit cost.

---
</details>

#### Rebates Tab

Click **Add** to add a supplier level rebate % across all products for the supplier.

### Product Supplier GTINs

Listed here are the alternate GTINs for each of your product’s suppliers.

The GTIN is the code that has been allocated to represent this package variant of the selected product. The GTIN code is unique to the selected product but can be used for all suppliers of the product if required. It is a predefined alphanumeric code of up to 14 characters.

![image](media://7f76c86e-f5e1-4322-aef5-e3648047bacf)

### Length Surcharges

Length surcharges can be used in two ways:

- In the Timber industry, length surcharges are used to add a surcharge for a particular length of timber.
- In the Plumbing and Hardware industries a negative length surcharge is used to provide a discount, for example: a cheaper price when a full length of pipe or door trim is sold rather than a cut length.

> ⚠️ Length surcharge can not be applied to individual child products. When child products are defined, any additional length surcharge costs should be included in the unit or branch costs of each child product.

![image](media://a52bb2a4-59b5-469a-937e-326d30417690)

<details>
<summary>For more information about the Length Surcharges options, click here.</summary>

**Length**

The material length for the selected product.

---

**Unit Sell**

The unit selling surcharge amount of this particular length. If a value is entered into this field, then a value cannot be entered into the **Rate %** field.

---

**Rate %**

Enter the percentage to increase or decrease the product unit sell price by to arrive at the unit sell price for this particular length of the product. If a value is entered into this field, then a value cannot be entered into the **Unit Sell** field.

---

**Unit Cost**

The cost surcharge amount of this particular length of this product.

---

**Run Out?**

Enabled if this product is flagged as a run-out product. That is if there is no stock on hand for this length, it is not permitted to be used in future orders.

---

> ⚠️ **Business Rules**
> ⚠️ 
> ⚠️ **Note**: Length cost surcharges are not used in average cost systems. If a discount exists at a product level, then it overrides any price at the product group level.
> ⚠️ 
> ⚠️ If G.P Pricing at a product group level, then the following rules apply:
> ⚠️ 
> ⚠️ 1. If a length surcharge exists with a sell price and zero cost:
> ⚠️   1. The sell price is calculated from the cost to give the required G.P%.
> ⚠️   2. Long length surcharges are then added to the sell price.
> ⚠️ 2. If the product has a length cost surcharge then the sell is calculated from the cost + the surcharge cost to give the required G.P. The surcharge sell is not applied.
> ⚠️ 
> ⚠️ Possible combinations are therefore:
> ⚠️ 
> ⚠️ - No length surcharge
> ⚠️ - Length surcharge with sell but no cost
> ⚠️ - Length surcharge with cost but no sell
> ⚠️ - Length surcharge with both cost and sell
</details>

### Other Surcharges

Other Surcharges are surcharges that the selected product might attract. For example, dressed, docked or primed.

> ℹ️ Valid surcharges for a product are displayed to the user during any sales or purchase transaction and up to four surcharges can be selected for any transaction.

![image](media://99a3c457-d6e2-477c-bbee-27a7274c3fc1)

<details>
<summary>For more information about the Other Surcharges options, click here.</summary>

Displayed at the top of the **Other Surcharge **section and the **New Product Surcharge **window is the product's branch pricing for reference.

The information displayed on the **Other Surcharge **section is the same as what has been entered in the **New Product Surcharge **window.

---

**Surcharge**

Enter the surcharge code to apply to the product or click the search icon to open the **Code Lookup**.

---

**Description**

Displays the description of the surcharge code applied to the product.

---

**Unit Sell**

The unit selling surcharge amount of this particular surcharge. If a value is entered into this field, then a value cannot be entered into the **Rate %** field.

---

**Rate %**

Enter the percentage to increase or decrease the product unit sell price by to arrive at the unit sell price for this particular surcharge. If a value is entered into this field, then a value cannot be entered into the **Unit Sell** field.

---

**Unit Cost**

The cost surcharge amount of this surcharge.

---

**Per Each**

The **Per Each** checkbox is only available for tally products. For tally products, there are two ways of calculating surcharges:

- If enabled, the **Each** calculation is used. This applies a surcharge per individual tally product piece and is used for a fixed price, not a percentage.  
- For example, if you are selling 10 pieces of timber @ 6 metres long and you are using the Each surcharge, your customers would be charged the surcharge for each piece of timber. In this example, there are 10 pieces, so the surcharge is the $ amount x 10.
- If disabled, the **Not Each** calculation is used. This applies the surcharge to the total Lineal Metre sell/cost of the tally product and is used for a fixed price, not a percentage.  
- For example, if you are selling 10 pieces of timber @ 6 metres long and you are using the Not Each surcharge, your customers would be charged the surcharge for the total LM of the timber. In this example, the surcharge is the $ amount x 60.

---
</details>

### Child Products

> ❌ A child product cannot be used as a parent product.

Certain products, for example rolls of cable, require multiple SKUs to represent a parent (the roll), and the child (the lineal metre).

This section allows you introduce a parent-child relationship for products; whereby greater visibility is maintained between the parent stock and the child (the loose stock).

> ℹ️ - Click the **Add** button to add a new child product.
> ℹ️ - Click the** Maintain** button to edit the details of an existing child product.

![image-20250522-014431.png](media://7ab9d9bb-3e59-40f5-af0b-e12b189a90a1)


<details>
<summary>For more information about the Child Products options, click here.</summary>

**Child Product**

Defaults to the next available system value but can be changed as long as it is a unique value.

---

**Bar Code**

Defaults to the next available system value but can be changed as long as it is a unique value.

---

**Product Description**

The product’s description.

---

**UOM**

By default, it is the same UOM as the parent product but can be changed. For example, the parent product is LM (Linear Meter) but Child product can be PE (piece of length).

> ⚠️ **Important:** To ensures accurate cost and sell pricing when trading child products that use a different unit of measure (e.g. PE for pieces), to its parent product (e.g. LM for Lineal meter). The **length entered on the child product becomes the conversion factor** for its base UOM. 
> ⚠️ 
> ⚠️ **For Example:**  
> ⚠️ If the parent is timber with a UOM of **LM**, and the child is defined in **PE** with a length of **5.4**, then **5.4 becomes the conversion factor** for the child’s base UOM.

---

**Length**

The length of the child product. 

> ℹ️ This field is required only when the parent product is a tally product and is only displayed for tally products.

---

**Quantity Per **[Mandatory field] 

Determines the conversion factor from the parent to the child product. The parent product’s standard cost is divided by the **Quantity Per** value to determine the child product's standard cost. Value cannot be '0'.

---

**Reset Standard Cost**

This sets the standard cost of the new child product based on the parent standard cost divided by the conversion factor (Quantity Per).

---

**Reset Supplier Cost**

This sets the supplier cost of the new child product based on the parent standard cost divided by the conversion factor (Quantity Per).

---

**Standard Cost**

This value is automatically calculated based on the parent standard cost divided by the value defined in **Quantity Per **field.

---
</details>

> ✅ Refer to [Parent and Child Products](https://sterlandsupport.atlassian.net/wiki/spaces/fwksproau/pages/30509486) for more information.

### Future Standard Pricing

The **Future Standard Pricing **options allow you to view and maintain future standard cost and sell prices for the selected product. The fields in the left column relate to the upcoming future standard pricing and the fields on the right relate to the current standard pricing.

<details>
<summary>For more information about the Future Standard Pricing tab, click here.</summary>

![image-20241216-214940.png](media://95725dfe-e3af-4b1e-a75a-47c7666f8bb5)


**Date Last Priced**

Displays the date for the last time a future price update was applied to the product.

---

**Date Effective**

Enter the date when the new prices are to become effective or click the calendar icon to use the date chooser.

---

**New Cost**

Enter the new standard cost price to be applied from the date specified. Updating this field will automatically update the **Cost % Increase** field based on the current standard cost. If updated, the **Cost % Increase **field is NOT required to be updated.

---

**Cost % Increase**

Enter the percentage increase to the current standard cost to be applied from the date specified. Updating this field will automatically update the **New Cost** field based on the current standard cost. If updated, the **New Cost **field is NOT required to be updated.

---

**New Gross Std Cost**

Displays what the **New Gross Standard (Std) Cost** would be. The gross standard cost includes the **Landed Cost **and **Wastage % **defined under the **Key Details **option.

> ℹ️ Wastage fields are hidden when **InvCstWst** is not enabled.

---

**New Sell Price**

The new retail selling price. This field is editable once you nominate a future effective date. Updating this field automatically updates the **New G.P. %** and **Resultant** fields based on the calculated gross standard cost.

> ℹ️ You can update the **New Sell Price** independently of the **Retain GP% (Up/Down)** flags set on the product.

---

**Sell Price Inclusive**

The new retail selling price including GST. This field is editable once you nominate a future effective date and automatically updates when you modify the **New Sell Price**.

> ℹ️ This field is hidden in US environments.

---

**New G.P. %**

The new gross profit percentage required for this product. This field is editable once you nominate a future effective date. Updating this field automatically updates the **New Sell Price** and **Resultant** fields based on the calculated gross standard cost.

> ℹ️ You can update the **New G.P. %** independently of the **Retain GP% (Up/Down)** flags set on the product.


---

**Resultant Cost**

Displays the calculated resultant cost that will be applied when the future pricing changes take effect. This value updates automatically when you modify any cost-related fields (**New Cost** or **Cost % Increase**).

---

**Resultant Sell / Sell GST Inclusive**

Displays the calculated resultant sell price (and GST inclusive price where applicable) that will be applied when the future pricing changes take effect. These values update automatically when you modify the **New Sell Price**, **Sell Price Inclusive**, **New G.P. %** or cost fields.

> ℹ️ The GST inclusive price is hidden in US environments.

---

**Resultant G.P. %**

Displays the calculated resultant gross profit percentage that will result when the future pricing changes take effect. This value updates automatically when you modify pricing or cost fields.

---
</details>

### Future Branch Pricing

It is possible for the cost price of a particular product to differ from branch to branch. The **Future Branch Pricing **option allows you to view and maintain future branch cost and sell prices per branch for the selected product.

The top section of the **Future Branch Pricing **option displays all the current product branch pricing for the product. The fields below will be populated based on the selected branch. The fields in the left column relate to the current branch pricing and the fields on the relate to the upcoming future branch pricing.

![image](media://b6ca8948-7da1-45c1-bbfd-a1beb777a42a)

<details>
<summary>For more information about the Future Branch Pricing tab, click here.</summary>

**Date Last Priced**

Displays the date for the last time a future branch pricing update was applied to the product.

---

**Standard Cost **and** Sell**

Displays the current standard cost and sell prices as defined under the **Key Details **option. The standard sell is exclusive of GST.

---

**Branch Average**

If **Average Costings **is enabled, the current branch average cost will be displayed.

---

**Loading $ or %**

Displays if the cost loading is being calculated as a dollar value ($) or as a percentage (%).

> ℹ️ The loading type of **Dollar Value** or **Percentage** is defined under the **Product Branch Pricing **section.

---

**Cost Loading**

Displays what the current cost loading amount is on the product standard cost or branch cost.

---

**Branch Cost** and **Selling Price**

Displays the current branch cost, including any cost loading amounts, and the branch selling price.

---

**Branch G.P.**

Displays the current gross profit % for the product at the selected branch.

---

**Date Effective**

Enter the date when the new prices are to become effective or click the calendar icon to use the date chooser.

---

**New Cost Loading**

Enter the new cost loading percentage or dollar value on the product for the selected branch. The cost loading refers to the dollar ($) or percentage (%) increase or decrease on the product's unit cost or standard cost, if a unit cost isn't defined.

> ℹ️ The loading type of **Dollar Value** or **Percentage** is defined under the **Product Branch Pricing **section.

---

**New Cost**

Enter the new branch unit cost to be applied to the selected branch on the nominated effective date.

---

**New Sell**

Enter the new branch unit sell price to be applied to the selected branch on the nominated effective date.

---

**From **and **To Branch**

Using the **From Branch** and** To Branch **fields you can choose to apply the above defined future branch price changes to the selected branch range. The range will default to the selected branch. 

---

**Resultant **calculations

The **Resultant Cost**,** Loading**,** Sell **and **G.P. % **fields display what the branch product pricing will be once the future price changes are applied.

---
</details>

### Future Supplier Area Cost

The **Future Supplier Area Cost **option allows you to view and maintain future supplier area **Gross Costs **and the supplier **Freight Cost **or **%** for the suppliers of the product.

The top section of the **Future Supplier Area Cost **option displays a list of the available suppliers for the product, including which supplier is the preferred supplier, catalogue number, bar code, pack quantities, minimum order quantities and supplier rankings.

![image](media://814b5c46-2292-42c1-8960-69822e3fe045)

<details>
<summary>For more information about the Future Supplier Area Cost tab, click here.</summary>

**Date Effective**

Enter the date when the new prices are to become effective. Click the **Date Chooser** to select a date.

---

**Standard Cost**

Enter the new standard unit cost for the preferred supplier of the selected product.

---

**Area 1 **to **6**

A branch may be assigned to a specific supplier area. If the cost for this product's preferred supplier cost area is to be amended, enter the new unit cost for the relevant cost area (1 through to 6).

---

**Freight $ **or **%**

Enter one or the other:

- **Freight $: **Enter the suppliers freight cost to be added to the supplied cost for the product.
- **%: **Enter a percentage amount, of the supplied cost, to be added to the supplier cost for freight.

---
</details>

### Future Product Discounts

The **Future Product Discounts** option allows you to apply a future change to the discount group(s) that are attached to the selected product.

The top section of the **Future Product Discounts **option displays a list of currently applied discount groups attached to the product.

![Future Product Discounts (Product Maintenance).png](media://c761b717-3f9e-4e39-a4b2-6f1345986f79)

<details>
<summary>For more information about the Future Product Discounts tab, click here.</summary>

**Date Effective**

Enter the date when the new prices are to become effective. Click the **Date Chooser** to select a date.

---

**Future Discount %**

The discount percentage amount to apply to the unit sell price of the selected product. Available to edit only when Price Rule **D** is selected, otherwise calculated using the other fields.

---

**Future Price**

The discounted price for this product is calculated and appears in this field. If you choose to type a discounted price instead of a discount percentage, the system calculates the discount percentage from the price typed and displays it in the **Discount %** field.

---

**Future Gross Profit %**

The gross profit percentage at the future discount price. Available to edit only when Price Rule **G** is selected, otherwise calculated using the other fields.

---
</details>

---

## Additional Information

### System Flags Reference

The following system flags affect the behaviour of the **Product Maintenance** screen. Flags are managed in the **System Settings - Flags** screen (**System Administration > System Setup > Configuration > System Settings - Flags**).

**Customer Description Flags**

These flags control whether the **Customer Description** replaces the default product description on specific documents and outputs. Each flag is independent and applies to XML-based printouts only (except **ProdCustDescTP**, which applies to the Trade Portal).

| Flag Code | Purpose |
| --- | --- |
| [ProdCustDescCnf](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13177658) | Use Customer Friendly Description for Products - Order Confirmation |
| [ProdCustDescDel](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13177667) | Use Customer Friendly Description for Products - Delivery Docket |
| [ProdCustDescInv](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13177121) | Use Customer Friendly Description for Products - Invoice |
| [ProdCustDescLbl](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13177682) | Use Customer Friendly Description for Products - Labels |
| [ProdCustDescPsl](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13178256) | Use Customer Friendly Description for Products - Picking Slip |
| [ProdCustDescPur](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13177136) | Use Customer Friendly Description for Products - Purchase Order |
| [ProdCustDescQte](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13178771) | Use Customer Friendly Description for Products - Quote |
| [ProdCustDescTP](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13178265) | Use Customer-Friendly Description for Products - Trade Portal |

**Costing and Pricing Flags**

| Flag Code | Purpose | Affected Fields |
| --- | --- | --- |
| [InvUseProdCostingMth](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/529596423) | Enables the product costing methods functionality | **Costing Method**, **Costing Methods Panel**, **Base Cost**, **Total Cost Components**, **Components of Cost** button and **Landed Cost** (Key Details section) |
| **InvCstWst** | Enables cost wastage fields | **Landed Cost** and **Wastage %** (Key Details section), **New Gross Std Cost** (Future Standard Pricing section) |

**Purchasing Flags**

| Flag Code | Purpose | Affected Fields |
| --- | --- | --- |
| [FWPurchaseType](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13173768) | Enables order types (Stock/Daily) in purchasing | **Order Type** column in the Volume Discounts tab (Product Suppliers section). Must be enabled for **FWPurchaseDfST** and **FWReqDefST** to function. |
| [FWPurchaseDfST](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28401318/Purchasing+and+Receipting+Related+System+Settings#FWPurchaseDfST) | Sets a default order type for purchase orders | Works with **FWPurchaseType** |
| [FWReqDefST](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28401318/Purchasing+and+Receipting+Related+System+Settings#FWReqDefST) | Sets a default order type for purchase requisitions | Works with **FWPurchaseType** |

**Other Flags**

| Flag Code | Purpose | Affected Fields |
| --- | --- | --- |
| **HazMatDets** | Prints a dangerous goods shipping document when an order is released for products with recorded hazardous goods details | Hazardous Goods section |
| [OrdUsagVal](https://sterlandsupport.atlassian.net/wiki/spaces/FSS/pages/13176444) | Validates that the selected Usage is defined within the Job Usages miscellaneous table | **Usage** field (Product Branch Stock section). When disabled, the **Usage** field accepts free-form text. |