Running the Sync as a Dedicated User
By default the sync runs as whoever pressed Start. That's fine until that person leaves, changes role, or has their user deactivated — at which point the sync stops.
Sync Execution User points it at a dedicated Salesforce user instead.
TCC Configuration → your Xero organisation → Manage Syncing → Sync Execution User.
The box is hidden on Professional and Group Edition. The package still installs and upgrades there — you just can't reassign who the sync runs as.
Setting it
- Choose the user
- Save
Salesforce then deploys a small sync trigger into your org, with a test, which takes a couple of minutes.
If you press Start before that finishes, the page tells you so and asks you to wait two minutes, re-open the box, Save, then Start. That's deliberate: the sync is never started as the wrong user.
It covers both the ongoing and the historical sync.
Which user
Typically a dedicated user on a Salesforce Integration licence. The packaged TwoCanConnect - Integration User permission set is built for exactly this. Be clear about what it grants: Modify All Data, View All Data, Modify Metadata and view and modify all records on nearly every object in your org, so the sync can read and write anything it needs to regardless of sharing. In practice it makes the sync user a system administrator without a login. It has no Visualforce pages, tabs or apps, which the Integration licence forbids anyway. It's one of the four sets described in Managing users and permissions.
An API-only user needs the Salesforce API Integration permission set licence to unlock standard objects. Without it the sync user can't see the records it's meant to sync.
The TCC Sync Bypass custom permission is granted by the Integration User permission set alone — not by Admin or Standard. It's there for flows and triggers that check $Permission.tccxero__TCC_Sync_Bypass when the sync runs as a dedicated integration user.
Granting it to human sets would have let any TwoCanConnect user bypass your validation rules from the UI. To exempt the sync from your own automation, scope the exemption by field instead — see When your own automation blocks the sync.
Undoing it
Reset to Current User removes the deployed pieces and moves the sync back to the current user.
Reassigning while the original user is still active is a two-minute job. Doing it after they're deactivated means a stopped sync and a queue of unsynced records to work through.
Xero
Real Estate
Equifax