Data foundations, reconciled before any model or system acts on them.
Your records are cleaned, migrated and reconciled until they agree with themselves, so agents, models and the software around them start from sound data. Old and new must match, account by account, before anything goes live.
Data is ready when it passes the checks of whatever relies on it. A model needs documents that are findable, readable, current and permissioned. A migration passes when the trial balance, open invoices and stock match the old system. An e-invoicing mandate such as the UAE's needs a valid tax number and a full address for every business customer and supplier.
Each destination sets its own checks.
Readiness is a set of checks that pass or fail. We run them on your own records.
| Destination | Ready means | How it is checked |
|---|---|---|
| A new system | Opening balances, open receivables and payables, stock and master records match the old system at the cutover date | Trial balance, ageing and stock valuation compared line by line, to the cent |
| UAE e-invoicing | Every customer and supplier carries a valid TRN or TIN, a complete address and the right tax treatment | Format checks on every record, doubtful TRNs checked on the FTA's public service, and a month of real invoices tested against PINT AE |
| An assistant or agent | The documents that answer your questions exist, can be read, are current, and carry who may see them | A corpus survey, OCR quality measured on samples, and a question set written by your own people |
A migration ends when both systems agree.
Someone other than the person who ran the load confirms the match. Every migration is a script that runs first into a staging copy of the new system, is reconciled and runs again until the differences are zero. Production sees nothing before that.
- Record counts for customers, suppliers, items and open documents.
- The trial balance at the cutover date, account by account.
- Receivable and payable ageing, customer by customer and supplier by supplier.
- Stock quantities and valuation by warehouse, where you hold stock.
- A sample of historical documents opened in both systems and compared.
The scripts are idempotent: a re-run creates what is missing, reconciles what exists and leaves correct records alone. When a total does not reconcile, the script refuses to write. It rounds exactly as the target system does, because half-up and banker's rounding differ by a cent on some lines, and the cents add up. Our own books are held to the same rules.
On ERPNext, master records load through the Data Import tool or the REST API. Unpaid customer and supplier invoices go through the Opening Invoice Creation Tool, so due dates and ageing survive the move.
We migrate from anything that exports.
That covers QuickBooks, Zoho Books, Tally, Odoo, older ERPs and the spreadsheets that grew up beside them. Where an export falls short, we read the reports or the database and reconcile from those.
You decide how much history comes across. The usual choice is master records, open items and balances, with older transactions in a searchable read-only archive. Where reporting or audit needs several years of transactions in the new system, that load is scoped and priced on its own line.
Structured invoices start from clean master data.
Under the UAE e-invoicing mandate, 20 of the Ministry of Finance's 51 mandatory fields for a tax invoice come from company, customer and address records. Your Accredited Service Provider rejects what is wrong in them, so the cleanup comes first. The readiness checklist has the full count.
- TRNs. 15 digits, on every VAT-registered customer and supplier, held in one format.
- TINs. The first 10 digits of the TRN. The Ministry uses the TIN as the participant identifier, written 0235 followed by the TIN, and a business in scope with no tax registration obtains one through EmaraTax.
- Tax group members. Each member uses its own TIN, never the representative's.
- Addresses. Complete, and held in structured fields instead of free text.
- Tax treatment. Standard-rated, zero-rated, exempt, out of scope or reverse charge, set once on the item and the customer instead of typed onto each invoice.
- Duplicates. One customer, one record. Two records for the same buyer means two sets of invoices to reconcile.
A doubtful TRN is checked on the Federal Tax Authority's public TRN verification service before it reaches an invoice.
Documents ready for a model to find and read.
Gartner predicted in February 2025 that through 2026, organisations will abandon 60% of AI projects unsupported by AI-ready data. For a company whose knowledge lives in documents instead of a data platform, readiness means knowing what exists and where, in what format, how sensitive it is and who may see it.
- Corpus survey. An inventory of the drives, mailboxes and systems that hold the answers.
- Ingestion and OCR. Scanned and photographed documents pass through OCR, and quality is measured on samples.
- Permissions. Each document keeps who may see it, so a role that may not read a file never has it retrieved into an answer.
- Freshness. Superseded versions are marked or removed, so the assistant does not quote last year's price list.
You receive a data readiness read, which says whether your records can answer the questions you care about and what it would take to get them there.
Data warehouses sit outside this service.
Data readiness here means migration, cleanup, reconciliation and ingestion into the systems we build and run. Data warehouses, platforms such as Snowflake or Databricks and large business intelligence programmes are out of scope, and if you need one, that comes up on the first call.
Everything the migration produced stays with you.
A mapping document.
Every source field, its target and the rule that joins them.
An exception list.
Each record that could not be migrated or cleaned automatically, with the reason.
A reconciliation report.
Counts, trial balance, ageing and stock, old against new, signed off by your finance lead.
The scripts.
They pass to you with the final payment and can be run again.
Frequently asked questions
How is data readiness measured for a model, a new system or e-invoicing?
Data is ready when it passes the checks of whatever relies on it. A model needs documents that are findable, readable, current and permissioned. A migration passes when the trial balance, open invoices and stock match the old system. An e-invoicing mandate such as the UAE's needs a valid tax number and a full address for every business customer and supplier.
What does a data migration involve?
A script moves master records, open items and balances from the old system to the new one. It runs first in a staging copy and is reconciled against the trial balance, ageing and stock. Cutover waits until those reconciliations show no difference.
Can you migrate us from QuickBooks, Zoho Books, Tally or spreadsheets?
Yes. Each is dry-run into a staging copy first and reconciled against your current trial balance before anyone relies on it.
Do we need a data warehouse before an assistant or agent?
Usually not. A knowledge base reads documents where they already sit, and an agent works through your systems' APIs. Both need documents people can find and read, kept current and carrying their permissions. A warehouse is a separate decision. We do not sell one.
What happens to our history in the old system?
You decide before the migration starts. What stays behind goes into a searchable read-only archive. For UAE e-invoices it is built so that the invoices and their data are kept for the period the Tax Procedures Law sets and can be produced to the FTA on request.
How long does a migration take?
Loading is quick. Reconciling takes the time, and the number of dry runs depends on how many differences the first run finds in your source data. The proposal dates each milestone, and a wait for your access or data moves those dates by the length of the wait.