Traces - what was transferred when and where?
When several systems communicate with each other, for example an ERP system, an online shop and a product information system such as TRADElube, things quickly become confusing: who transferred which data and when? Was a product updated or not? Why was a price overwritten in the shop? Or why not?
This is exactly where the traces in TRADElube come in. For every task that reads, processes or transfers data, the transferred content and the point in time are logged. These logs make it possible to see afterwards exactly what happened, and what did not. That is helpful not only for technical problems, but also when you simply want to understand why a certain state in the shop or in the ERP system looks the way it does.
This page shows you four things:
- when a product, a category or a stock level was last synchronized,
- whether a change actually took place in the process,
- which content came from a source and how it was processed,
- how to clarify the typical questions yourself, without an enquiry to support.
Note: Even though this documentation mostly speaks of "products", the described principles apply equally to categories, manufacturers, media or other data types.
Why the traces are useful for you as a customer too
In many cases where an error is suspected, the cause lies not in TRADElube itself but in an upstream or downstream system, in the ERP system, in the shop or in a plugin inside it. The traces let you carry out a first analysis yourself, and the clarification then starts from a finding rather than from a guess.
This initiative not only helps you reach a solution faster, it is also crucial for us. If we had to analyze every enquiry in detail although the cause lies outside of TRADElube, effort arises which ultimately affects the costs for all customers. In the "interfaces" business model that is a critical point.
So use the traces as a tool for self help. That is exactly what they are there for.
Overall traces overview
TRADElube offers a central overview of all individual transfers that took place as part of the data synchronization. Each of these transfers concerns a particular data object (see the Details column) and is part of a particular task, which is shown in the overview in the Context column. This lets you trace what was transferred and when, and where the trigger came from, from the Supplier Product Data Products Import or Shopware Demo Shop Products Upload task for instance.
This overview helps you see at a glance:
- Which transfers took place and when
- Which data objects (e.g. products, categories, media, ...) were affected
- Whether an object was Created, Modified or Removed, whether there was nothing to do (Neutral), or whether the transfer was Failed
You find this overall overview through the Traces navigation entry. The view is sorted chronologically, the newest transfers are at the top.
Note: This page and its screenshots were created on the basis of version 1.3.0. If you run a different version, filters and buttons may differ. The principle behind them has been there from the start.

Filter options
To search for particular transfers, five filters are available, one per value of the State column:
- Neutral No change detected, therefore no active transfer
- Created The object was newly created
- Modified A change in content was detected and transferred
- Removed The object was taken out of the channel
- Failed The transfer could not be completed successfully
What these values say in detail, and why the state hangs on the individual record rather than on the execution, is under traces.
Note: By default only the Failed filter is active in traces. To also see objects that were transferred or changed successfully, the corresponding filters have to be activated manually in addition.
In addition you can search for particular terms, an article number for instance, through the free text Filter input field.
Executed At versus Changes At
For every transfer TRADElube shows both Executed At (when this individual transfer took place) and Changes At (when the object last changed). These two points in time can differ, because not every transfer actually causes a change. In that case the change time is older than the last execution time.
The table is wider than the area it sits in. Changes At therefore lies outside it on the right, as in the screenshot above, and comes into view once you scroll the list sideways.
Through a hash comparison TRADElube detects whether the data has really changed. Only then is a transfer triggered. That is why a range of 50,000 articles is no different a case from one of 500, and it is also why the logs state exactly what was changed and what was not.
Details of individual transfers
The Show Details button opens a separate dialog for each individual transfer (select the desired log row in the overview first). There you examine the exact contents of the transfer in detail.

Note: This dialog has a scroll bar, so in this example it does not stop at "referenceUnit": 5.0, you can keep scrolling (both vertically and horizontally, in case a line is wider than your screen).
So here you see exactly how the data was delivered by the upstream system, or how the data was handed over to a downstream system (depending on whether the context is an import or an export). On that basis you can check whether, for example, a particular field value was delivered correctly or not, or handed over or not.
The detail view often shows technically structured formats such as XML or JSON, but do not let that confuse you: you do not have to understand these formats in detail in order to interpret the information they contain sensibly.
A few practical examples:
- In the context of the Shopware Demo Shop Products Upload task you see the entry
"price": 19.99, although you expect 24.99 in the shop. Then it is evident that TRADElube handed over the value 19.99. It is then best to also check the context the price came from, with a supplier file that is Supplier Product Data Products Import, to see whether it already came in that way. - In the context of the Shopware Demo Shop Stocks Upload task you discover that the stock level was set to
"stock": 0, although you actually expect stock. Then that is the value that went out. - In the context of the Shopware Demo Shop Products Upload task there is no entry at all for a particular field. Then this field was probably not synchronized, for example because it is excluded in the configuration.
So even without technical background knowledge the transmitted values can usually be made sense of. Try it out. It comes with practice.
Tip: If you are unsure, you can still help with the error analysis in your support request by sending us these details and your preliminary analysis results right away. Later on, these details may already have been changed again by another transfer, which then makes tracing harder. From version 1.3.0 TRADElube keeps up to five states, so the history does reach back a little. How far it reaches is under traces.
Object related traces
Besides the overall overview of all transfers, TRADElube also offers the possibility to view the transfers directly in the context of a particular object, for example a product. These object related traces are especially helpful when you want to concentrate on a single product, category, manufacturer, image or a specific order, without having to work through the entire transfer list of all objects.
You find the view for example in the product management. Search for a particular product, e.g. by article number, open it with the Edit button and then go to the Channels section (you always find it at the very bottom, for manufacturers, categories, media, orders and customers as well). Here you first see all channels listed in which the specific object occurs.
Tip: In the overall traces overview there is a Goto button, by the way. It also takes you directly to the affected object without a detour.

The Show Traces button opens a dialog with the corresponding transfer details (select the row with the desired channel first, then the button becomes active). The dialog is split into several tabs, one tab per task. So consider beforehand which context you actually want to examine, and select the relevant channel and then the right tab in the dialog. In the screenshot for example, for the channel Shopware Demo Shop the task Stocks Upload, if you want to find out which stock level last went into the shop for this specific product.

Excursus: checking a task's configuration yourself
If you want to understand even more precisely how certain data is transferred in the first place, it is worth taking a look at the configuration of the respective task. You find it through the Tasks navigation entry. There you select the desired task, Shopware Demo Shop Products Upload for instance, and then open the Transfer Plan section within the task.
In the transfer plan you can view the configuration (usually split across several tabs), for example:
- Which fields are transferred?
- Which technical field names are behind them?
- Are certain fields excluded from the transfer?
- Should a field only be set through Only on Insert?
- Are there individual scripts or conversions?
This information helps you find your way around the trace details better, and to narrow down the concrete cause of certain data values in the shop or in the ERP system.
Example:
A frequent case concerns the price fields. It may be that the upstream system generally offers different prices (e.g. a normal sales price and a special internet sales price). From the outside it cannot be determined which price was defined as the right one, and both requirements occur. Which one is more sensible for you is your decision. In the traces you see which price was actually transferred, and in the configuration which one it should be. Only together do these two pieces of information sometimes give a conclusive picture, and in case of a problem it is either the configuration or the delivered data itself.

In this example note the information in gray below the labels: tax, purchasePrice and price/gross. Those are the technical field names, which you can search for in the trace details. The /gross part says that a gross price is expected in that place. Whether it is gross or net can make a difference if the delivering system happened to calculate the gross or net price incorrectly, a real case from practice.
Especially for data such as price, stock level or category assignment it is worth checking the transfer plan in detail, in particular when the traces show you a correct result that still does not match your expectations.
Conclusion: full transparency instead of guesswork
An interface connects several systems, and where there is a deviation the actual work is narrowing down the cause: was the value delivered that way, processed that way or handed over that way? Anyone who cannot look that up has to involve support or a service provider every single time.
Here every transfer is viewable for you, from the task through the concrete fields all the way to the actual content. That narrows the cause down in minutes instead of days, and many uncertainties clear up with a few clicks. The price of that is on this page: you see the data the way the systems exchange it, in XML or JSON.
🧩 This makes TRADElube not a "black box", but a tool with genuine traceability, which not only saves time but also makes clarification with the provider of your ERP system, your shop or any other system involved considerably easier.