Products Upload
The task writes your products into the Shopware shop, with descriptions, prices, references to the images already uploaded, property values and category assignments. It is the channel's largest, and the one whose transfer plan you will touch in any case: three of its sections are deliberately empty, see below.
What gets transferred
For each product in TRADElube a product is created in the shop, and a parent article and its variants are treated separately: each has a transfer plan of its own.
The tasks whose results this one builds on run first: Categories Upload, Manufacturers Upload, Media Upload and Properties Upload. The reason is always the same: into the shop the product carries only the reference, not the image and not the category. What is not there yet cannot be named.
Stock does not go along. That is what Stocks Upload is for, because stock changes far more often than a product does.
How the transfer plan is built
The task has two plans, Product and Product Variant, and above them sits the tab bar that switches between them. Below it lies the second tab bar with the sections, and it is longer than the screen is wide: the arrows at its ends scroll it along.

| Section | What sits in it |
|---|---|
| Selection | Which products go into the shop at all, how TRADElube recognizes one already present there, and what happens to a product that drops out |
| Common | The fields on the product itself, among them Product Number as a mandatory assignment, plus dimensions, units, Delivery Time and Closeout |
| Descriptions | The texts, one tab per language of the shop |
| Media | The references to the images, their order and the cover |
| Prices | The one price every product has in the shop, plus Tax Rate as a mandatory assignment |
| Extended Prices | Bulk and customer group prices, one tab per rule of the shop |
| Properties | The property values on the product, one tab per property |
| Variant Properties | Only in the plan Product Variant: the axes a customer picks their variant along |
| Custom Fields | Everything Shopware has no field of its own for |
| Sales Channels | Which of the shop's sales channels the product appears in |
| Categories | The categories it is meant to sit in inside the shop |
Three sections are deliberately empty, namely Properties, Variant Properties and Custom Fields. An execution without them creates all products without error, and still no variant can be selected in the shop. They are not pre-filled because TRADElube cannot know which of your properties is meant to be an axis of the configurator in the shop and which stays a feature on the product. That decision is yours, and it comes out differently per shop. What goes where:
| Section | Takes | Becomes in the shop |
|---|---|---|
| Properties | Only properties of type selection | Property values on the product |
| Variant Properties | Only properties of type selection | The axes a customer picks their variant along |
| Custom Fields | Everything except selection, plus the localizable texts | A custom field on the product |
You fill Properties and Custom Fields in the plan Product only and not additionally in the plan Product Variant: Shopware passes these values down to the variants. The section Variant Properties, on the other hand, exists only in the plan Product Variant, because an axis belongs to the individual variant and not to the parent article. There is one tab per axis there, and a new tab arrives with its single assignment already set.
Only mapped properties are on offer in these sections. Whatever has no property group of the shop facing it in the channel's Properties tab does not appear here in the first place. So where one is missing, it is missing from the mapping, not from the plan.
Per property you choose between Mapped and By Name. Mapped names the option in the shop through its channel mapping and therefore requires Properties Upload to have run. By Name sends the group name and the value as text instead. The shop then creates the option itself, and you have two lists that have to meet through their spelling.
In the section Custom Fields you type the field name yourself. There is no lookup list of the custom fields present in the shop. A typo therefore only shows up in nothing arriving in the shop, and a new custom field in the shop stays unused until you enter it here.
Besides Condition and Existing Item, the Selection section also holds Removed Item. It answers what happens to a product in the shop that has dropped out of the condition or been deleted in TRADElube: Delete, Disable or Skip. Disable is the setting that takes a product out of the shop without touching its order history.
Active in the section Common is preset and not merely handed over. The preset script sets a product active only if it is active in TRADElube and, on top of that, is either a parent article or has stock in your first store. A sold-out variant thereby disappears from the shop instead of staying orderable, and the parent article stays, because its own stock says nothing.
Delivery Time is the case where TRADElube converts. Shopware does not keep a number of days but a list of named delivery times. So you assign a property holding a number or a date, and TRADElube uses it to find, in the channel's Delivery Times tab, the delivery time whose span the value falls into. The assignment is switched off out of the box.
In the plan Product Variant most assignments offer Inheritance From Parent Product. That is not an assignment doing nothing but the explicit instruction to Shopware to take the value from the parent article. It is the right way for everything that does not differ on the variant, because whatever you set on every variant individually you also have to maintain on every variant individually.
Prices and Extended Prices are two different things. Prices holds the one price a product carries in the shop. Through the choice above it you optionally add a struck-through price (With List Price) or a special-offer price with a validity period (With Special-Offer Price). Extended Prices is for bulk and customer group prices instead: per tab you pick a Rule of the shop, and the rule decides who the price applies to. You create the rules in the shop.
Special features and limits
An execution reporting success can still leave an unusable variant structure behind. Where the section Variant Properties is missing, the products are fully created and the shop's configurator has nothing to offer. That is not a transfer error but an open spot in the plan, which is why nobody reports anything either.
TRADElube does not create property groups or units in the shop. You create the group in the shop and map it in the channel's Properties tab before this task runs. The same holds for base units. In full under Shopware.
Products Upload and Products Download maintain the same channel mapping. If both run on one channel, the order of the executions decides which side dictates the price. So settle per channel where the catalogue is maintained.
Further reading
- Shopware: prerequisites, connection, mappings and the other twelve tasks
- Products Download (Shopware): the other way round
- Stocks Upload (Shopware): the stock this task does not take along
- Properties Upload (Shopware): the options Mapped relies on
- Products (reference): the detail view of a product and its sections
- Properties (concepts): the types of a property and what the selection type is good for
- Transfer plan (concepts): plan, section and assignment, plus the three ways to determine a value