> ## Documentation Index
> Fetch the complete documentation index at: https://support.fieldko.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Import and Update Data

> Load stores, products, price books, ranging, call cycles, and visits into FieldKo in the right order, with the fields FieldKo needs.

When you go live with FieldKo, or add a new region or range, you load stores, products, prices, and plans in bulk. Use this page to choose an import tool, load objects in the right order, and fill in the fields FieldKo needs so records reach reps' devices and pass FieldKo's checks.

## User Permissions Needed

| To do this | You need |
| - | - |
| Import data with the Data Import Wizard | Create access to the objects you import. For accounts and contacts, also the import permissions listed in Salesforce Help. |
| Load data with Data Loader | API Enabled permission, plus create and edit access to the objects you load |
| Create products, price books, and contracts | FieldKo Manager Permission Set, or equivalent object access |

## Choose a Tool

| Tool | Best For |
| - | - |
| Data Import Wizard | Smaller loads of accounts, contacts, and FieldKo objects from your browser, with duplicate matching |
| Data Loader | Large loads, updates and upserts, deletes, and loads that set relationships by external ID |
| Middleware or Bulk API | Ongoing loads from your ERP. See [Integrate FieldKo with Other Systems](/platform/integrations/integrate). |

For details, see [Choose a Method for Importing Data](https://help.salesforce.com/s/articleView?id=sf.import_which_data_import_tool.htm\&type=5) in Salesforce Help and the [Data Loader Guide](https://developer.salesforce.com/docs/atlas.en-us.dataLoader.meta/dataLoader/). Import tools list FieldKo objects and fields by API name; you can match them to the labels on this page in Setup > Object Manager.

## Before You Begin

* **Test in a sandbox first.** FieldKo's triggers and flows run on every record you load, and some loads, like visits, depend on call cycles and settings. Load a sample in a sandbox, sync a test rep, and check what the rep sees. See [Manage Releases](/platform/data/releases).
* **Add external ID fields.** FieldKo doesn't include external ID fields on accounts, products, or price books. Add your own, such as **ERP Account Number**, so you can upsert and link records without Salesforce IDs. See [Use External IDs and Upsert](/platform/integrations/integrate#use-external-ids-and-upsert).
* **Turn on your bypass.** Run the load as a user with your automation bypass permission so your own flows, such as manager alerts, don't fire. See [Bypass Your Flows for Integration Users](/platform/automate/design-automation#bypass-your-flows-for-integration-users).
* **Back up first.** Before you update or delete existing records, export them. See [Export FieldKo Data and Photos](/admin/export-data).

## Load in This Order

Load parents before the records that look them up. Work through the objects in this order:

| Step | Object | Required or Needed by FieldKo |
| - | - | - |
| 1 | **Account** | **Account Name**; a record type selected in **Account Record Types for Visit Planning**; **Account Owner** set to the rep, or the rep on the account team; shipping address, with coordinates if you have them |
| 2 | **Contact** | **Last Name** and **Account** |
| 3 | **FieldKo Product Category** (optional) | Name, and an optional parent category |
| 4 | **FieldKo Product** | **Product Name**; **Status** set to **Active** |
| 5 | **FieldKo Pricebook** | Name; **Is Active** selected; **Start Date** and **End Date** that include today |
| 6 | **FieldKo Pricebook Entry** | **FieldKo Pricebook** and **FieldKo Product** (both required); **Unit Price** |
| 7 | **FieldKo Contract** | **FieldKo Pricebook** (required) and **Account**, to give the account its prices |
| 8 | **Product Set** and **Product Set Line Item** | A unique product set name; on each line, **Product Set** and **FieldKo Product** (both required) |
| 9 | **Ranging Contract** | **Account** and **Product Set** (both required); **Ranging Contract Type** of **CORE** or **FULL**, at most one of each per account |
| 10 | **Call Cycle** | Created on the **Call Cycles** tab or by the scheduled job instead of imported. See [Call Cycles](#call-cycles). |
| 11 | **Visit** | **Account**, **Sales Representative**, **Planned Start**, and **Planned End**, with dates inside an active call cycle for the rep |

For what each object does, see [Set Up Products, Ordering, and Ranging](/admin/products-ordering-ranging) and [FieldKo Data Model](/platform/data-model).

### Accounts

Accounts decide which reps get which stores, so check these fields carefully:

* **Record type:** If you leave it blank, FieldKo sets the default record type for your profile, or **Store** if there's none. Only accounts with a record type selected in **Account Record Types for Visit Planning** are used for visit planning.
* **Owner and account team:** By default, a rep gets the accounts they own or where they're on the account team. See [Accounts in Scope](/admin/offline-data#accounts-in-scope).
* **Coordinates:** The app compares the rep's location with the account's coordinates at check-in. Import shipping latitude and longitude if you have them. Otherwise, fill them in afterward. See [Where Account Coordinates Come From](/admin/call-cycles-and-visits#where-account-coordinates-come-from).

### Call Cycles

Call cycles have strict rules: they must cover the fiscal year without gaps, and you can't change their dates or rep after you save. Create them on the **Call Cycles** tab, or schedule `CallCycleBatchscheduler`, instead of importing them. See [Call Cycles](/admin/call-cycles-and-visits#call-cycles).

### Visits

When you import visits, FieldKo checks each one as if you'd created it in Salesforce. A visit without an account, a sales representative, or an active call cycle that covers its date fails with the messages in [Visit Rules Enforced by Salesforce](/admin/call-cycles-and-visits#visit-rules-enforced-by-salesforce). FieldKo sets each visit's owner to its sales representative.

For most plans, it's faster and safer to create visits with [field campaigns](/managers/field-campaigns) or [recurring visits](/managers/plan-visits) than to import them.

## After You Load

1. Check a sample of records in Salesforce, and fix any rows that failed. Your tool's error file shows each failed row with its message.
2. Ask a test rep to sync, and check that the accounts, prices, and visits appear in the app.
3. If you moved accounts between reps, ask the reps who lost accounts to run [Reset Sync](/sync/reset-sync). Records that move out of a rep's scope stay on the device until they reset.

<Note>
  To retire products or price books, deactivate them instead of deleting them. Deleting a product also deletes its price book entries, and breaks the links from historical orders and ranging. See [Keep Data Clean](/platform/data/data-quality).
</Note>

## See Also

* [Integrate FieldKo with Other Systems](/platform/integrations/integrate)
* [Export FieldKo Data and Photos](/admin/export-data)
* [Keep Data Clean](/platform/data/data-quality)
* [Add a New Store](/platform/day-to-day/add-a-store)
* [Add a New Product or Range](/platform/day-to-day/add-a-product)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.