JTL-Wawi and Shopware: protect product texts and languages from the sync
With JTL-Wawi, the ERP is the leading system. Whatever texts you maintain in Shopware are gone after the next sync: SEO descriptions, meta texts and the texts of channel languages of their own. This guide shows how to keep JTL for prices and stock and still maintain the texts in Shopware.
- External system protection: the PIM remembers the maintained state per product number and language and restores it as soon as the JTL connector overwrites it.
- Only the texts: protected are name, description, meta title, meta description and keywords. Prices, stock and master data keep coming from the ERP.
- Selectable per language: for example only the channel language "German (B2B)", while German keeps coming from the ERP.
- Traceable: a log shows every run, and a CSV lists the restored products.
Why JTL overwrites your texts
The JTL connector links the ERP to the shop via a Shopware integration. The ERP leads the data: with every sync it writes the product data to Shopware again. Whatever you changed directly in Shopware is gone afterwards.
For prices and stock that is intended. For texts it is often a problem:
- SEO texts and meta data you improved in the shop with AI or by hand
- Texts of their own per sales channel, for example for a B2B shop or a second brand running on languages of their own (see product texts per sales channel)
- Translations created in Shopware that do not exist in the ERP at all
The usual way out is to maintain everything in the ERP. For texts per channel, AI texts in several languages and meta data that is a lot of work and often not possible at all.
The division of work
| Data | Maintained in | With the JTL sync |
|---|---|---|
| Prices, stock, product number, EAN | JTL-Wawi | transferred as usual |
| Name | your choice: ERP or PIM | protected if you select the field |
| Description, meta title, meta description, keywords | PIM | protected and restored |
| Texts of channel languages of their own | PIM | protected and restored |
How to set up the protection
- Config matrix, "External systems" tab: switch on "Enable protection". It is off by default.
- Protected languages: choose the languages whose texts you maintain in Shopware. For texts per channel that is exactly the channel language, for example "German (B2B)". Without at least one language nothing happens.
- Protected fields: all five by default. If the product name should keep coming from the ERP, remove "Name".
- Integrations treated as external: choose the integration you created for the JTL connector. Without a selection every integration counts as external.
- Trigger: keep "Events and scheduled run". This needs Shopware's task processing to run. Alternatively call the displayed HTTP address regularly via your host's cron service.
- Maintain texts, then "Set reference state": the current state becomes the target state. For very large catalogues the console is more reliable:
bin/console staw:pim:guard:snapshot.
What happens with the next sync
- JTL writes: the connector transfers the product data, including name and description.
- The PIM detects it: writes of the selected integration into product translations are flagged right away.
- The scheduled run restores: differing fields are reset to the reference state, by default within a few minutes.
- You check the log: time, number of restored entries and a CSV with product number, name and fields.
Your own changes in the PIM refresh the reference state right away, they are never reset. All settings in detail: External system protection: guide.
Frequently asked questions
Why does JTL overwrite my texts in Shopware?
With the sync, JTL-Wawi is the leading system and writes the product data to Shopware every time. Changes made only in Shopware are lost.
Do prices and stock from JTL stay as they are?
Yes. The protection only covers name, description, meta title, meta description and keywords of the selected languages. Everything else keeps coming from the ERP.
Are the ERP texts briefly visible in the shop?
Yes, between the sync and the next scheduled run. By default that is a few minutes.
Does this also work with texts of their own per sales channel?
Yes. Under "Protected languages" choose exactly the language the channel uses, for example "German (B2B)".
Does it work with other ERP systems?
Yes, with every system that writes via a Shopware integration. If an import bypasses the interface, "Restore now" still finds the differences.
Further reading
- Shopware: product texts per sales channel: texts of their own per channel, with export
- Protect Shopware texts from ERP and interfaces: the external system protection at a glance
- External system protection: guide: all settings
- PIM vs. ERP in Shopware: who maintains what?
JTL and JTL-Wawi are trademarks of JTL-Software-GmbH. Shopware is a trademark of shopware AG. They are mentioned for descriptive purposes only.