Xero Contact CSV Validator

🥦

Validate Complete

Validation Report Format
valid rows

Check your contact CSV for errors before importing to Xero.

Free preview — then from $5. Save with bundles.
Free preview before you pay
Files never leave your browser
No account needed to start

Download Clean Sample

Valid Xero contact CSV (no errors)

Clean Template

Download Error Sample

Sample with validation errors for testing

Error Example

Validation Questions Answered

What columns are required for Xero contacts?

Only Name is required. Recommended: EmailAddress, FirstName, LastName, POAddressLine1, POCity, POPostalCode, POCountry, PhoneNumber.

How does Xero handle duplicate names?

Xero matches by Name. If a contact with the same name exists, it will be updated. Slightly different names create new contacts.

What happens to my data?

Your file is processed entirely in your browser. No data is uploaded to our servers.

How Validation Works

1

Prepare Your Xero Contact CSV

Export or prepare your Xero Contact CSV file following the platform's template requirements.

2

Upload and Validate

Upload your Xero Contact CSV file. The validator checks every row against the expected format rules.

3

Review Validation Results

Fix flagged errors using the row-level report, then import your clean file with confidence.

Issues are flagged inline with clear fix suggestions — review and correct before you import.

How People Use This

Migrating 800 contacts from MYOB to Xero and the Name column had trailing spaces that would have created duplicates. The validator flagged 34 names with whitespace issues and 12 duplicate names that differed only by punctuation. Cleaned them all before import instead of merging contacts one by one after the fact.

Fiona C.
Bookkeeper · client migration specialist

A client's supplier list had email addresses with commas instead of semicolons separating multiple contacts and 6 rows with non-ISO currency codes. The validator caught every bad email and invalid currency before Xero could reject the file. Saved a round trip of export-fix-reimport.

Darren H.
Accountant · 15 Xero practice clients

Why Validate Contacts Before Import?

Avoid Duplicate Contacts

Xero matches contacts by Name. Importing contacts with slightly different names creates duplicates. Validating first helps catch naming inconsistencies.

What This Tool Checks

We validate your contact CSV against Xero requirements: - Required Name field present and non-empty - Email format validation - Address field structure (POAddressLine1, SAAddressLine1, etc.) - Phone number format - Currency code validity (3-letter ISO) You get a detailed error report with row numbers to fix issues.

Your Data Stays Private During Validation

Every Row Checked

Each record is validated against format rules. Catch errors before they reach your platform.

Runs in Your Browser

Validation happens locally. Your data never leaves your browser.

GDPR Compliant

No files uploaded, no data retained. Full EU privacy compliance.

More credits - more savings

Buy bundles and get up to 60% off. Perfect for recurring monthly conversions.

Why Validate Before Importing?

Name Validation

Checks that required Name field is present and non-empty.

Email Validation

Validates email address format for EmailAddress field.

Address Structure

Validates PO (billing) and SA (shipping) address fields.

Duplicate Detection

Warns about duplicate names within the file.

Browser-Based

Files processed locally. Your data never leaves your computer.

Instant Results

Get validation results in seconds.

Common Target Import Errors

Issues you might encounter when importing Source data to Target - and how we solve them

Missing Contact Name

The Name column is required for each contact

(blank Name)
Acme Corporation

Each contact needs a unique name

Add contact names to all rows

Duplicate Contact Name

Contact names must be unique in Xero

John Smith (already exists)
John Smith - London Office

Use unique names; add distinguishing info if needed

Rename duplicates or update existing contacts instead

Name Exceeds Maximum Length

Contact name exceeds 255 character limit

(256+ characters)
Abbreviated Company Name (max 255 chars)

Shorten the contact name to fit within Xero's limit

Truncate or abbreviate long contact names

Invalid Email Format

EmailAddress is not in valid email format

not-an-email
contact@example.com

Ensure email addresses are properly formatted

Fix or remove invalid email addresses

Frequently Asked Questions

Your data never leaves your device. All files are processed entirely in your browser using client-side JavaScript - no data is stored on our servers or sent anywhere. There's no account to hack, no database storing your files, and no API connections to your bank or accounting software. You upload, convert, download, and we forget it immediately.
No payment or signup required. You can upload your file, see a free preview of the conversion results, and verify everything looks correct before paying anything. If it doesn't work for your files, you haven't wasted any money. We only charge when you're satisfied and ready to download the final converted file.
You can, but free scripts and AI often miss edge cases that break real-world data: missing SKUs, currency formatting quirks, tax calculation errors, or date format mismatches. We have battle-tested validators specifically designed for accounting software imports that catch these issues before they corrupt your books. Plus, you get instant browser-based conversion without installing Python or managing dependencies.
Only Name is required. Recommended: EmailAddress, FirstName, LastName, POAddressLine1, POCity, POPostalCode, POCountry, PhoneNumber.
Xero matches by Name. If a contact with the same name exists, it will be updated. Slightly different names create new contacts.
PO prefix for billing/postal address (POAddressLine1, POCity, etc.). SA prefix for shipping/street address (SAAddressLine1, SACity, etc.).
Yes. Xero contacts can be both. You can specify this in Xero after import or leave as generic contacts.
Your file is processed entirely in your browser. No data is uploaded to our servers.
Rename or merge the duplicate contact in Xero, or restore the archived match. Then re-import.
The email format is invalid. Remove spaces, trailing commas, and avoid multiple emails in one cell.
Use a plain comma-separated .csv with one header row. Export values only (no formulas).
Your file encoding is likely wrong. Save/export the CSV as UTF-8 and try again.
Headers may not match what Xero expects. Use Xero’s import template headers and keep them consistent.