How to Connect Your CRM and Management Software
How to connect your CRM and your accounting system without double data entry: who owns each field, which way the sync runs and how to check it works.


To connect your CRM and your management software you decide which of the two owns each piece of data, then set up a sync that runs in one direction only, on the fields that really have to travel: the customer record, the documents you issue and the payment status. You pick one key that identifies the same customer in both archives, in Italy usually the VAT number, and you let one system write while the other reads. Everything else, internal notes, activity history, working statuses, stays where it already lives.
If today somebody retypes every new client twice and nobody can say which address is the good one, by the end of this guide you will have a connection that works, a written rule for what syncs and what does not, and a way to check that it is still running.
What you need before you start
- A customer list exported from both systems, to see how many records exist twice, how many differ, and how many have no VAT number.
- The identifying key: VAT number for companies, tax code for private clients, an internal customer code for the cases that have neither.
- Administrative access to both tools, since connections are authorised from the settings area.
- A decision on who owns what, written down before you touch any setting. This is the whole job, the technical part is the easy half.
- One person who checks the connection. A sync without an owner breaks silently, and you find out weeks later from a client complaining about an old address on their invoice.
- A test customer, invented: "Rossi Impianti Srl",
amministrazione@esempio.it.
Decide who owns each piece of data
These projects fail for one reason: both systems are allowed to write the same field. The last edit wins, and it is often the wrong one. Assign an owner to each block of data first.
| Data | Who owns it | Direction | On the other side |
|---|---|---|---|
| Customer record (name, VAT, address) | CRM | CRM to accounting | created or updated automatically |
| Tax details, payment terms | accounting | accounting to CRM | read only, nobody edits them |
| Quotes and offers | CRM | stays in the CRM | only the accepted one crosses over |
| Invoices and credit notes | accounting | accounting to CRM | visible on the customer record |
| Payment status | accounting | accounting to CRM | can trigger a reminder |
| Products and prices | wherever the price list lives | one direction only | the other side reads, does not edit |
| Notes, calls, activities | CRM | does not travel | no reason to send them anywhere |
The rule of thumb: whoever creates the data first owns it. And prefer a one way sync, because two way needs a conflict rule for every field and nobody remembers those rules six months later.
The key that links the two archives
The systems have to recognise that "Rossi Impianti Srl" and "ROSSI IMPIANTI S.R.L." are the same company, and they can only do it through a field with an exact match, never through the name.
Use the VAT number as the primary key. It is unique, it is already required for invoicing, and it does not change when the company moves office. Normalise it first: no spaces, no country prefix if your archives do not carry one. Use the tax code for private clients, and an internal code such as CL-0412 for the records that have neither.
Then deduplicate, before you switch anything on. Sort both exports by the key, look at what appears twice, merge in the CRM keeping the record with the most recent activity. Doing this later costs more, because by then every duplicate has documents attached to the wrong record. If you are also loading a legacy list, the steps are in the guide on how to import your customer list.
Step by step: connecting the two systems
1. Freeze new entries for an hour, so no record is created on both sides while the first alignment runs.
2. Open the integrations area of your CRM and start the connection. It normally sits under settings, in a list of available connections. You authorise access with the credentials of the accounting system, and you should end up with a connection shown as active, with the date of the last exchange. What can be connected in Flusia is listed on the page of available integrations, and the accounting side is described in the guide to the Fatture in Cloud integration.
3. Map the fields one by one, and write the mapping down. Company name, VAT number, tax code, address, billing email, payment terms. Where a field exists on one side only, decide explicitly to drop it instead of parking it somewhere.
4. Set the direction for each block. Master data leaves the CRM, documents and payments arrive from the accounting system. If a two way option is offered, leave it off for now.
5. Run the first sync on the test customer only. Create "Rossi Impianti Srl" with VAT number 01234567890 and amministrazione@esempio.it, then check it appears on the accounting side within minutes, address in the right field. Then change the address and check the change travels too. If it does not, the problem is the mapping, not the connection.
6. Align the existing archive. Expect a list of unmatched records: customers present on one side only, or with a key that matches nothing. Work through it by hand, it is usually shorter than you fear.
7. Send one real document through. Invoice an accepted quote with your normal process, checking that amounts, lines and tax details arrive without anyone retyping them. If you are unsure what a quote should carry, the structure is in the guide on how to write a quote.
8. Write the rule on one page and share it. New customers are created in the CRM, invoices are issued in the accounting system, nobody edits an address on the administrative side.
When syncing invoicing is enough
For a service company, an agency or a professional firm, the connection that pays for itself is the narrow one: customer records out, issued documents and payment status back in. Nothing else.
You gain two things. The commercial side stops asking administration whether an invoice has been paid, because the answer sits on the customer record. And the customer data exists once, so a change of address is made in one place. It is also the setup that survives longest, having few moving parts.
When you also need stock or jobs
Two situations justify a wider connection.
The first is selling physical goods. Quantities have to stay consistent between order, shipment and document, otherwise you sell something you do not have. Stock movements need a single owner: the system where goods physically enter and leave. If part of your orders arrive from an online shop, catalogue and quantity alignment is covered in the guide to warehouse management.
The second is working by jobs or projects. To know what a piece of work left you, the supplier costs recorded on the administrative side have to land on the job, next to hours and revenue. Otherwise the margin you read is just the invoiced amount, which is not a margin. How a job is opened and closed is in the guide to managing client jobs.
Add the extra flow only after the basic one has run quietly for two weeks: a connection built in layers can be diagnosed, one built all at once cannot.
When your management software has no API
It happens, especially with older installations on a local server. Three options, in order of preference.
Look for an export that can be scheduled. Many systems can drop a CSV file into a folder every night, which is enough for a one way flow.
Reverse the direction. If the accounting system cannot receive, let it send: documents and payments travel towards the CRM, master data is typed by hand. You keep the visibility benefit.
Set a manual cadence and respect it. One export a week, same day, same person. A weekly exchange that happens beats a real time one nobody ever set up.
Alternative method: the scheduled file exchange
You agree on a format, typically CSV with a fixed column order starting from the key. One system writes the file, the other reads it on a schedule. The critical detail: the file should contain only what changed since the last run, otherwise every import rewrites the archive and manual corrections disappear.
The limits are real. Payment status stays hours behind, there is no error feedback unless somebody reads the log, and past a few thousand rows it stops being practical.
How to verify the sync is really working
A connection that is switched on is not the same as a connection that is working. Three checks, five minutes each.
- The counter check. Once a week, compare the number of customers on both sides. A gap that grows means something is being silently rejected.
- The round trip check. Change the phone number of the test customer and see whether it travels.
- The error log. Read it once a month: the failed rows usually share one cause, a missing VAT number or a field longer than allowed.
You can also let the system tell you: a rule that notifies you when a sync fails, or when an invoice passes its due date unpaid, removes the manual check. That kind of rule is covered in the guide to automatic workflows.
Common mistakes
- Turning on two way sync from day one. It feels complete and produces the worst outcome: two systems overwriting each other, with no way to tell which value was right.
- Connecting before deduplicating. If a customer exists twice on one side, the sync creates two records on the other, and from then on half the documents attach to the wrong one.
- Syncing everything because you can. Internal notes and call history do not belong in an accounting system, and every extra field is one more thing that can break.
- Leaving the connection without an owner. Nobody is watching, so a failure lasts weeks. Assign it to one person, with a five minute weekly check.
How long it takes, and what comes next
For a company with a few hundred customers, deciding the ownership rules takes about an hour, cleaning duplicates half a day, the setup with the field mapping an afternoon. Add two weeks of light supervision, because the odd cases surface only as real documents pass through.
One note on the regulated side: how invoices must be formatted, transmitted and stored is set by the tax authority, and the reference source is the Agenzia delle Entrate. What you read here is operational, not fiscal, so for your specific case check with your accountant.
The natural next step is to use the connection rather than admire it: once documents and payments arrive on their own, the reminders and follow ups that live in somebody's memory can become rules, and that is where the time comes back.
Frequently asked questions
Should the CRM or the management software be the master? Neither, for everything. The CRM is normally master for the customer record, because that is where a new client is born; the accounting system is master for documents, tax details and payment status. Assigning ownership field by field is what stops the two from fighting.
Is two way sync always the wrong choice? It is rarely the right place to start. It makes sense on a single well defined field where both sides legitimately write, for example a payment term that administration adjusts and sales needs to see.
What happens to duplicate customers? They stay duplicates and they multiply. A sync compares the key, not the name: two records with the same company name and different VAT numbers remain two records. Deduplicate before connecting, then make the key mandatory on creation.
Do I need a developer for this? Usually not, if both tools offer a ready made connection: it is a matter of authorising access and mapping fields. A developer helps when one system has no interface at all, or when you need to transform data in the middle, for example splitting one field into two.
Share this article
Written by

Luca Bosso
Founder of Flusia
Related articles

How to Manage Service Jobs and Site Visits
How to manage service jobs and site visits: logging the request, scheduling the visit, briefing the technician, closing the job and quoting the extra work.

How to Reduce No-Shows With Appointment Reminders
How to set up automatic appointment reminders: how many to send, how far ahead, on which channel, what to write and how to handle cancellations.

How to Manage Client Jobs and Work Orders
How to manage client jobs step by step: from the accepted quote to closing, with budget, hours, costs and final margin you can actually read.