---
title: "Supplier Contracts for Customers - Implementation Guide"
canonical: "https://kb.myframeworks.com.au/space/FRAM/492371979/Supplier%20Contracts%20for%20Customers%20-%20Implementation%20Guide"
format: markdown
---
This guide walks you through the complete implementation of Supplier Contracts for Customers in Frameworks. Supplier Contracts allow you to apply negotiated purchase prices or discounts from suppliers to specific customers, branches, or your entire business. This feature ensures special pricing agreements are automatically available when creating quotes, sales orders, and purchase orders.

Implementing Supplier Contracts requires configuring the business structure in Frameworks, assigning businesses to branches, configuring user access, and setting system-level behaviour flags. Once configured, you can create supplier contracts and control exactly which branches and customers can access each contract's pricing.

> 📝 **Who performs this:** System Administrator  
> 📝 **Prerequisites:**
> 📝 
> 📝 - System Administrator access to Frameworks
> 📝 - SCP feature code must be activated (contact Support if not enabled)
> 📝 - Understanding of your business structure (which branches belong to which businesses)
> 📝 - List of supplier pricing agreements that will be set up as contracts

## Implementation Sequence

This guide walks you through the complete implementation in the correct order:

1. Configure System Settings
2. Define Business Names
3. Assign Businesses to Branches
4. Configure User Access
5. Create Your First Supplier Contract
6. Validation

---

## Configure System Settings

Configure the system-level settings (Flags and General) that control how Supplier Contracts behave across Frameworks. These settings determine whether contract numbers are auto-generated, whether the Business field is mandatory, and how branch transfer suppliers are handled.

### Configuration Steps

1. Navigate to **System Administration > System Setup > Configuration > System Settings - Flags**.
2. Locate and configure the following flags:
  **AutoSuppContNo** - Automatically Generate Supplier Contract Number
  - Enable this flag if you want Frameworks to automatically generate sequential contract numbers.
  - Disable this flag if you want to manually enter contract numbers.
  - **Recommendation:** Enable this flag to ensure unique contract numbers and reduce data entry.
  **SuppContBusiness** - Business in Supplier Contract Maintenance is Mandatory
  - Enable this flag if every supplier contract must be assigned to a business.
  - Disable this flag if you want to allow supplier contracts without a business (branch-level only).
  - **Recommendation:** Enable this flag if you use the business structure. Disable only if you operate as a single entity without business divisions.
  **SOPRetBT** - Retain Branch Transfer supplier on special buy-in supplier selections
  - Enable this flag to keep the internal branch transfer supplier when applying a supplier contract (the contract cost is still applied, but the supplier remains as the internal branch).
  - Disable this flag to replace the supplier with the contract supplier when applying special buy-in pricing.
  - **Recommendation:** Disable this flag unless you specifically need to track internal branch transfers separately from external supplier purchases.
3. Click **Save** to commit the flag changes.
4. Navigate to **System Administration > System Setup > Configuration > System Settings - General**.
5. Locate the following setting:
  **SuppContPrefix** - Supplier Contract Number Prefix
  - Enter an alphanumeric prefix to be added to the beginning of each automatically generated supplier contract number.
  - Example: Enter "SC" to generate contract numbers like "SC00001", "SC00002".
  - Leave blank if you don't want a prefix.
6. Click **Save** to commit the general setting changes.

### Result

System settings are now configured to control supplier contract behaviour. If **AutoSuppContNo** is enabled, new contracts will automatically receive sequential numbers with your chosen prefix. If **SuppContBusiness** is enabled, you'll be required to select a business when creating contracts.

### Important Notes

- Users must log out and back in for flag changes to take effect in their sessions.
- If you change **AutoSuppContNo** from disabled to enabled, existing manually-entered contract numbers are not affected, but new contracts will use auto-numbering.
- The **SuppContPrefix** setting only applies to auto-generated numbers. Manual contract numbers can use any format.

---

## Define Business Names

Create the business names that will be used to organise your branches and control contract availability. A business represents a logical grouping of branches—this might be different trading entities, geographic regions, or operational divisions.

### Configuration Steps

1. Navigate to **System Administration > System Setup > Company & Branch > Brand Maintenance**.
2. Click **Add** to create a new business name.
3. In the **Brand ID** field, enter the business name.
  - Use a short, recognisable name (e.g., "NSW Operations", "Retail Division", "QLD Stores").
  - This is the name users will see when selecting businesses in supplier contracts.
4. In the **Description** field, enter a longer description of the business.
  - Provide additional context about what this business represents.
  - Example: "New South Wales retail and trade branches".
5. Click **Save** to create the business.
6. Repeat steps 2-5 for each business in your organisation.

### Result

Business names are now defined and available for assignment to branches. These business names will appear in the **Business** dropdown when creating supplier contracts.

> ⚠️ ### Important Notes
> ⚠️ 
> ⚠️ - You cannot delete a business that is already assigned to branches. You must first remove the business assignment from all branches.
> ⚠️ - Business names (Brand IDs) must be unique across your Frameworks instance.
> ⚠️ - Consider your contract management needs when defining businesses—contracts can only be restricted to branches within a single business.

> ✅ For complete field definitions, see <u>[Brand Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28401812)</u>.

---

## Assign Businesses to Branches

Link each branch to its appropriate business. This assignment controls which supplier contracts are available at each branch and determines the business context for users logging in to that branch.

### Configuration Steps

1. Navigate to **System Administration > System Setup > Company & Branch > Branch Maintenance**.
2. Locate the **Brand ID** column in the branch list.
3. For each branch, click in the **Brand ID** field and select the appropriate business from the dropdown menu.
  - Choose the business that this branch belongs to operationally.
  - This determines which supplier contracts with that business assignment will be available at this branch.
4. Continue assigning businesses to all relevant branches.
5. Click **Save** to commit the changes.

### Result

All branches are now assigned to their respective businesses. When users create supplier contracts, they can select a business, and the contract will only be available at branches assigned to that business.

> ⚠️ ### Important Notes
> ⚠️ 
> ⚠️ - A branch can only be assigned to one business.
> ⚠️ - If you leave a branch's **Brand ID** blank, supplier contracts with no business assignment can still be used at that branch (if the **SuppContBusiness** flag is disabled).

> ✅ For complete field definitions, see <u>[Branch Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28390994)</u><u>.</u>

---

## Configure User Access

Configure which branches users can access and whether they can work across multiple branches. This controls whether users can see and apply supplier contracts from different branches within their business.

### Configuration Steps

1. Navigate to **System Administration > Users & Security > User Maintenance**.
2. Search for and open the user you need to configure.
3. In the **Home Branch** field, select the user's primary branch.
  - This is used as the default branch if **Multi Branch** is not enabled.
  - This determines the business context if the user only accesses one branch.
4. In the **Branch List** field, enter the branch IDs the user can access, separated by commas.
  - Example: "01,02,05,07" for branches 1, 2, 5, and 7.
  - These branches can be from the same business or different businesses.
  - Only list branches the user genuinely needs access to.
5. Enable the **Multi Branch** checkbox to allow the user to access multiple branches.
  - When enabled, the user can switch between branches in the **Branch List**.
  - When disabled, the user can only access their **Home Branch**.
6. Enable the **Branch List Restricted** checkbox to strictly limit the user to only the branches in the **Branch List**.
  - When enabled, the user cannot access any branch not explicitly listed.
  - When disabled, the user may have broader access based on security group settings.
7. Click **Save** to commit the changes.
8. Instruct the user to log out and log back in for the changes to take effect.

### Result

Users now have access to the appropriate branches and can see supplier contracts available for those branches. Users with access to multiple branches can switch between them and apply contracts specific to each location.

> ⚠️ ### Important Notes
> ⚠️ 
> ⚠️ - **Important:** Users must log out and back in for branch access changes to take effect.
> ⚠️ - If a user needs to work with supplier contracts across multiple branches, they must have those branches in their **Branch List** and **Multi Branch** enabled.
> ⚠️ - The interaction between **Home Zone**, **Multi Zone**, **Branch List**, and **Branch List Restricted** affects access. See the [Branch List Matrix](https://kb.myframeworks.com.au/space/FRAM/106692610/User+Maintenance#1.-General-User-Details) in User Maintenance for complex scenarios.
> ⚠️ - Users can be assigned to branches from different businesses, allowing them to manage contracts across business divisions if needed.

> ✅ For complete field definitions, see <u>[User Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28378032)</u><u>.</u>

> ✅ ## Related Information
> ✅ 
> ✅ - [Understanding Supplier Contracts for Customers](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/492077058)
> ✅ - [Create a Supplier Contract](https://sterlandsupport.atlassian.net/wiki/spaces/CO/pages/492109836)
> ✅ - [Apply a Supplier Contract to Sales Quotes and Orders](https://sterlandsupport.atlassian.net/wiki/spaces/CO/pages/490733604)
> ✅ - [Assign Customers to a Supplier Contract](https://sterlandsupport.atlassian.net/wiki/spaces/CO/pages/491814919)
> ✅ - [Assign Branches to a Supplier Contract](https://sterlandsupport.atlassian.net/wiki/spaces/CO/pages/492470279)
> ✅ - [Brand Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28401812) (Layout and Field guide)
> ✅ - [Branch Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28390994) (Layout and Field guide)
> ✅ - [User Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28378032) (Layout and Field guide)
> ✅ - [Supplier Contract Dashboard](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28401920) (Layout and Field guide)
> ✅ - [Supplier Contract Maintenance](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28391886) (Layout and Field guide)