Import file format
The columns an import file needs, the Shopify customer export it accepts, and file limits.
Last reviewed
Your starting-balances file is a CSV, and EarnKit reads it by column name rather than column position. This page covers exactly what it needs.
Before you start
You can use a Shopify customer export as-is, or EarnKit’s own template. See Import starting balances to start an import.
Columns EarnKit recognizes
| Purpose | Accepted column names |
|---|---|
| Customer identity | customer_id, shopify_customer_gid, or Shopify’s own Customer ID |
| Points balance | points, or points_balance |
| Spending amount | total_spent, or Shopify’s own Total amount spent / Total Spent |
Column names are matched regardless of case or order, and any other column in your file is ignored. Fill in exactly one of points or a spend column per row, never both, and never neither.
Using Shopify’s own customer export
Export your customers from Shopify (Customers, then Export, as a plain CSV) and upload it without editing. EarnKit reads the Customer ID and Total amount spent columns and converts the spend to points at your current points rate.
Using EarnKit’s template
Download the template from the import page. Each row needs:
customer_id: the numeric Shopify Customer ID, or the fullgid://shopify/Customer/…identifier- Either
points(a whole number of points, or 0 for a member with no balance) ortotal_spent(an amount in your store currency, without currency symbols or thousands separators)
What makes a file, or a row, unimportable
The whole file is refused if:
- It’s over 1 MB, or has more than 1,000 customer rows
- It isn’t saved as UTF-8 CSV, or isn’t well-formed CSV
- It has no recognisable customer-identity column, or only an email column
- It has no points or spend column at all
- It has a spend column but your program has no points rate to convert it with
A single row is skipped, with a reason, if:
- The customer column isn’t a valid Shopify Customer ID
- Both a points value and a spend value are filled in, or neither is
- The points value isn’t a whole number, or the spend value isn’t a valid amount
- The customer appears more than once in the file
- The customer already has points activity in EarnKit, or a balance that isn’t already zero
- The customer’s data was erased at their request
Good to know
- Email addresses can’t be used to identify a customer. If your previous provider’s export only has an email column, export your customers from Shopify, match the two files on email in a spreadsheet, and add the Shopify Customer ID column to your balances file.
- If a file is too large, split it and upload each part. A customer already imported in an earlier part is skipped automatically, so it’s safe to re-upload an overlapping file.
- Numbers exported from Numbers on macOS often don’t import cleanly, since it can reformat large ID numbers. Use Shopify’s export directly, Google Sheets, or Excel, and save as UTF-8 CSV.
- If you edit a Customer ID column in a spreadsheet, import it as text so no digits are lost.