WooCommerce

WooCommerce is an online shop, more precisely an extension for WordPress. TRADElube writes the catalogue into it: categories, images, products, prices and stock. Orders come back the other way. In the channel type selection the channel sits in the group Onlineshops and is called WooCommerce there.

The transfer plans of its tasks are largely pre-filled, because TRADElube knows what a WooCommerce product looks like. The setup is correspondingly short: five mapping tabs, and most of their rows find each other by matching names. The one place where you genuinely decide is the Attributes section of the product upload. Whether a customer can pick a variant in the shop hangs off it, and it is empty out of the box.

Prerequisites

What Where it comes from
A reachable WooCommerce shop You enter its address in the field Url
A REST key pair with write access You create it in the WooCommerce administration. Connecting WooCommerce shows the way. It yields Consumer Key and Consumer Secret
A WordPress account with an application password Yields User Name and Password. Only needed for the images, see below
The product attributes you want to transfer You create them in the shop, see special features and limits

The four sign-in entries belong to two different interfaces. WooCommerce is an extension for WordPress, and each brings its own interface with its own sign-in. Catalogue, orders and stock go through WooCommerce's interface and therefore through the key pair. The images go through WordPress's interface, because the media library belongs to WordPress and not to WooCommerce. That is what user name and application password are for.

For troubleshooting that is the channel's most useful property. If only Media Upload fails and everything else goes through, it is the user name and password. If everything else fails and the images arrive, it is the key pair. You do not have to guess which of the four entries is wrong, you read it off the pattern of the failures.

Login details section of the WooCommerce channel with url, user name, password, consumer key and consumer secret

Setting up the connection

  1. Enter the login details and save.
  2. In the Configuration section leave both category fields empty, see below.
  3. Fill the mappings, see below.
  4. Start the tasks.

You see whether the four entries are correct at the first Reload on a mapping tab: if the list from the shop arrives there, you are connected.

Configuration section of the WooCommerce channel with the two empty fields Root Category and External Root Category

Root Category refers to the TRADElube side. Empty means "all categories on the top level", which for a catalogue with several roots is the correct setting, not a forgotten one. Only if you deliberately want to transfer one subtree of your catalogue do you enter its root there.

External Root Category refers to the shop's side and decides where your top-level categories are created there. Empty means: on the shop's top level, which is the normal case. If you pick a category of the shop instead, your tree hangs underneath it. The drop-down fetches its entries from the shop only when opened, and it shows only the categories that do not already belong to one of your own.

Mappings

The channel holds five tabs, one per list that exists on both sides. The column External shows the entry in the shop, the column Internal the one in TRADElube.

Order status tab of the WooCommerce channel with six pre-filled rows, refunded among them without an internal counterpart

Tab What gets mapped
Tax Rates The shop's tax classes onto your tax rates. What is expected is the class, not the percentage: how high a class's rate is, the shop decides
Order Status The shop's order status onto the status in TRADElube. Correct without any manual work, see below
Payment Methods Invoice, prepayment and whatever else the shop offers
Shipping Methods The shop's shipping methods
Properties Your selection properties onto the shop's product attributes

Only entries actually in operation in the shop appear: a disabled payment method never shows up, and the Properties tab lists only attributes created as a selection in the shop. Free-text attributes do not appear, because a mapping would have nothing to pair there.

The Order Status tab is the only one that does not fetch its external side from the shop. WooCommerce's six states are fixed, so the tab brings them along, and the buttons Reload and Import are consequently absent there. The External column is a text field holding the key WooCommerce uses, not a drop-down. The internal side is pre-filled through the level of the status rather than through its name, so "open" onto open and "completed" onto completed. For you that means this tab is usually already correct the first time you open it, and equally so in every language. You should still look it over, because which of your statuses counts as completed is something only you know.

Reload fills the remaining four tabs, and Import creates the missing internal objects along with it. There is no way round: TRADElube creates no tax classes, payment methods or attributes in a WooCommerce shop. What the shop keeps, you maintain in the shop.

Available tasks

Nine tasks, seven into the shop and two out of it. Download means from the shop into TRADElube, upload the other way round.

Task Direction Transfers Notes
Categories Upload Export Categories
Media Upload Export Media Runs before the products, otherwise a product has no image to refer to
Properties Upload Export The options of the mapped selection properties Transfers the options, not the attributes themselves, see below
Products Download Import Products
Products Upload Export Products including variants, prices and image references The channel's largest task, with one plan per level
Stocks Upload Export Stock only Separate from the products, so a change in stock does not drag the whole product record along
Orders Download Import Orders including line items, addresses and customers The field Age of Orders to Sync limits how far back the search goes
Orders Status Upload Export The order status The way back to the shop after you have processed an order
Customers Upload Export Customers with billing and delivery address

Which of these tasks exist in your client is decided by your needs: what gets created is what you actually use. How a task runs and what its schedule means is under Tasks.

Categories, media and properties go one way only, namely into the shop. So a category tree maintained there cannot be taken over, and the same holds for the shop's media library and its attributes. These three you maintain in TRADElube.

Special features and limits

The channel knows no manufacturers. There is neither a task for it nor an assignment in the product upload, so a product's manufacturer does not reach the shop. The reason lies with the shop: WooCommerce keeps no manufacturers of its own, brands being a separate list added later.

TRADElube does not create product attributes in the shop. The task Properties Upload transfers the options of a selection property, for instance the individual color shades, but not the attribute they belong to. So the way is: create the attribute in the shop as a selection, map it in the tab Properties, save, then run the task.

Common questions

The shipping methods I set up are not in the Shipping Methods tab. The tab lists the shipping methods the shop knows in principle, not the ones you have set up in a shipping zone. Map your shipping method onto the shipping method it derives from in the shop.

No variant can be selected in the shop. Then the Attributes section of the plan Product Variation is empty, see Products Upload.

Two shops on one client. That is provided for, as two channels of the same type with their own login details, their own mappings and their own tasks, see Channels.

Further reading