Back to Blog

How to integrate your management software with e-commerce, accounting and CRM

Business software
September 24, 2026

Why integrations are the hardest part

Because they depend on systems you don't control. You design the management software (the ERP-style system Italian companies call a gestionale). The e-commerce site, the invoicing software, the bank and the courier have rules, limits and flaws you only discover once you connect to them for real.

On paper an integration takes up one line, something like "orders from the online shop go into the management system". In practice it's a small project inside the project. You have to work out how the other system exposes its data, get access and credentials, deal with the moments when it responds slowly or not at all, and decide what to do when two systems say different things about the same customer.

So when a management software project overruns, very often the fault isn't in the part you can see. It's in a connection that looked trivial.

Where they get stuck

It's nearly always the same four things.

The first is documentation. Some services have well-described interfaces, with examples and test environments. Others have a ten-year-old PDF, or a file layout you simply have to interpret. The gap between the two isn't a few hours, it's weeks.

The second is credentials and access. It looks like an administrative detail and it's one of the most frequent causes of delay. On your side you need someone who knows who to call at the accounting software supplier or at the bank, and who can authorise access. If that person hasn't been identified beforehand, the calendar stops.

The third is behaviour nobody has documented. A system that accepts an empty field in testing and rejects it in production. A courier that changes its label format without warning. An online shop that, under certain conditions, sends the same order twice. You find these out in the field, and they have to be allowed for from the start.

The fourth is working out who owns each piece of data. A product's price changes both in the online shop and in the management system: which one wins? A customer updates their address in the CRM, so what happens to invoices already issued? Until these rules are written down, every integration becomes an excuse for an argument.

Who is in charge of the data

For each type of data you need a single system of record, and all the others read from it. This one rule prevents most problems, and it's a decision for whoever runs the business before it's one for the technical people.

A typical example:

  • product master data and prices: the management system is in charge, the online shop receives them;
  • online orders: they start in the online shop, the management system imports them and governs them from then on;
  • sales contacts and deals: the CRM is in charge;
  • invoices and due dates: the accounting software is in charge, and in Italy it also has to talk to the Sistema di Interscambio, the tax authority's platform that every electronic invoice has to pass through.

Write this list before you ask for a quote. Whoever replies will understand the shape of the work straight away, and you'll be able to compare offers on something precise, as we explain in how custom software is priced.

Real time or at intervals

Not everything has to be instant, and choosing the right interval makes things much simpler. Ask yourself what an hour's delay on that piece of data actually costs you.

Real time is needed where delay does damage. Stock availability on an online shop that sells one-off items, for example, or the status of a payment before you ship. It is more complex to build and to keep running.

For many other things it's enough to sync at intervals, every quarter of an hour or once a night. Bank transactions to reconcile, data for reporting, price lists to update. It's simpler, more robust and easy to rerun when something goes wrong.

A good project uses both. Real time only where it's needed, intervals for the rest.

When something breaks

It will happen, and the project has to say in advance how you'll notice and how you recover. An integration without error handling works beautifully until the first day an external service can't be reached.

It's worth asking your supplier four simple questions.

  1. If the online shop doesn't respond, are orders lost or retried?
  2. Who gets an alert when a sync fails, and how soon?
  3. Is there a log where you can see what went through, when, and with what result?
  4. Can a failed operation be rerun by hand without creating duplicates?

If the answers are vague, the problem hasn't gone away. It will land on you, usually at the worst moment. This is also why support after release weighs more on integrations than anywhere else, a subject we cover in the bill after launch.

How to plan and estimate them

One at a time, and after trying them out. Before you close the scope it's worth doing a short technical check on each external system: connect to the test environment, read and write a real record, see what's missing.

Here's a sequence that holds up.

  1. A list of the systems to connect, with the name of the contact for each one.
  2. Data rules, meaning who is in charge, which direction data flows and how often.
  3. A technical check on each connection, before committing to a date.
  4. Integrations in order of risk. The least documented ones first, so the surprises come while there's still some slack.
  5. A test with real data in a separate environment, before touching production.

With two-week sprints and a working demo every 14 days, the riskiest integrations can be seen running early instead of staying a promise until the very end. And if the management system also has to replace one you already have, integrations and data migration need to be planned together.

Frequently asked questions

Can custom management software be connected to any other software?

Nearly always, yes, but at very different costs. If the software exposes a documented interface the work is predictable. If it only offers file exports, or no access at all, you need a bespoke solution, and the estimate should come after a technical check.

How long does an integration take?

It depends on the quality of the external system more than on the complexity of the data. With a well-documented service a few days are enough, with dated or undocumented software it can take weeks. That's why it pays to try them before you fix the dates.

What happens if the external software changes?

The integration has to be updated, and that's one of the reasons you need ongoing support after release. A good error log lets you spot the problem straight away, and not from a customer who never received their goods.

Let's find out together if we're the right partner for your project.
A twenty-minute call, no sales pitch. We work out what you need to build, what the first technical decision is and whether it makes sense to work together.
Tell us about your project

Ultimo aggiornamento: 24 settembre 2026

1. Chi siamo

ItaliansCodeItBetter S.R.L. (di seguito "ICIB", "noi", "nostro") è il titolare del trattamento dei dati personali raccolti tramite questo sito web.

Sede legale: Via Giuseppe Frua 22, 20146 Milano (MI)
Sede operativa: Viale Sabotino 19/2, 20135 Milano (MI)
Partita IVA: 14266910968
Email: vittorio@icib.dev

2. Dati che raccogliamo

Raccogliamo i seguenti dati personali esclusivamente attraverso il modulo di contatto presente sul nostro sito:

3. Come utilizziamo i tuoi dati

I dati raccolti vengono utilizzati esclusivamente per:

Non condividiamo mai i tuoi dati con terze parti per scopi commerciali o di marketing.

4. Tracking e Meta Ads

Il nostro sito utilizza Meta Pixel (Facebook Pixel) per finalità di tracciamento e ottimizzazione delle campagne pubblicitarie su Meta (Facebook e Instagram). Il pixel resta disattivato finché non presti il tuo consenso.

Meta Pixel raccoglie informazioni sulla tua visita, incluse:

Questi dati vengono utilizzati per mostrarti annunci pertinenti sui social media e per misurare l'efficacia delle nostre campagne pubblicitarie. Puoi gestire le preferenze pubblicitarie direttamente dalle impostazioni del tuo account Meta.

5. Cookie e tecnologie di tracciamento

Non utilizziamo cookie di caching sul nostro sito web. Gli unici cookie utilizzati sono quelli tecnici necessari al funzionamento del sito e alla memorizzazione della tua scelta, e quelli necessari al funzionamento di Meta Pixel come descritto nella sezione precedente.

Puoi modificare la tua scelta in qualsiasi momento: apri le preferenze cookie.

6. Base giuridica del trattamento

7. Conservazione dei dati

I tuoi dati personali vengono conservati per il tempo strettamente necessario a fornire i servizi richiesti e, in ogni caso, per un periodo non superiore a 24 mesi dalla raccolta, salvo diversi obblighi di legge. La tua scelta sui cookie viene conservata per 12 mesi, dopodiché ti verrà richiesta nuovamente.

8. I tuoi diritti (GDPR)

In conformità con il Regolamento Generale sulla Protezione dei Dati (GDPR), hai diritto a:

Per esercitare i tuoi diritti, contattaci all'indirizzo: vittorio@icib.dev

9. Sicurezza dei dati

Adottiamo misure di sicurezza tecniche e organizzative appropriate per proteggere i tuoi dati personali da accessi non autorizzati, perdita, distruzione o alterazione. Tutte le comunicazioni con i nostri server sono protette tramite protocolli di crittografia.

10. Modifiche alla Privacy Policy

Ci riserviamo il diritto di modificare questa Privacy Policy in qualsiasi momento. Le modifiche saranno pubblicate su questa pagina con indicazione della data di ultimo aggiornamento. Ti consigliamo di consultare periodicamente questa pagina per rimanere informato su come proteggiamo i tuoi dati.

11. Contatti

Per qualsiasi domanda o richiesta riguardante questa Privacy Policy o il trattamento dei tuoi dati personali, puoi contattarci a:

Email: vittorio@icib.dev
Indirizzo: Viale Sabotino 19/2, 20135 Milano (MI)

Hai anche il diritto di presentare un reclamo all'Autorità Garante per la protezione dei dati personali se ritieni che il trattamento dei tuoi dati violi il GDPR.

Data di entrata in vigore: 17 novembre 2025

1. Accettazione dei termini

Benvenuto. Accedendo al sito e utilizzando i servizi offerti da ItaliansCodeItBetter S.R.L. (di seguito "Sito"), l'utente accetta integralmente i presenti Termini di Servizio (di seguito "Termini"). Se non si è d'accordo con i Termini, non utilizzare il Sito né i servizi ivi offerti.

2. Descrizione del servizio

Il Sito è una vetrina che presenta ItaliansCodeItBetter S.R.L., la sua realtà informatica e i servizi potenziali che l'azienda potrebbe offrire. Il Sito consente agli utenti di contattare l'azienda per richiedere ulteriori informazioni o avviare un potenziale dialogo commerciale. Non sono presenti account utente, elaborazioni di pagamenti né raccolta di dati tramite il Sito, salvo i dati forniti volontariamente dall'utente attraverso contatti diretti (posta elettronica o moduli di contatto), regolati dalla normativa privacy applicabile.

Il Sito può contenere link a pagine social e ad altre risorse esterne.

3. Account utente e registrazione

Non è previsto alcun account utente o processo di registrazione sul Sito. Qualsiasi tentativo di creare, utilizzare o accedere a un account sarà considerato non conforme ai presenti Termini. Per esigenze di contatto, utilizzare l'indirizzo email indicato in "Informazioni di contatto" o i canali ufficiali della società.

4. Politica di utilizzo accettabile

L'uso del Sito deve essere diligente e conforme alla legge. È vietato:

5. Diritti di proprietà intellettuale

Tutti i diritti di proprietà intellettuale relativi al contenuto del Sito (testi, grafica, logo, codice, video, immagini, marchi) sono di proprietà di ItaliansCodeItBetter S.R.L. o dei suoi licenziatari. È vietata qualsiasi riproduzione, distribuzione, modifica o uso non autorizzato dei contenuti del Sito senza il previo consenso scritto della società, salvo quanto espressamente previsto dai presenti Termini. L'uso lecito per fini informativi è consentito solo per consultazione personale e non commerciale, purché non venga rimosso alcun avviso di copyright o proprietà.

6. Termini di pagamento

Non applicabile. Il Sito non elabora pagamenti né offre servizi tramite transazioni online. Eventuali pagamenti o accordi economici avverranno fuori dal Sito secondo contratti separati e documentazione dedicata.

7. Contenuti generati dagli utenti

Non sono previsti contenuti generati dagli utenti sul Sito (ad es. pubblicazioni, commenti o caricamenti). Qualora l'utente comunichi contenuti o feedback tramite i canali di contatto ufficiali, tali contenuti non conferiscono all'utente diritti di proprietà sul Sito o sui processi aziendali. L'azienda potrà utilizzare tali contenuti o feedback per migliorare i propri servizi, nel rispetto della normativa applicabile e della privacy dell'utente.

8. Attività vietate

Oltre a quanto specificato nel punto 4, è vietato:

9. Risoluzione

I presenti Termini si risolvono automaticamente in caso di violazione sostanziale, senza pregiudicare diritti già maturati. In caso di violazioni sostanziali, ItaliansCodeItBetter S.R.L. si riserva il diritto di sospendere o limitare l'accesso al Sito, nonché di intraprendere eventuali azioni legali necessarie. Le obbligazioni e responsabilità maturate prima della risoluzione rimangono efficaci.

10. Disclaimer e limitazioni di responsabilità

Il Sito è fornito "così com'è" e "come disponibile". ItaliansCodeItBetter S.R.L. non garantisce che il Sito sia sempre disponibile, privo di errori o interruzioni, né garantisce l'accuratezza o la completezza delle informazioni ivi contenute. In nessun caso ItaliansCodeItBetter S.R.L. sarà responsabile per danni diretti, indiretti, incidentali, consequenziali o punitivi derivanti dall'uso o dall'impossibilità di utilizzare il Sito, inclusi (senza limitazioni) perdita di profitti, dati o opportunità. Il Sito può contenere link a servizi o contenuti di terzi: tali contenuti non sono controllati dall'azienda e non comportano alcuna responsabilità.

11. Indennizzo

L'utente si impegna a manlevare e tenere indenne ItaliansCodeItBetter S.R.L., i suoi amministratori, dipendenti e affiliati da qualsiasi reclamo, perdita, responsabilità, danno, spesa o costo (incluse le spese legali) derivante dall'uso non conforme dei Termini, dalla violazione di diritti di terzi o dall'uso improprio del Sito.

12. Legge applicabile

I presenti Termini e l'uso del Sito sono disciplinati dalla legge italiana. Per qualsiasi controversia derivante dall'uso del Sito o dai presenti Termini, sarà competente in via esclusiva il Foro di Milano, salvo diverse norme inderogabili a tutela del consumatore ove applicabili.

13. Modifiche ai termini

ItaliansCodeItBetter S.R.L. si riserva il diritto di modificare i presenti Termini in qualsiasi momento. Le modifiche entrano in vigore al momento della pubblicazione sul Sito o mediante comunicazione all'utente, se prevista. L'uso continuato del Sito dopo la pubblicazione delle modifiche costituisce accettazione delle nuove condizioni.

14. Informazioni di contatto

ItaliansCodeItBetter S.R.L.
Indirizzo: Via Giuseppe Frua 22, 20146 Milano, Lombardia, Italia
Email: vittorio@icib.dev

Note finali

Per la protezione dei dati personali si rinvia alla Privacy Policy del Sito e alle modalità di trattamento indicate nelle comunicazioni ufficiali dell'azienda. Qualsiasi contatto o richiesta inviata all'indirizzo email indicato può comportare il trattamento di dati personali secondo la normativa vigente.

Last updated: 24 September 2026

English translation for convenience. The Italian version prevails in case of discrepancy.

1. Who we are

ItaliansCodeItBetter S.R.L. (hereinafter "ICIB", "we", "our") is the data controller for the personal data collected through this website.

Registered office: Via Giuseppe Frua 22, 20146 Milano (MI)
Operational office: Viale Sabotino 19/2, 20135 Milano (MI)
VAT number: 14266910968
Email: vittorio@icib.dev

2. Data we collect

We collect the following personal data exclusively through the contact form on our website:

3. How we use your data

The data collected is used exclusively to:

We never share your data with third parties for commercial or marketing purposes.

4. Tracking and Meta Ads

Our website uses Meta Pixel (Facebook Pixel) to track and optimise advertising campaigns on Meta (Facebook and Instagram). The pixel stays disabled until you give your consent.

Meta Pixel collects information about your visit, including:

This data is used to show you relevant ads on social media and to measure the effectiveness of our advertising campaigns. You can manage your ad preferences directly from your Meta account settings.

5. Cookies and tracking technologies

We do not use caching cookies on our website. The only cookies used are the technical cookies needed for the website to work and to store your choice, and those needed for Meta Pixel to work as described in the previous section.

You can change your choice at any time: open cookie preferences.

6. Legal basis for processing

7. Data retention

Your personal data is kept only for as long as strictly necessary to provide the services requested and, in any case, for no longer than 24 months from collection, unless other legal obligations apply. Your cookie choice is kept for 12 months, after which you will be asked again.

8. Your rights (GDPR)

In accordance with the General Data Protection Regulation (GDPR), you have the right to:

To exercise your rights, contact us at: vittorio@icib.dev

9. Data security

We adopt appropriate technical and organisational security measures to protect your personal data against unauthorised access, loss, destruction or alteration. All communications with our servers are protected by encryption protocols.

10. Changes to this Privacy Policy

We reserve the right to change this Privacy Policy at any time. Changes will be published on this page together with the date of the last update. We recommend checking this page regularly to stay informed about how we protect your data.

11. Contact

For any question or request about this Privacy Policy or the processing of your personal data, you can contact us at:

Email: vittorio@icib.dev
Address: Viale Sabotino 19/2, 20135 Milano (MI)

You also have the right to lodge a complaint with the Garante per la protezione dei dati personali (the Italian Data Protection Authority) if you believe that the processing of your data infringes the GDPR.

Effective date: 17 November 2025

English translation for convenience. The Italian version prevails in case of discrepancy.

1. Acceptance of the terms

Welcome. By accessing the website and using the services offered by ItaliansCodeItBetter S.R.L. (hereinafter the "Site"), the user fully accepts these Terms of Service (hereinafter the "Terms"). If you do not agree with the Terms, do not use the Site or the services offered on it.

2. Description of the service

The Site is a showcase presenting ItaliansCodeItBetter S.R.L., its IT business and the potential services the company may offer. The Site allows users to contact the company to request further information or to start a potential business conversation. There are no user accounts, no payment processing and no data collection through the Site, except for data provided voluntarily by the user through direct contact (email or contact forms), which is governed by the applicable privacy legislation.

The Site may contain links to social media pages and other external resources.

3. User accounts and registration

The Site has no user accounts and no registration process. Any attempt to create, use or access an account will be considered a breach of these Terms. To get in touch, use the email address shown under "Contact information" or the company's official channels.

4. Acceptable use policy

The Site must be used with due care and in compliance with the law. It is forbidden to:

5. Intellectual property rights

All intellectual property rights in the content of the Site (text, graphics, logo, code, videos, images, trademarks) belong to ItaliansCodeItBetter S.R.L. or its licensors. Any reproduction, distribution, modification or unauthorised use of the Site's content without the company's prior written consent is forbidden, except as expressly provided in these Terms. Lawful use for information purposes is permitted only for personal, non-commercial consultation, provided that no copyright or ownership notice is removed.

6. Payment terms

Not applicable. The Site does not process payments or offer services through online transactions. Any payments or financial arrangements will take place outside the Site under separate contracts and dedicated documentation.

7. User-generated content

The Site does not allow user-generated content (e.g. posts, comments or uploads). If the user sends content or feedback through the official contact channels, such content does not give the user any ownership rights over the Site or the company's processes. The company may use such content or feedback to improve its services, in compliance with applicable legislation and the user's privacy.

8. Prohibited activities

In addition to what is set out in section 4, the following are forbidden:

9. Termination

These Terms terminate automatically in the event of a material breach, without prejudice to rights already accrued. In the event of material breaches, ItaliansCodeItBetter S.R.L. reserves the right to suspend or restrict access to the Site and to take any legal action necessary. Obligations and liabilities accrued before termination remain in effect.

10. Disclaimer and limitation of liability

The Site is provided "as is" and "as available". ItaliansCodeItBetter S.R.L. does not guarantee that the Site will always be available or free from errors or interruptions, nor does it guarantee the accuracy or completeness of the information it contains. In no event will ItaliansCodeItBetter S.R.L. be liable for direct, indirect, incidental, consequential or punitive damages arising from the use of, or inability to use, the Site, including (without limitation) loss of profits, data or opportunities. The Site may contain links to third-party services or content: such content is not controlled by the company and does not give rise to any liability on its part.

11. Indemnification

The user agrees to indemnify and hold harmless ItaliansCodeItBetter S.R.L., its directors, employees and affiliates from any claim, loss, liability, damage, expense or cost (including legal fees) arising from use that does not comply with the Terms, from the infringement of third-party rights or from improper use of the Site.

12. Governing law

These Terms and the use of the Site are governed by Italian law. Any dispute arising from the use of the Site or from these Terms will fall under the exclusive jurisdiction of the Court of Milan (Foro di Milano), except where mandatory consumer protection rules provide otherwise.

13. Changes to the terms

ItaliansCodeItBetter S.R.L. reserves the right to change these Terms at any time. Changes take effect when they are published on the Site or, where applicable, when they are communicated to the user. Continued use of the Site after the changes are published constitutes acceptance of the new terms.

14. Contact information

ItaliansCodeItBetter S.R.L.
Address: Via Giuseppe Frua 22, 20146 Milano, Lombardia, Italia
Email: vittorio@icib.dev

Final notes

For the protection of personal data, please refer to the Site's Privacy Policy and to the processing methods set out in the company's official communications. Any contact or request sent to the email address shown may involve the processing of personal data in accordance with the laws in force.