New in Endora Commerce: a built-in CRM with sales opportunities See it →
Endora Commerce
Comarch

Comarch ERP XL integration

Comarch ERP XL runs trade, warehousing and production in mid-sized and large companies. The Comarch ERP XL module in Endora Commerce exchanges data with it in both directions, asynchronously, so the checkout and the quote request form never wait for the ERP to answer.

XL as the back office for B2B sales

Comarch ERP XL is an ERP system for companies whose sales rely on complex price lists, many warehouses and their own document processes. In such a company the ERP stays the place where stock is counted, prices are set and documents are issued, while the sales platform has to show that data to B2B customers and take their orders.

The Comarch ERP XL module is a paid module. It connects to the ERP through a REST connector plugin installed on the XL side, and one Endora Commerce installation serves one company in XL.

What flows in which direction

From XL to the platformFrom the platform to XL
Stock levels and pricesNew orders placed at checkout
Order document statusesNew contractors after organization verification
ContractorsB2B quote requests
Sale documents: invoices and WZ notes with attachmentsOrder description updates, if you configure them
Offers
Product records, optionally

The XL-to-platform direction works off the change buffer on the ERP side: the module reads new changes at regular intervals, turns each one into a sync job and acknowledges it in XL only once the write on the platform side has succeeded. The same change read a second time does not create a second job.

The direction towards XL is just as asynchronous. Placing an order or sending a quote request only puts a job on the queue, so a temporary ERP outage does not block the customer at checkout. Prices from XL go into the platform’s pricing engine, and stock into its multi-warehouse stock handling.

Mappings you set in the admin panel

The integration is configured in the integrations section, on the Comarch XL tab. Besides the plugin address, the XL API username and password and a connection test, you set there:

  • Identity mappings: which SKU, order or organization in the platform corresponds to which record in XL. Rebinding a mapping leaves a trace in the history.
  • A warehouse map: which XL warehouse feeds which stock source in the platform, also separately per sales channel.
  • A price-list map: which XL price list becomes which price list or customer price tier.
  • Status maps: how order and offer statuses from XL translate into statuses in the platform.

A missing mapping is not skipped silently. A job that needs it ends with an error and a readable description, and stock or prices from an unmapped warehouse or price list wait until the configuration is completed.

The sync monitor

Every job is visible in the sync monitor: with its direction, status, correlation ID and error details. The correlation ID is also sent with every request to XL, so an entry from the ERP logs is easy to find in the admin panel.

StatusMeaning
pendingwaiting for a free worker
in progressbeing processed right now
successfinished, change acknowledged in XL
errorfailed, with a code and a description of why
poisonfailed after all retries were used up

Once mappings or configuration are fixed, you resume a job with the retry button. The monitor also shows worker heartbeats, so you can see at a glance whether change detection and processing are running. A separate switch pauses intake of new changes from XL, which is useful during a migration or maintenance on the ERP side.

XL, PIM and other ERP connectors

  • One ERP connector at a time. Comarch ERP XL cannot be switched on while another ERP connector is active, for example Comarch ERP Optima or Subiekt GT.
  • A PIM can run alongside. A PIM connector, for example Akeneo or Pimcore, then owns catalog content, while XL owns stock, prices and documents. When a PIM is active, importing product records from XL is off by default, and you switch it on only if XL is meant to overwrite product content.
  • Switching it off deletes nothing. It stops the workers and hides the screens, while mappings and imported data stay in place.

Rules specific to your company

Every company works in XL a little differently. Rules that follow from your commercial policies, such as routing stock between warehouses, which products are available for sale, margins, extra attributes sent with an order or status translations, do not go into the generic module. We put them in a separate overlay module built for your rollout, so updates to the XL module do not overwrite what you agreed.

What to prepare on the XL side

  • The REST connector plugin installed on the XL side, in a version matching the API contract the module supports.
  • A username and password with XL API permissions, set aside for the integration.
  • An HTTPS address for the plugin, reachable from the server running the platform’s workers. In production an unencrypted connection is refused.
  • Clean codes: unique product codes, contractors with correct tax IDs (NIP), and the list of warehouses and price lists that should be visible in online sales.

We agree the scope of flows and mappings in a discovery workshop before the module goes live. If invoices are to be issued in the platform rather than in XL, the separate KSeF integration handles that.

Let’s find out what we can connect at your end

Book a free consultation. We will walk through your ERP, warehouse and sales processes, and show you what the integration path looks like step by step.

Michał Zabielski, founder and CEO of Endora

Michał Zabielski

Founder and CEO, Endora

We reply within one business day.