# Data migration tools and integration patterns

*Agentforce Sales Consultant Study Guide · Data Management · Last updated October 15, 2026 · https://www.certifyforce.com/study-guide/agentforce-sales-consultant/data-management/data-migration-tools-and-integration-patterns*

Pick the Data Import Wizard or Data Loader/Bulk API for a sales data load, plan a migration (clean, test, parents first, external IDs and upsert, automation off), and match an integration requirement to the right Salesforce integration pattern or Salesforce Connect adapter.

- Certification: Salesforce Agentforce Sales Consultant
- Exam section: Data Management
- Study guide: https://www.certifyforce.com/study-guide/agentforce-sales-consultant

**Official exam objective:**

> Explain the use cases and considerations for data migrations and integrations.

## What the exam expects

- Choose the Data Import Wizard or Data Loader (Bulk API) from the object, the volume, who runs the load and whether it repeats.
- Diagnose Data Import Wizard symptoms: unsupported objects, unmapped columns, case-sensitive Name matching, CSV-only files, one job at a time.
- Lay out a migration plan for Agentforce Sales (formerly Sales Cloud) data: clean at the source, test load, parents before children, external IDs with upsert, automation suspended during cutover.
- Match an integration requirement to Request and Reply, Fire and Forget, Batch Data Synchronization, Remote Call-In or Data Virtualization.
- Pick the Salesforce Connect adapter (OData, cross-org, Salesforce Archive) when data must stay outside the org.

Key terms: **external ID** (a custom field holding the source system's unique key, used by upsert to match records); **upsert** (insert when no match, update when one match); **Bulk API** (asynchronous loading for thousands to millions of records); **integration pattern** (a reusable design for one integration scenario); **external object** (a Salesforce Connect object whose rows are read from another system at run time).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Wizard objects | Accounts, contacts, leads, solutions, campaign members, person accounts, custom objects; no opportunities | [Data Import Wizard](https://help.salesforce.com/s/articleView?id=sf.data_import_wizard.htm&language=en_US&type=5) |
| Wizard volume and format | Up to 50,000 records at a time; CSV only | [Data Import Wizard](https://help.salesforce.com/s/articleView?id=sf.data_import_wizard.htm&language=en_US&type=5) |
| Wizard concurrency | Don't run more than one import job at a time, even from separate browser windows | [Data Import Wizard](https://help.salesforce.com/s/articleView?id=sf.data_import_wizard.htm&language=en_US&type=5) |
| Unmapped columns | Unmapped fields aren't imported | [Import Data with the Data Import Wizard](https://help.salesforce.com/s/articleView?id=sf.import_with_data_import_wizard.htm&language=en_US&type=5) |
| Custom object matching | Match by Name is case-sensitive for updates and upserts | [Import Data with the Data Import Wizard](https://help.salesforce.com/s/articleView?id=sf.import_with_data_import_wizard.htm&language=en_US&type=5) |
| Data Loader scope | All objects; command line (Windows only) for automated operations | [Data Loader](https://help.salesforce.com/s/articleView?language=en_US&id=xcloud.data_loader_about.htm&type=5) |
| Upsert outcomes | No match creates, one match updates, multiple matches error | [upsert()](https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_calls_upsert.htm) |
| Bulk API batch size | User-defined batches, 10,000 records max; failed records retried automatically | [Load Your Data (Trailhead, Large Data Volumes)](https://trailhead.salesforce.com/content/learn/modules/large-data-volumes/load-your-data) |
| Master-detail children | Can't load if the parents don't already exist | [Load Your Data (Trailhead, Large Data Volumes)](https://trailhead.salesforce.com/content/learn/modules/large-data-volumes/load-your-data) |

## Check yourself

- Why does a contact load through the Data Import Wizard leave a custom field blank even though the CSV had that column?
- When can an add-and-update wizard run on a custom object create new records instead of updating?
- Which integration pattern fits a nightly two-way feed of products in and closed orders out?
- Why move an 8-million-record nightly SOAP API job to Bulk API?

## Sources

- [Data Import Wizard](https://help.salesforce.com/s/articleView?id=sf.data_import_wizard.htm&language=en_US&type=5)
- [Import Data with the Data Import Wizard](https://help.salesforce.com/s/articleView?id=sf.import_with_data_import_wizard.htm&language=en_US&type=5)
- [Mastering Data Import (Trailhead)](https://trailhead.salesforce.com/content/learn/modules/lex_implementation_data_management/lex_implementation_data_import)
- [Data Loader](https://help.salesforce.com/s/articleView?language=en_US&id=xcloud.data_loader_about.htm&type=5)
- [Insert, Update, or Delete Data Using Data Loader](https://developer.salesforce.com/docs/atlas.en-us.dataLoader.meta/dataLoader/inserting_updating_or_deleting_data.htm)
- [upsert()](https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_calls_upsert.htm)
- [Load Your Data (Trailhead, Large Data Volumes)](https://trailhead.salesforce.com/content/learn/modules/large-data-volumes/load-your-data)
- [Integration Patterns](https://architect.salesforce.com/docs/architect/fundamentals/guide/integration-patterns.html)
- [Access External Data With Salesforce Connect](https://help.salesforce.com/s/articleView?id=sf.salesforce_connect.htm&language=en_US&type=5)
- [Salesforce Connect Adaptor for Salesforce Archive](https://help.salesforce.com/s/articleView?id=sf.salesforce_connect_archive.htm&language=en_US&type=5)
- [Data Management Best Practice Guide](https://help.salesforce.com/s/articleView?id=000393223&language=en_US&type=1)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 19 linked practice questions, and unlimited timed mock exams are included with the Agentforce Sales Consultant pack (USD $19): https://www.certifyforce.com/practice-exams
