Where each data point lives, which system owns it, and how it stays consistent across the core and the spokes.
The proposal shows the shape of the platform: inputs captured once, an owned data core as the single source of truth, and specialist spokes around it. This appendix answers the next question: for each kind of data, which system holds the authoritative version, and how are contradictions prevented.
It is deliberately domain level, not field level. It reflects what is known today and firms up as the team works through ViewPoint and the other existing sources during WS0. Every row carries a confidence marker so nothing reads as more settled than it is.
The concern raised in review was the right one: when two connected systems hold the same data point and they disagree, which one wins. The answer is a single, consistent rule.
Take a real sequence, of the kind that happens dozens of times a day:
The concern raised in review, that reconciliation should not become a manual chore, is answered by this split: the system absorbs the routine automatically and reserves human attention for the few changes that genuinely warrant it. In practice that is a handful a week, not a constant queue, because the source of truth stays in sync by design.
Which system is authoritative for each kind of data, whether it sits in the core or stays in its spoke, and how it keeps in step. Where a specific tool is still being selected, the source of truth is the function, and the tool is confirmed at WS0.
| Domain | Example data | Source of truth | In core | How it syncs | Confidence |
|---|---|---|---|---|---|
| Client / entity master | legal name, entity ID, ownership / UBO, addresses | Core | Master | one way at onboarding, then core-owned | Confirmed |
| Onboarding / CDD case | onboarding status, documents collected, intake risk rating | Each entity's MLRO entities onboard separately |
Status | to core on completion | Confirmed |
| KYC / screening | screening result, PEP / sanctions flags, monitoring status | KYC360 (internal, daily) ComplyAdvantage (Rethink / RAA) |
Flag mirror | daily · event driven | Confirmed |
| Corporate secretarial | minutes, resolutions, filings, registers, licence renewals | ViewPoint · OneDrive (shared drives) | Reference | to core | Confirmed |
| Regulatory & compliance | ADGM authorisations, policies, filing deadlines | ViewPoint · OneDrive (shared drives) | Reference | to core | Confirmed |
| Tax | registrations, VAT / CT returns, filing calendar | ViewPoint · OneDrive (shared drives) | Reference | to core | Confirmed |
| Audit (RAA) | engagement status, working papers | Audit tenant ADGM entities · linked at entity level |
Link only | minimal · entity link | Confirmed |
| Finance: group revenue & client billing | invoices issued, amounts due, revenue by client, cost-of-sale | Core (relevant subset) | Master (subset) | from each entity's accounting · webhook + audit log · approval-gated on amount / date | Confirmed |
| Finance: full internal ledger | journals, expense lines, marketing / vendor payments, reconciliations | Each entity's own accounting (Xero today, per entity) | Stays in spoke | none · remains with the entity | Confirmed |
| Documents / identity | passports, IDs, contracts, document metadata | ViewPoint · OneDrive · document store | Metadata | schema-agent managed · new fields admin-approved | Confirmed |
| Feeder / introducer | introducer per client, referral source, intro / feeder fees | Core (relationship) | Master (subset) | from onboarding + accounting | Indicative |
| HR / payroll (internal) | headcount, roles · compensation detail | Internal HR / accounting | Headcount subset | headcount / utilisation to core · comp detail stays in HR | Confirmed |
Reference = the core holds the pointers and the client relationship (what is owed, when it is due, what has been done), not the full working detail, which stays in the specialist tool.
Finance is the domain where the distinction matters most. The core is not an accounting system and does not try to be one. Each entity keeps its own internal accounting (Xero today), held separately; the core draws only the relevant slice from each and brings it together, which is what lets the Group see across entities without opening any ledger.
The relevant finance data, consolidated across entities: invoices issued, amounts due, revenue by client, and the cost-of-sale and feeder data the Group analyses. This is what makes the core answer questions like "how many unique clients, how much revenue across the Group" without opening any ledger.
The full ledger: journals, line items, reconciliations, and marketing / vendor expense. Swapping an entity's accounting system is a migration between accounting tools, not a re-plumb of the core, because the core never held the ledger in the first place.
Reg & Compliance client data is held in a separate tenant of the record system, with firewalls between tenants. It is never written into the Group's shared core and does not appear in the field map above. It is linked only where the architecture explicitly permits, and governed separately. The audit tenant is likewise separate and linked at entity level.