← Home

Ivan Matiushkin · Independent contractor · Poland · remote collaboration

CSV to ERP migration and data reconciliation

Prepare data for import and compare exports: field mapping, missing records, duplicates and amount differences.

Before changing systems, you need to know what will be transferred and how to check completeness. I prepare the mapping and report records that need correction.

Tasks you can bring

Changing systems, dealing with rejected CSV rows or investigating totals that differ after an import? A first task can be checking one export, preparing a field mapping or comparing the imported result. You receive identified records and reasons for discrepancies, rather than just an “import completed” message.

Describe your task

Data reconciliation · first engagement

Two files. One discrepancy report.

When orders, invoices or payments disagree across two systems, I compare two CSV or XLSX files for one agreed period.

What you get An HTML report and Excel workbook with missing records, duplicates and amount differences. You can trace each discrepancy to its source rows.

Start with a description of both files and an approximate row count. We agree on scope, price and timing before you order.

Start with a migration readiness check

Have a CSV export and a new ERP to populate? Start with one file and one target specification. I check the fields, identifiers, values and mappings, then provide a report of rejected records and the rules needed for a test import.

  1. Send a sanitised sample, the target field specification and an approximate row count.
  2. Receive a validation report, proposed field mapping and agreed acceptance checks.
  3. Decide on the test import after reviewing the findings. Production access and cutover are a separate agreed stage.

One source export and one target format

What I need

A sample CSV export, the target format and validation rules. Other formats can be agreed before starting.

What you receive

A mapping script or validator, discrepancy report, record counts and agreed control totals.

How I check the result

The agreed sample passes repeatable checks; rejected records include the reason and source.

Production writes, full historical migration and the migration window are agreed separately. The first stage can cover file analysis only.

See a sample acceptance report →

A first stage is a way to start, not a limit on the project. Larger applications and ongoing improvements can be agreed in subsequent stages.

Price and timing are agreed after reviewing your materials, before paid work begins. Contracts and payments can be handled through Useme where compatible with the client. Useme is an intermediary, not my company.

From task description to delivery

  1. Describe the process or current application behaviour. Relevant samples and documentation depend on the task; do not send confidential information.
  2. I check access and constraints. I agree with you on the scope, price and acceptance tests.
  3. I implement the stage, show the test results and deliver the code with instructions.

Try an example

The demonstrations below use synthetic data. They are not client deployments.

Try an example →
Revenue reporting

Reconcile historical and current data, then trace dashboard numbers to source records.

Open working example →

Before you start

How do you validate a CSV before an ERP import?

Check required fields, dates, amounts, identifiers and duplicate records, then map source values to the target model. Keep rejected rows with their original identifiers and reasons. The Migration demonstration lets you remove a product mapping, see the failed records and retry only those records after correction.

How can historical revenue and ERP invoices overlap?

An export can contain records after the new system becomes authoritative. In the Revenue BI example, history is authoritative through 30 June 2026 and ERP from 1 July. July history is explicitly excluded, so it cannot be counted twice. These are synthetic example rules; your cutover is agreed separately.

Does a reconciliation PASS mean all source data is clean?

No. In the Revenue BI example, PASS means every monetary record is accounted for, controls balance and no blocking mapping exception remains. Duplicate or invalid source records can remain quarantined with a documented reason. Source data quality therefore still shows WARNING.