Import customers from a spreadsheet and export your data
Bring existing pet parents and pets in from a CSV file, and download all your customer data whenever you like.
Updated 2026-10-02
Moving from a spreadsheet or another system? You can import customers and pets in bulk, and export everything back out at any time.
Who can do this: importing needs Create / edit customers & pets. Exporting needs Create / edit customers & pets too, or the Owner, Admin or Manager role. The Export button is hidden for everyone else (for example the Staff role).
Import customers
- 1Go to Customers & pets and click Import (
/app/customers/import). - 2Click Choose CSV file (2 MB maximum), or paste CSV text into the box. Click Use sample to see an example.
- 3Click Import.
Use these columns, in this order: name,phone,email,pet_name,species,breed. Put one row per pet. For a family with several pets, repeat the parent's phone number on each row.
- Header row: optional. FurKisses only treats the first row as a header if it has a column called
nameorfull_name. In that case the columns can be in any order, and it also recognisescustomer,mobile,phone_number,pet,pet_typeandtype. Without a header, stick to the order above. - Commas inside a value: wrap the value in double quotes, for example
"Rao, Arjun". To include a quote character, write it twice (""). - Species:
dog,cat,bird,rabbitorother. Anything else becomes other. A blank species becomes dog. - Limit: up to 2,000 rows per import.
How duplicates are handled
FurKisses compares phone numbers after removing spaces, dashes and brackets. If the phone already belongs to a customer (or appeared earlier in the same file), no new customer is created. Instead, the pet is added to the existing customer, unless they already have a pet with that name. Rows without a phone number always create a new customer.
Reading the results
When the import finishes you'll see four numbers: new customers, pets added, existing (by phone) and rows skipped. Skipped rows are listed underneath, for example "Row 7: invalid phone". A row is skipped if the name has fewer than 2 characters, the phone doesn't have 6–16 digits, or the email isn't valid. Fix those rows and import just them again.
Row numbers in the error list match the row numbers in your spreadsheet, with or without a header row. (Completely blank lines are ignored, so they can shift the numbering.)
Export your data
On Customers & pets, click Export. A file named like your-business-customers-2026-10-02.csv downloads with these columns: customer_id, name, phone, email, address, area, city, pincode, tags, source, whatsapp_opt_in, wallet_balance, loyalty_points, customer_since, pet_name, species, breed, sex, date_of_birth, weight_kg.
Good to know
- Imported customers get the source import, are opted in to WhatsApp, and are assigned to the branch you're working in. Only name, phone and email come in, so add addresses and tags afterwards.
- The export has one row per pet. A customer with no pets gets one row with blank pet columns. Multiple tags are joined with "; ".
- The export follows the branch picker, just like the customer list: with a branch selected you get that branch's customers; choose All branches to export everyone.
- Any cell starting with =, +, - or @ gets an apostrophe in front, so spreadsheet apps don't run it as a formula.