---
title: "Contract Import/Export"
canonical: "https://kb.myframeworks.com.au/space/FRAM/28401930/Contract%20Import%2FExport"
format: markdown
---
The **Contract Import/Export** function allows you to bulk import and export contract data in Frameworks. The screen supports multiple contract data types, each with its own set of fields and filter options.

Common uses for this function include:

- Updating contract pricing details across multiple contracts.
- Importing future pricing changes for contracts in bulk.
- Exporting contract volume discount details for review or external reporting.
- Bulk updating customer contract assignments by customer group.

> ✅ Refer to [Contracts](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28391896) for managing individual contract records.

> This process involves downloading a template CSV file, editing it with your required data, and uploading it back to Frameworks for processing. It is recommended to run the import with the **Report Only** option enabled first to validate your data before committing changes. Duplicate contract names are not permitted. The system checks for existing contract names during import and rejects duplicates.

---

## Accessing Contract Import/Export

To access the **Contract Import/Export** function:

1. Click the **Frameworks Menu** and navigate to **Special Pricing > Maintenance > Contract Import/Export** from the navigation tree.
2. The **Import Criteria** tab, with the **Contract Details **type, opens by default.

![image-20260408-231041.png](media://f0061e16-db3b-4182-bda2-d81f70a8e382)

---

## Selecting an Import/Export Type

Before downloading a template or uploading an import, select the type of contract data you want to work with from the **Type** drop-down menu on the **Import Criteria** tab.

The available types are:

- **Contract Details:** Import or export contract detail records including pricing, dates and product assignments.
- **Contract Volume Discount:** Import or export contract volume discount details including quantity breaks, discount percentages and GP%.
- **Contract Customers:** Import or export customer-to-contract assignments including default contract and auto select settings.
- **Contract Future Prices:** Import future pricing for contracts including future sell, cost, discount% and GP% values.

The selected type determines the available fields in the **Update Field** list and the filter options for downloading data.

### Update Fields by Type

Each type provides a different set of fields in the **Update Field** list:

- **Contract Details:** Customer (int), Branch (int), Contract (text), Start Date (date), End Date (date), Contract Type (text), Pricing Rule (text), Product (text), Customer Product (text), Sell (dec), Discount% (dec), GP% (dec), Quantity (dec), Contract Cost (dec), Auto Select (logical), Supplier (text), Supplier Reference (text), Expiry Date (date), Comments (text).
- **Contract Volume Discount:** Contract (text), Customer (int), Customer Name (text), Product (text), Description (text), Branch (int), Quantity Break (int), Discount% (dec), GP% (dec), Sell Price (dec).
- **Contract Customers:** Company (int), Contract (text), Customer (int), Default Contract (logical), Auto Select (logical).
- **Contract Future Prices:** Contract (text), Review Date (date), Product (text), Future Sell (dec), Future Cost (dec), Future Disc% (dec), Future GP% (dec), Delete (logical).

---

## Downloading a Template

Downloading a template is recommended as it provides the correct CSV file format with the appropriate column headings for your import.

![image-20260408-231848.png](media://c2e4be37-3b6c-470e-ad7c-90858fbe0445)

### Steps

1. From the **Type** drop-down menu, select the contract data type you want to export.
2. From the **Update Field** list, select the fields you want to include in your template (hold the CTRL key to select multiple fields).
3. To export existing data, apply the available filters for your selected type:
  - **Contract Details:** Filter by **Customer**, **Contract**, **From Customer Group** to **To Customer Group** range and **From Product Group** to **To Product Group** range.
  - **Contract Volume Discount:** Filter by **Customer, Contract**, and enable the **Fixed Price** checkbox to limit to fixed price contracts.
  - **Contract Customers:** Filter by **Contract** and **From Customer Group** to **To Customer Group** range.
  - **Contract Future Prices:** Filter by **Contract**.
4. Click **Download Template** to download the CSV file with your selected data and fields.

Enable the **Download Template Only (No data)** checkbox to download a blank template file with column headings only. When enabled, all filter fields become read-only and the template file downloads instantly.

When a Customer ID is entered for National and Job contracts, the export includes contracts where the customer appears in the contract header or in the customer list.

---

## Uploading the Import

Once you have edited your CSV file with the contract data you want to import, you can upload it to Frameworks.

![image-20260408-231937.png](media://cee340b9-df99-4b98-813a-a54a4ef27519)

### Steps

1. From the **Type** drop-down menu, select the contract data type that matches your CSV file.
2. From the **Update Field** list, select which fields you want to update from your CSV file (hold the CTRL key to select multiple fields).
3. Click the **Upload CSV** button to open the **File Upload** window.
  1. Click the **Browse** button to browse your PC.
  2. Select your edited CSV file.
  3. Click **Open** to confirm the file selection.
  4. Click **Upload** for the file to be ready for import.
  5. The filename displays in the **Import File** area once uploaded.
4. Choose to enable or disable the **Report Only** checkbox.
5. Click **Submit** to send the import task to the Task Scheduler for processing.

When the **Report Only** checkbox is enabled, Frameworks validates your data and produces a report of any errors that need to be corrected in your CSV file before the actual import can proceed.

---

## Import Rules

- Contract names must be unique within Frameworks. The import checks for duplicate contract names and rejects any that already exist on another contract.
- When importing with the **Contract Customers** type, only existing customer records are updated. The import does not create new customer list records.
- Fields included in the import file but not selected in the **Update Field** list are ignored during processing.
- The **Type** selected on the **Import Criteria** tab must match the structure of your CSV file. Importing a file with the wrong type selected produces errors.

---

## Schedule and Output Tabs

The import and export tasks are recommended to be run as a once-off by clicking the **Submit** button on the **Import Criteria** tab. For large imports, the task can be scheduled to run after hours via the **Schedule** tab.

After a task is submitted, the screen navigates to the **Output** tab where you can view any generated reports, including validation results from **Report Only** runs and import processing summaries.

If the **Report Only** option was enabled and there were no errors in the generated report, repeat the upload process with **Report Only** disabled to commit the changes. If there were errors, resolve them in your CSV file before importing.

> ✅ Refer to [Scheduled Task - Scheduling and Output](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28402256) for information on scheduling tasks and viewing output.

> ✅ ## Related Information
> ✅ 
> ✅ - Refer to [Contracts](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28391896) for information on managing individual contract records.
> ✅ - Refer to [Contract Future Price Review](https://sterlandsupport.atlassian.net/wiki/spaces/FRAM/pages/28405466) for reviewing and applying future contract prices.