The Scenario
The hair salon switched systems last month. Before the cutover, someone exported the full customer database from the old CRM into an Excel table — 200 rows, with customer_id, name, email, city, and a note field for preferences. The loyalty point balances are in a separate column.
Loyverse has been live for four weeks. The customer table is still empty. Staff have been re-entering customers manually every time a returning client comes in.
The bad version:
- Open Loyverse's customer editor. Enter each customer one at a time: name, email, city, loyalty points.
- 200 customers. Maybe three minutes each if you're efficient.
- At customer 70, a front-desk staff member says "we've already entered about 40 of these manually over the past few weeks." Now the import might create duplicates for those 40.
A migration that was supposed to happen before go-live is now a four-hour cleanup project that might make the problem worse if not done carefully.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent that lives inside your Excel workbook. It reads your customer table and upserts all records into Loyverse — creating new ones and updating existing ones by email match — in a single operation.
Open the SheetXAI sidebar and paste this prompt:
Excel table has customer_id, name, email, city, and note for 200 existing customers — upsert all of them into Loyverse using email as the match key
What You Get
- All 200 customer records upserted into Loyverse: existing customers updated, new ones created.
- Email used as the deduplication key — if a customer with that email already exists in Loyverse, their record is updated; if not, a new profile is created.
- Each row's result written to column F: 'Created', 'Updated', or the error returned.
What If the Data Is Not Quite Ready
The name column has full names that need splitting into first and last
Excel customer table — split the name column at the first space to derive first_name and last_name before creating or updating records in Loyverse; write the derived names back to columns G and H for reference
Loyalty points are in a separate worksheet that needs to be joined
Combine 'Customers' worksheet (customer_id, name, email, city) with 'LoyaltyPoints' worksheet (customer_id, points) by joining on customer_id — then upsert all combined records into Loyverse with email as the match key
Some email addresses look malformed and should be validated first
Excel customer table — validate the email column: flag any rows where email doesn't contain @ in column F with 'Invalid email', skip those rows, then upsert all remaining customers into Loyverse
Full migration with dedup in one shot
Excel customer table — trim all text columns, validate emails, flag invalid ones in column F and skip them, check each valid email against existing Loyverse customers, create new records or update existing ones, write 'Created' / 'Updated' / error in column F
Try It
Get the 7-day free trial of SheetXAI and open your customer migration workbook, then ask SheetXAI to upsert all records into Loyverse with email-based dedup so you avoid creating duplicates. See also export customers for CRM and the Loyverse integration overview.
