Chart of Accounts Sync Execution Model
Chart of Accounts Sync is a deterministic reconciliation process executed by the integration. On each sync run, the integration:- Retrieves active Accounts from the Accounting System
- Retrieves the current state of Accounts from Pleo (active and archived)
- Reconciles Pleo to match the Accounting System state
- Applies the required create, update, unarchive, and archive operations via the Pleo API
High-Level Process
Matching Model
Accounts are matched to their AS counterparts using theexternalId field. For full matching rules, see Sync Accounts.
Sync Process
Chart of Accounts Sync runs as a single reconciliation step on every sync cycle. The integration fetches all active accounts from the Accounting System and all accounts (active and archived) from Pleo, then reconciles the two using theexternalId field.
Reconciliation Outcomes
| Condition | Result |
|---|---|
| Matching active Account in Pleo, details match | Preserve existing Account |
| Matching active Account in Pleo, details differ | Update Account name and code to match AS |
| Matching archived Account in Pleo | Unarchive Account and update details if needed |
| No matching Account in Pleo | Create new Account with name, code, and externalId |
Execution Requirements
| Requirement | Description |
|---|---|
| Scheduling Ownership | The integration defines sync timing and execution frequency |
| Full Reconciliation | Every sync execution reconciles against full Accounting System state |
| Non-Overlapping Execution | Sync executions must not overlap |
| API Ownership | All changes are applied through the Pleo Chart of Accounts API. See the how-to article for step-by-step implementation instructions. |
| Rate Limit Handling | Scheduling must respect the Pleo Chart of Accounts API rate limit. |
Processing Principles
| Principle | Description |
|---|---|
| Unidirectional Sync | Data only flows from the Accounting System into Pleo |
| Idempotent Execution | Re-running the same sync with unchanged data produces the same final state |
| Deterministic Reconciliation | Identical inputs must produce identical outputs |
| Non-Destructive Updates | Accounts are archived instead of deleted |
| Consistent Identity Resolution | Matching logic must behave consistently across executions |
| Stateless Execution | Each sync run must independently reconcile against current source state |
Expected Outcome
After implementation:- Pleo accurately reflects the Chart of Accounts from the Accounting System
- Accounts remain stable across repeated sync runs
- Outdated accounts are archived automatically
- Bookkeepers always have current, accurate accounts available for category assignment
What Comes Next?
Related Reading
- Platform Capabilities: Chart of Accounts Sync Overview
- Chart of Accounts Sync Workflow Guide
- Connection and Authorisation Overview