How-To Guides

How to Import Contacts, Companies and Deals Into Senitix CRM

Teams moving a spreadsheet or another CRM's export into Senitix CRM face two decisions: what each file should become, and how to run the first import without surprises.

8 min read

Key takeaways

  • Import in this order: companies first, then their contacts, then the deals tied to both, then any activities you want carried over.
  • Decide per source file whether it goes in as leads (a list nobody has worked yet) or straight to contacts, accounts and deals (a relationship with a deal underway); mixing them means re-qualifying deals that were already moving.
  • Create pipelines, stages and any custom fields before importing: Pipeline and Stage are matched by name, and a row that does not match is rejected and logged, not dropped into a default stage.
  • Choose create, update or upsert deliberately: upsert is what makes re-running the same export safe while a migration runs over several days.
  • Senitix CRM’s Duplicates view finds likely duplicates by email and phone, but catching one is a manual review today, both during import and after; automatic matching rules are still on the roadmap.
  • Run a small test batch (thirty rows in the example) before the full file, and keep each file under the current limits of 50 MB and 50,000 rows per import.

To import contacts, companies and deals into Senitix CRM, bring records in this order: companies first, then their contacts, then the deals tied to both, then any activities you want carried over. Run a small test batch before the full file. Every plan, including Free, imports and exports records as CSV or Excel.

This is the Senitix-specific half of the job. For the general spreadsheet prep (splitting combined name columns, standardizing phone and date formats, removing merged cells), see how to import contacts into a CRM from a spreadsheet first; that guide covers cleanup once, and this one assumes it’s done. What follows is specific to Senitix CRM: which object each row becomes, how fields map, what an import mode does, and what happens to a duplicate.

Do your records go in as leads, or straight to contacts and deals?

Senitix CRM keeps leads separate from contacts, accounts and deals: a lead is an unqualified prospect, and qualifying it creates the contact, the account and the deal in one step. That split matters for import, because it decides which object your rows become:

  • Import as leads when the list hasn’t been worked yet (a trade show scan, a purchased list, a marketing export). Each row becomes a lead with a source and a status, ready for someone to qualify.
  • Import straight to contacts, accounts and deals when the relationship already has a deal underway: most CRM migrations fall here, since the deals in your old system are already qualified and mid-conversation.

Mixing the two in one file usually means someone re-qualifies deals that were already moving, so decide which each source file is before you map a single column.

How do spreadsheet columns map to Senitix CRM fields?

The import screen shows your header row next to the available fields and maps the obvious ones on its own (Email to Email, Phone to Phone), leaving the rest for you to assign.

Spreadsheet column Senitix CRM field
Company Name Account name
Contact First / Last Name Contact first name, last name
Email Contact email (the match key for contacts)
Lead Source Source field on the lead
Deal Amount, Close Date Standard deal fields
Pipeline, Stage Deal’s pipeline and stage (both required, matched by name; create them first)
Territory, Product Line, etc. A custom field you create for that purpose, before the import

Set up your pipeline and its stages before you import deals; see how pipelines and stages work. Pipeline and Stage are both required columns, matched by name, not guessed. A value that doesn’t match an existing pipeline or stage name isn’t dropped into a default one: the row is rejected and logged with the value it couldn’t match, so you fix the spreadsheet and re-run rather than discover a deal quietly sitting in the wrong stage.

Should you import as create, update, or upsert?

Three modes decide what happens when a row’s match key already exists as a record. That key isn’t something you pick per import. It’s fixed per object (email for a contact, company name for an account, and deal name plus account and pipeline together for a deal), so getting those columns exactly right is what makes update and upsert mode work correctly:

  • Create only. Every row becomes a new record; a row that matches an existing one is rejected or skipped. Safest for a first, one-time import.
  • Update only. Every row has to match an existing record, which it then overwrites. Useful for a field refresh (updating territory or tier on records already in the system), where a new record would be a mistake.
  • Upsert (create and update). A row that matches updates the record; a row that doesn’t creates one. This is what makes re-running the same export from your old system safe as your migration continues over several days.

Whichever mode you choose, the import screen applies file-size and row-count limits, so split a bigger export into batches by record type or by date range rather than one file for everything.

What happens to duplicate contacts or companies when you import?

An import doesn’t stop a genuine duplicate from being created if it doesn’t match on the object’s match key: a company typed two ways, or a contact under a second email address, both come in as new records. Senitix CRM’s Duplicates view finds likely duplicate leads, contacts and accounts by email and phone so you can review and merge them, but that review is a manual step today, both during an import and afterward; automatic matching rules that flag a duplicate the moment it’s created are on the roadmap, not available yet. The most reliable fix is still upstream: dedupe the source spreadsheet before you import, then open the Duplicates view once the batch is in to catch what slipped through.

What should you check once the import finishes?

  • Record counts. Rows in the file should roughly match records created plus updated: a large gap usually means a mapping error.
  • Five records by hand. Open a handful of imported deals and confirm the stage, amount and owner landed where you expected.
  • Required fields. A deal with no owner won’t show up on anyone’s board; check that the owner column mapped correctly before you call the batch done.
  • The Duplicates view. Scan it while the batch is still easy to recognize, rather than weeks later when a flagged pair could be from anywhere.

Can you bring call and meeting history with you, or just the records?

Activities (calls, meetings and tasks) import the same way contacts and deals do, as their own file mapped to the contact or deal they belong to. Give each row its real date rather than letting everything land dated “today,” or a year of history reads as a single burst of activity on one afternoon instead of the pattern it actually was.

Files attach to any record on every plan, so contracts, proposals and other documents sitting in a shared drive can go on the deal or account they belong to. A connected mailbox and calendar can pull in existing email and meetings, not just new ones going forward. Each rep sets how far back to sync. Decide that window before you connect it, since a wide one pulls in a rep’s whole history at once rather than a curated set of customer threads.

Example: a 14-rep specialty-chemicals distributor near Kansas City, MO (illustrative, not a real company) moves from a shared spreadsheet with roughly 2,200 contacts, 500 companies and 340 open deals split across two sales motions (new accounts and repeat buyers on standing terms). They set up two pipelines first, matched the spreadsheet’s status column to each pipeline’s stage names exactly, then imported companies, contacts and deals in that order as three files linked by an account-ID column already in their sheet. The test batch of thirty rows caught one thing: a “Preferred Carrier” column nobody had mapped, which would have silently dropped for all 2,200 rows on the full run.

How does importing work in Senitix CRM?

In Senitix CRM, every plan, including Free, runs contact, company and deal imports as a job with a mapping preview before anything is written, and lets you choose create, update or upsert for standard modules. A column with no matching standard field needs a custom field: create it on the module first, then map the column to it (the pricing page lists custom-field limits by plan). The full record model (what an account, a contact and a deal each hold once your data is in) is covered in how a CRM database is structured. Every plan also exports the same records back out, so your data isn’t locked in where only Senitix can read it.

If you’re still deciding whether to move at all, compare plans and start on Free. Importing your existing file is one of the first things to do once a workspace exists, and a thirty-row test batch is the quickest way to see how your own data maps.

Frequently asked questions

Can you undo an import in Senitix CRM?

Treat an import as something you cannot cleanly reverse. Each import runs as a job you can review afterward, but the import doesn’t keep the old value once it writes an update to an existing record. That is exactly why the test-batch step matters more than an undo button.

Do leads, contacts and deals have to be separate files?

Not strictly, but keeping them separate makes the companies-then-contacts-then-deals order easier to follow and easier to test in small batches. A combined file works if every row is already tagged with which object it becomes and the columns for all three are cleanly separated.

What happens if a Stage value in my file doesn’t match an existing stage name?

The row is rejected, not guessed at: Senitix CRM skips that deal and logs an error naming the value it couldn’t match, rather than dropping it into a default stage. Set up the pipeline and its exact stage names before importing, match the spreadsheet’s status values to those names precisely, including capitalization, then re-run just the corrected rows.

Can you import custom fields into Senitix CRM?

Yes. Create the custom field first, on the module it belongs to, then map your spreadsheet column to it during import. A column with no field to receive it has to wait or go into a note instead. The pricing page lists custom-field limits by plan.

Keep reading

All articles

Ready to grow with Senitix?

Connect with customers, win more deals and grow repeat business, all on one platform.

No credit card required.