Data Quality Guards
Some differences between Xero and Salesforce can't be resolved automatically. Rather than failing a whole record, TwoCanConnect handles them predictably.
Values too long for Salesforce
Xero allows longer values than Salesforce in a few places — phone numbers (50 vs 40 characters) and emails (up to 255 vs 80).
When a value doesn't fit, the contact still saves, with this marker in that field:
Too long for SF - shorten in Xero
You get one warning per contact in the log rather than the whole contact failing to sync every cycle, which is what used to happen.
It exists only in Salesforce. Editing the field in Salesforce pushes your new value to Xero like any other edit.
The fix is to shorten the value in Xero; it syncs across normally on the next cycle.
Voided and deleted documents always win
An invoice voided in Xero flips to VOIDED in Salesforce even if the Salesforce record was touched afterwards. The same applies to bills, purchase orders, quotes and archived contacts.
This is the one place where "most recently edited wins" is deliberately not the rule. A voided document is void — a later edit in Salesforce shouldn't quietly resurrect it.
Warnings don't fail a cycle
Sync History counts errors only. A warning — a field too long, an automation conflict — doesn't mark the cycle failed. A cycle that did its job with two warnings is reported as completed, because it did.
Matching cascades to documents
Matching a Xero contact to a Salesforce Account re-parents that contact's invoices, bills, purchase orders, quotes and credit notes to the same Account. It applies in the Matching Tool and in scheduled matching.
You don't need to fix the documents separately after matching an account.
Field mappings survive upgrades
Custom target fields and mapping set ids are preserved across package upgrades, and orgs affected by an earlier bug are repaired on the next upgrade.
Xero
Real Estate
Equifax