Skip to main content
You almost certainly have your customers somewhere already: an export from your old tool, a booking system, a spreadsheet a receptionist has been keeping, the contacts on a phone. Hand it to Hamla and it becomes something you can segment, message and measure.

What you need

  • The list, in any common shape — CSV, a spreadsheet, TSV, JSON, or exported phone contacts
  • An honest answer to one question: do these people expect to hear from you?

Do it

Attach the file, or paste the rows straight into the conversation.
Import this list of customers — here’s the file
Hamla reads the columns, works out which is a name and which is a phone, tidies the data — phone numbers into international format, countries filled in, first and last names split, duplicates within the file merged — and then shows you what it found and stops. Nothing is written until you say go. You see the proposed mapping, a cleaning report, and a few sample rows. If a column landed in the wrong place, say so and it re-maps.
Yes, import them
Up to 25,000 rows per import, and you can run more than one. If a file is larger than that, split it — the two halves merge into the same contacts.
This is the one thing to get right, because getting it wrong is silent. Hamla will ask whether you have permission to market to these people. If you do not say yes, they import as leads you can see but cannot message — and every campaign you point at them will reach nobody, with no error and no warning. So answer it honestly:
Yes — these are customers who bought from us and opted in at checkout
or
They signed a paper form at the counter, so yes for email but not for WhatsApp
Consent is per channel. Email, SMS and WhatsApp are recorded separately, because permission usually is. If a list is already in Hamla without consent, you can record it afterwards in Contacts → Contacts Management → Consent.
Hamla will not assume it. Importing a list is not evidence of permission, and Hamla is deliberately built not to infer it — because the cost of guessing wrong lands on your domain reputation and your customers’ patience, not on Hamla’s.

Bring the history too, not just the people

This is the step most businesses skip, and it is the one that makes everything else work. A customer list tells Hamla who people are. A sales, booking or invoice export tells it what they did — with a date and an amount on every line.
Import their order history as well
Without it, Hamla knows you have 4,000 contacts and nothing else. With it, on day one:
  • “Customers who spent over 1000” is a real audience, not a guess
  • Win-back timing works, because Hamla knows when each person last bought
  • Revenue and value comparisons in your reports have something to compare
The same applies whatever “a transaction” means for you.

Two things that will not happen

Importing history does not send anything. A year of past orders will not fire a year of messages. Imported history goes down a deliberately quiet lane — no campaign triggers, no audience-entry blast. It fills in the past without pretending it is the present. Re-importing the same export is safe. Each row is matched by what it says — who, what, when, how much — not by where it sits in the file. Export again next month with the new orders on top and only the new rows land. Your lifetime revenue does not double.

After it lands

How many contacts do I have now, and how many can I actually message?
That second half is the one to check. If the answer is “4,000 contacts, 0 messageable”, consent was not recorded — fix that before building anything. Then:
Segment my customers who spent over 1000 and haven’t ordered in 90 days

Build audiences

The first thing to do with a list once it is in.

Win back customers

The campaign an imported history unlocks immediately.

Hamla Events

Keeping it current after the one-off import.

Ad audiences

Turning an imported segment into a Meta audience.