The Scenario
You are a sales ops manager. Your team finished a data enrichment exercise and the output is an Excel workbook with 80 new target accounts: company name, website, primary contact name, and contact email, one row per account.
Outreach starts Monday. It is Friday afternoon. Every one of these accounts needs to exist in Salesflare, with the contact linked to the right account, before anyone can start sending.
The bad version of this Friday:
- Open Salesflare, click "Add Account," type the company name, paste the website, save
- Click "Add Contact," type the name, paste the email, find the account in the dropdown, link them, save
- Repeat 80 times
- Around account 40, you link a contact to the wrong account and do not notice until a rep calls the wrong person
- You leave the office at 7 PM with 50 of 80 done and a correction list for Monday morning.
The fast version is one prompt before lunch.
The Easy Way: One Prompt in SheetXAI
SheetXAI reads every row in the workbook and creates the Salesflare account and contact in the right order, so you do not have to touch the CRM interface once.
Open the SheetXAI sidebar and type:
For each row in the "New Accounts" tab of this workbook, create a Salesflare account using company name from column A and website from column B. Write the returned account_id to column E. Then create a contact using name from column C, email from column D, and the account_id from column E. Write the returned contact_id to column F.
SheetXAI creates each account, writes the account_id back, then creates the contact linked to that account, and writes the contact_id back. Every contact is linked to the right account because the ID comes from the row it just created.
What You Get
A completed workbook with two new columns:
- Column E — the Salesflare account_id for every row
- Column F — the Salesflare contact_id for every row
Every contact is linked to the account created from the same row. No manual linking, no mis-links.
What If the Data Is Not Quite Ready
Enrichment exports are rarely CRM-ready.
When some rows are missing a website
The enrichment script did not find a website for every company. You want those accounts created anyway, but flagged.
For each row in the "New Accounts" tab, create a Salesflare account using company name and website. If website is blank, create the account without a website and write "no website" to column G. Then create the contact and write both IDs as normal.
When emails are duplicated across rows
The enrichment pulled the same contact email for two different companies. A duplicate contact in Salesflare will cause problems downstream.
Before creating contacts, check column D for duplicate email addresses. If a duplicate exists, write "DUPLICATE EMAIL" to column F for that row and skip creating the contact. Create all accounts and non-duplicate contacts normally.
When you want to check whether an account already exists before creating it
Some of these targets may already be in Salesflare from previous prospecting.
For each row in the "New Accounts" tab, check whether a Salesflare account with a matching company name already exists. If it does, write the existing account_id to column E and skip creation. If not, create it and write the new id. Either way, create the contact linked to that account_id.
When company names are inconsistent from the enrichment tool
Mixed capitalization will create messy CRM records.
Normalize company names in column A to title case before creating any records. Then for each row, create the Salesflare account and contact, writing account_id to column E and contact_id to column F.
The pattern: the workbook drives the creation, the IDs come back to the workbook, and every contact is linked to the right account.
Try It
Get the 7-day free trial of SheetXAI and open any workbook with account and contact data, then ask it to push the rows into Salesflare. The Salesflare integration is included in every SheetXAI plan. See also how to bulk-create opportunities from a workbook or the Salesflare in Excel overview.
