Skip to content
PGtech
← Back to writing
Integracije 03. July 2026. · 6 min read

How reliable synchronization between a webshop and an ERP actually works

Connecting a store and an ERP is easy while everything goes as planned. The real difference lies in the boring details that decide whether an integration runs for years or breaks in a week.

Almost every company that sells something online eventually reaches the same question: how do orders from the webshop reach the ERP automatically, and how do stock and prices from the ERP reach the store automatically, without manual re-typing. The idea is simple. The problem is that the real value of an integration is not visible when everything works, but when something fails — and something always fails. A server goes down for a minute, the internet stalls, one system updates. A good integration survives those moments without anyone noticing.

Real-time or scheduled

There are two basic approaches. With real-time synchronization one system immediately tells the other that something happened, usually through a so-called webhook — a message sent the moment an order comes in. With the batch approach the systems reconcile every few minutes or once a day, in bulk.

Real-time seems better because it is faster, but it is more fragile: if the other side does not answer at that exact moment, the message has to be stored somewhere and retried. Batch is slower, but more predictable and easier to monitor. In practice the best systems combine both: orders go immediately, stock and prices reconcile periodically, and once a day a full check runs to make sure nothing has drifted apart.

Idempotency — why an order must not be duplicated

This is the most important boring detail. The network is not reliable. The order message is sent, but the confirmation that it arrived is lost, so the system tries again. If the integration is not built carefully, the same order enters the ERP twice, and the customer gets two invoices.

Idempotency means that the same operation, no matter how many times it repeats, produces the same result — the order enters exactly once. This is achieved by giving every order a unique marker, and having the ERP check whether it has already seen that marker before inserting it. It sounds minor, but that detail is exactly what separates a system you trust from one you have to review every morning.

Who wins when both change

What if an item is edited in the store and in the ERP at the same time? Someone has to win. That is why clear rules are agreed in advance:

  • the ERP is always the source of truth for prices and stock;
  • the webshop is the source of truth for content and descriptions;
  • in a conflict the last change wins, but the old value is kept;
  • each side updates only the fields it is responsible for.

Without these rules you get silent overwriting of data that no one notices until it is too late — the price you corrected by hand reverts to the old one the very next morning.

Monitoring and the last successful sync

An integration that works in silence is dangerous, because you do not know whether it is really working or stopped three days ago. That is why every serious system records errors, reports when something does not go through, and always knows when the last successful synchronization happened. When something fails, you do not wonder whether it happened — you immediately see what, when and why.

An integration without monitoring is not an integration, but a time bomb.

If orders and stock travel between your store and your ERP, and you are not sure what happens when something fails, let us look together at how your connection is built and where its weak points are.

Next step

Have a system that should work better?