GUIDE: WOOCOMMERCE + SOFTONE

WooCommerce and SoftOne: how to sync stock and orders automatically

If WooCommerce and SoftOne do not talk to each other automatically, every order means manual work: copying stock, checking the price, entering the order in the ERP. A two-way sync through the API removes exactly that step, with stock, price and order updated automatically, in both directions, within seconds.

What exactly gets synced, how long a sync takes and what happens when a stock conflict appears.

WordPress Cloudflare WooCommerce SoftOne ERP Docker WooCommerce SoftOne ERP

Why WooCommerce and SoftOne do not talk out of the box

WooCommerce is a store plugin. SoftOne is an inventory ERP. Out of the box there is no connection between them: every order placed in the store has to be copied into SoftOne by hand, and every stock or price change in the inventory has to be updated by hand in the store.

In a store with a few orders a day, that means 10-15 minutes of copying data. In a store with hundreds of orders, it means at least one person doing only that, all day, with the unavoidable risk of mistakes: a product left "in stock" in the store although it sold out in the inventory an hour ago, or a price not updated after a promotion ended.

An automatic ERP integration removes exactly that manual step: WooCommerce and SoftOne communicate directly, through an API, and data flows in both directions without anyone on the team copying it.

What exactly gets synced

Four categories of data flow automatically between the two systems, each with its own role:

Stock: the available quantity from SoftOne, reflected in WooCommerce on every change in the inventory.
Price: the selling price and active discounts, synced automatically from the SoftOne price lists.
Orders: every order placed in WooCommerce reaches SoftOne automatically, with the right products and quantities, ready to be invoiced.
Customers: customer and billing data, synced in both directions, without duplicate records. If you also sell to companies, the company details can be filled in at checkout, automatically, from the CUI.

How the flow works, step by step

The sync runs through an API: SoftOne exposes the stock, price and order data, and a connector reads and writes in both systems, at short intervals or through webhooks, depending on what your SoftOne version allows.

In short: a stock change in the inventory triggers an update in WooCommerce, within seconds to a few minutes. In the other direction, a new order from the store is sent automatically to SoftOne, with the products, quantities and customer data already filled in. Every run leaves a log, so you know exactly what was updated and when, not just that "something ran last night".

softone-sync.json
{
  "sync_id": "run-48213",
  "source": "SoftOne",
  "target": "WooCommerce",
  "product_sku": "SKU-10245",
  "stock": {
    "warehouse": "Main warehouse",
    "quantity": 34
  },
  "price": {
    "list": "Standard price",
    "value": 249.90
  },
  "orders_synced_today": 27,
  "status": "ok"
}

Simplified excerpt with sample values: the structure of the data that moves on every sync run between SoftOne and WooCommerce.

How long a sync takes

It depends on what your SoftOne instance allows. If it exposes webhooks, stock and price update almost instantly, within seconds of the change. If not, the sync runs at intervals, usually every 1-5 minutes for stock and price, often enough that the difference is not felt by a customer placing an order.

Orders usually go less often, every few minutes: they do not need the speed of stock, what matters is that they reach SoftOne correctly, not instantly.

What happens on a stock conflict

The most common conflict: a customer orders at the exact moment the stock runs out in the inventory, and the two systems briefly disagree for a few seconds.

A well-built sync handles this explicitly instead of just "hoping" it does not happen: every discrepancy between the stock in SoftOne and the one in WooCommerce is logged and triggers an alert, so someone on the team can step in before the problem reaches another customer. If a product becomes unavailable in the middle of an order, the store can automatically block its sale until the next sync, instead of letting the order go through on a product that no longer exists.

How we do it at maxdev
hemerama.com
hemerama.com store, synced with SoftOne ERP
eCommerce · Retail

hemerama.com

WooCommerce SoftOne ERP Stock sync

We synced the store with SoftOne ERP for everything that could be synced: prices, stock, orders and customers move automatically between the two systems, with no manual intervention.

Mistakes to avoid

✕One-way sync only. If it only goes from the ERP to the store, stock stays correct, but orders still have to be entered into SoftOne by hand, so half of the problem remains unsolved.
✕Syncing too rarely. One run a day, overnight, is enough for a small store, but at volume the displayed stock no longer reflects reality during the day.
✕No error log. If a run fails silently, you only find out when a customer complains they ordered a sold-out product.
✕Price rules hardcoded in the store. Every price change or promotion has to be made twice, with the risk of the two systems staying different.
✕No plan for changing the ERP. A sync tied tightly to a single system means a rebuild from scratch at any migration, not an adaptation.
FREQUENTLY ASKED QUESTIONS

Questions we get often.

Yes, a connector built specifically for syncing, not a generic CSV export. The connector talks directly to the SoftOne API, in both directions.

Yes. If you hold stock in several warehouses, the store can show availability per warehouse or aggregated, depending on how you sell.

The store keeps working with the last synced data. When you restart the sync, the system automatically catches up on what changed in the meantime, without duplicating orders.

Yes. The sync is configured by module: you can start with stock and price only, then extend to orders and customers when you are ready.

It depends on how many modules you sync and how complex the price rules are. We give you an exact estimate after we see your SoftOne instance.

For a standard sync of stock, price and orders, usually 3-6 weeks. For complex per-customer price rules or multi-warehouse setups, it takes longer.

Tell us about your ERP.

Pick a time for a call or write to us directly. We look at your system and come back with a concrete sync plan, not a template quote.

or by email: contact@maxdev.ro