• CRM · Node.js

A CRM move: the limit is set not by our skill but by what the old system lets out

The question «will everything transfer» comes first, and the honest answer is «that does not depend on us». One system releases clients, deals, history and files in full. Another lets you export a table of contacts and stops there. So the work begins not with the migration but with a check: what exactly your current system releases. Everything else is a matter of care.

See how it works
Price
after a free audit
Guarantee
30 days after project sign-off
Focus
moving data between systems
after a free audit
Price
30
Guarantee

days after project sign-off

moving data between systems
Focus
15
Timeline

to 45 working days

free check of what can be exported
Start
30
Warranty

days from the date the acceptance act is signed

within 2 hours
Reply
under a written contract
Terms
What's included

Complete list of work and what you get as a result

  • a check of what exactly the old system releases — before any promises about scope
  • a field mapping: what lands where, what gets merged and what has nowhere to go
  • moving clients, deals and history to a depth agreed with you
  • removing duplicates during the move — a rare chance to do it without a separate project
  • reconciling the counts before and after for each record type, rather than «it all seems to have moved»
  • moving open deals with their stages, so the work does not stop on moving day
  • a period of parallel running, until the new system proves everything is in place
  • a written list of what did NOT transfer, with a reason for each item
When this service isn't right

What's not included — so there are no surprises at delivery

  • extracting data the old system does not release by any means
  • moving call recordings and chat contents, if they are not in the export
  • keeping access to the old system after your payment for it ends
  • a guarantee that people will start working in the new system straight away
  • configuring the new system itself — that is separate work
Who it's for

Situations where this service delivers results

Scenario 1 of 4

A company that has outgrown its current system

What suited two managers stopped holding the process. The move is overdue, but losing what has accumulated over years is frightening.

We'll review your situation in a free audit
Free check of what can be exported

We look at what your current system lets you take. That determines everything else, and it can be checked in a few days.

What we measure

  • What the system releasesThe central question of the whole task. Some give full access to the data, others a contacts table and nothing more. This is not a matter of our skill.
  • How many records there actually areClients, deals, tasks, files. The figures are needed before the start, so there is something to reconcile the result against.
  • Which fields are non-standardThese are usually where migrations stall: the new system has nowhere to put what was added over the years for your own use.
  • How deep a history is neededSeven years of history costs more than the last two. It often turns out that nothing older than three years ever gets opened.
  • What about the filesAttached documents do not always transfer, and not from everywhere. This has to be established before you give up the old subscription.
  • How long access still runsIf the system is leaving the market or the subscription is expiring, that sets the deadline, not our schedule. It changes the order of work.

What you get

  • an answer on what can technically be taken from the old system
  • a list of fields with nowhere to land
  • an estimate of the work broken down by stage
  • an honest answer if the move would cost more than the benefit

Timeline: 3–5 working days

Why is it free

Half the answer depends on somebody else's system rather than on us. It can be checked in a few days, and there is no ground for charging to establish another party's limits.

What's next

You get a list of what is possible and an estimate. Then you decide for yourself — the document stays with you.

Short form: your contact and site URL

  • Contract, act and 30-day warranty

    Every project gets a written contract: scope, deadlines, amount, acceptance procedure. After delivery — act and invoice, then 30 calendar days of warranty.

  • Sole proprietor & bank transfer

    The contractor is a registered sole proprietor. Payment by invoice with closing documents.

  • Rights & access — yours

    Code, design and materials transfer to you after full payment. Domain, hosting, repository and analytics are registered to you.

  • Client portal instead of email chains

    During the project you get access to a portal: contracts, invoices, acts and project status in one place.

  • European clients

    Among our work — projects for Norway, Bulgaria, Moldova and Spain.

  • Verifiable numbers

    Every case in the portfolio comes with a link to a live site and a technical measurement.

  • Audit first, then pricing

    There is no price list on the site intentionally: the scope of the same work differs multiples between clients.

  • We say "no" when unsure

    If the task isn't ours or the deadline is unrealistic — we tell you upfront.

What affects the price

Why two seemingly identical tasks are priced differently

  • What the old system allowsThe main driver, and it is not ours. Full access to the data is technical work. Only a contacts table means there is almost nothing to move.
  • Number of non-standard fieldsEvery field added over the years for your own use needs a decision: where to put it, or whether it is needed at all. That is a conversation, not code.
  • Depth of historyTwo years and seven are different volumes and different prices. Often it is wiser to move the recent and leave the old as a separate archive.
  • State of the dataDuplicates, different spellings, empty fields. A move is a chance to clean this up, but the cleaning has to be done together with you.
  • Files and attachmentsDocuments, quotes, scans. Moving them is often harder than the records themselves, and sometimes impossible.
  • Parallel runningMoving in a single day is cheaper and riskier. A period when both systems run requires re-migrating the data created in the meantime.
Cases

Tasks and results in numbers — all metrics measured by us

the agency's own CRM: deals, contracts, invoices, acceptance acts, projects and a client portal

Task
Stop running the agency in chat threads and spreadsheets: bring deals, versioned contracts with approval, invoices and acts, projects, licences for our own products and client communication in messengers into one system — and make documents be born from data rather than typed in by hand.
Solution
An application on Next.js 16 with Supabase (authentication and RLS) and Prisma. A contract builder with templates, versions, comments and conditional option blocks; signing a contract automatically produces the invoices and the act. Document exchange with Vchasno, National Bank rates with daily snapshots for converting EUR into hryvnia on the invoice date, bank receipts, fiscalisation through Checkbox. Client communication in Telegram and Viber with a single history. A separate circuit for our own products: licences, deployments, domains, support tickets. 35 background jobs cover the routine: reminders about invoices and meetings, digests, lead scoring, health monitoring of integrations and backups, synchronisation with Vchasno.
Result
As of 02.08.2026 the system runs in production (first server response 188 ms — the fastest response among all the projects we have measured). 121 dashboard pages across 38 sections, 489 server routes, 20 tables in the data schema, 11 enumerations and 27 classifier types, 35 scheduled background jobs. 958 commits over 10 months of continuous work. Data exchange is set up with roughly two dozen external systems.

Did not find your case?

Describe how it works on your side — we will tell you whether “CRM migration from an old system” fits and what it means in your situation. No brief and no call: one question, one answer.

Process steps

Transparent stages with approval at every step

Total duration:15–45 days

  1. Checking the export

    3–5 working days

    We establish what the old system releases and count how many records it holds. This is where it becomes clear how complete the move can be at all.

  2. Field mapping

    3–7 working days

    We draw the map: what lands where, what gets merged, what has nowhere to go. The most important stage, and the one that needs your decisions.

  3. Trial migration

    3–8 working days

    We move part of the data and show it to you. You should look at specific clients you know rather than at aggregate figures.

  4. Cleaning

    3–12 working days

    We remove duplicates and tidy the spellings. We do this together with you: which of two records is correct, only you know.

  5. The main migration and reconciliation

    3–10 working days

    We move everything agreed and reconcile the counts for each record type. A discrepancy is either explained or fixed — there is no third option.

  6. Parallel running

    10–20 calendar days

    We keep both systems until you are satisfied everything is in place in the new one, and carry over the data created meanwhile. Then the 30-day warranty.

Technologies & integrations

What we build on and what it connects to

Stack

  • Node.js
  • TypeScript
  • Python
  • PostgreSQL
  • CSV
  • JSON
  • REST API
  • Webhooks
  • Docker
  • Git
  • Linux

Integrations

  • KeyCRM
  • REST API
  • CSV
  • Webhooks
  • Email
  • Telegram
Move the data or start from a clean slate

How this option differs from the alternative

Client historyat hand in the new system
Open dealsmove across with their stages
Costdepends on the volume and state of the data
Inherited messmoves along too, unless it is cleaned
When a clean slate is betteroverkill if the history goes unused anyway
What we need from you

We can't start without this — best to prepare in advance

  1. which system you are on now and what it allows to be exported
  2. how many clients, deals, tasks and files it holds
  3. how deep a history you genuinely need in the new system
  4. which fields were added for your own use and whether they are all still needed
  5. until what date access to the old system runs
  6. who on your side accepts the work

If something is missing — let us know, we'll help you gather it or do it as a separate task.

FAQ

Most frequently asked questions — with concrete answers

Will everything transfer?

It depends on the old system rather than on us, and that is the first thing we check. Some release clients, deals, history and files in full; others let you export a contacts table and that is it. Promising a complete move before the check means promising with somebody else's capabilities.

What to do with fields the new system does not have?

The decision is yours, and it is «do not move it» more often than you would think. Over the years a system accumulates fields that were filled in twice and forgotten. We list them separately, and you decide: create an equivalent, merge with another field, or let it go.

How much history should be moved?

As much as actually gets opened. Seven years of history costs noticeably more than the last two, and older records are rarely consulted. The compromise that works: move the recent in full, leave the old as an export in an archive.

Can duplicates be cleaned during the move?

Yes, and it is a rare chance to do it without a separate project. But the cleaning has to be done together with you: which of two records about the same client is correct, only you know. We prepare a list of suspects; you make the decisions.

Will work stop during the move?

It should not. We move the essentials and then keep a period when both systems run, carrying over the data created meanwhile. A single-day move is cheaper, but if something goes wrong, it is the selling that stops.

And the call recordings and correspondence?

They transfer rarely and not from everywhere. Often they physically live not in the CRM but in the telephony service or the mailbox, and then the question is not solved by a migration. This has to be established before you give up the old subscription.

How long does it take?

15 to 45 working days. The migration itself is quick; the time goes on the field mapping and the data cleaning — both need your decisions. If access to the old system expires in a month, the order of work changes and we start with the export.

Will you configure the new system too?

That is separate work, and we price it separately: stages, fields, permissions, reports, training. A move without configuration gives you data in a system nobody knows how to use. But we will not blend the two into one invoice — you should see what you are paying for.

Let us check what your system lets you take

We will look at the export and say how complete the move can be. The check is free, we reply within 2 hours.

From measured casesAs of 02.08.2026 the system runs in production (first server response 188 ms

View cases
  • Reply within 2 hours
  • No commitment
  • We work under a contract

There is no price list on the site on purpose: the same work differs several times over between two clients, and a “from” figure explains nothing in that case. First a free audit — we count your pages, duplicates and speed — then we name the sum and the deadline and fix both in the contract.