WooCommerce

WooCommerce is a flexible, open-source eCommerce solution built on WordPress. Whether you’re launching a business, taking an existing brick and mortar store online, or designing sites for clients you can get started quickly and build exactly the store you want.

1. Installing WordPress

WordPress.org serves as a content management system and launch platform for your online trading with WooCommerce. For details on installing WordPress consult the How to install WordPress page.

2. Installing the WooCommerce plugin by WordPress

Once you have WordPress up and running, install Wordpress’s WooCommerce plugin Installing and Uninstalling WooCommerce.

3. Generating the WooCommerce API credentials

Generate WooCommerce API credentials from your WooCommerce dashboard. You need these credentials to connect PlentyONE to WooCommerce.

  1. Open the WooCommerce dashboard.

  2. Open WooCommerce » Settings » Advanced » REST API.

  3. Click on Add key.

  4. Create a Description.
    Important: Ensure that all Permissions are set to Read / Write.

  5. Click on Generate API key.

  6. Copy the API key.
    Important: Copy the API key straight away. The API key will be hidden once you leave the page.

  1. Open the WooCommerce dashboard.

  2. Go to Settings » Permalinks.

  3. Select one of the supported URL structures.

  4. Save the settings.
    Important: The plugin supports all URL structures except Plain.

5. Installing the plugin in PlentyONE

To connect to WooCommerce in PlentyONE. first install the WooCommerce plugin in your PlentyONE system. You can download this and other plugins in the plentyMarketplace.

Important: Install the plugin in the plugin set of the main client.

WooCommerce: Adding and installing the plugin

Adding plugin to the system:

  1. Go to Plugins » plentyMarketplace.
    → The marketplace opens in a new tab.

  2. Navigate to the plugin WooCommerce.
    Tip: Either use the search function or open the category Plugins » Sales » Marketplaces.

  3. Open the detail view of the plugin.

  4. In the column to the right, click on Go to checkout.
    → The Checkout window opens.

  5. Read and accept the General Terms and Conditions.

  6. Click on Order now.
    → Wait a few minutes before installing the plugin.

Installing plugins:

  1. Go to Plugins » Plugin set overview.

  2. Click on the plugin set of your main client.
    Important: In other words: The plugin set must be linked to the main client.
    → The plugin set opens.

  3. Click on Add plugin.

  4. Select WooCommerce from the plugin list.

  5. Click on Install.
    → The plugin is installed.
    → The plugin set is shown.

  6. Switch the plugin to active ().

  7. Save () the plugin set.
    Tip: Problems saving the plugin set? Click on Open details to show additional information.

6. Activating the order referrer

Go to Setup » Orders » Order referrer to activate the order referrer. This ensures that orders are assigned to the correct sales channel.

What is an order referrer?

An order referrer tags an order with the sales channel on which the order was generated. Sales channels can be e.g. your online shop or markets on which you sell your items. Each sales channel has an individual order referrer. Some order referrers are available by default in your PlentyONE system. Further order referrers are added e.g. if you install a new plugin. For further information about the order referrer, see the page Order referrer of the PlentyONE manual.

Activating the order referrer for WooCommerce:

  1. Go to Setup » Orders » Order referrer.

  2. Click Search (search).

  3. In the list, navigate to the option WooCommerce.
    Tip: The order referrer is not in the list? Then you probably have not installed the plugin yet.

  4. On the right of the referrer’s line, click on Edit (edit).
    → The window Edit referrer opens.

  5. Activate the option Visible in selection (toggle_on).

  6. Click on Save (save).
    → The referrer is active.

→ The menu Setup » Markets » WooCommerce can be selected.

Important: Note that the plugin cannot use order referrers that were created manually.

7. Setting up the interface in PlentyONE

Carry out the following settings in PlentyONE to set up the interface to WooCommerce. Keep the credentials to hand that you received from WooCommerce during the registration process.

7.1. Connecting to the WooCommerce API

Connect to the WooCommerce API. To do so, you need the credentials you received from WooCommerce.

Connecting to the WooCommerce API:

  1. Go to Setup » Markets » WooCommerce » Tab: Connection.
    The menu is not there? Then go to Setup » Orders » Order referrer to activate the order referrer.

  2. Assign the PlentyONE client through which this connection runs.

  3. Enter the Host name.
    Example: http://yourWebShopName.domain/
    Important: The slash [ / ] at the end of the URL is mandatory.

  4. Enter the Customer key.

  5. Enter the Customer secret.

  6. Click on Test connection.

  7. Save the settings.
    → Your plugin is connected to the WooCommerce API.
    Important: If you change the WooCommerce shop in this connection later, you need to select a new PlentyONE client. Select a client that has never been connected to a different WooCommerce webshop before. Otherwise, orders that are imported using the new connection might be assigned to existing customers that were created with the old connection.

Optional: Connecting additional WooCommerce webshops

Each new connection requires a separate PlentyONE client and WooCommerce account. As such, you need a separate PlentyONE client for each WooCommerce shop.

Important: You also need to select a new PlentyONE client when you change the WooCommerce shop in an existing connection.

Connecting additional WooCommerce webshops:

  1. Go to Setup » Markets » WooCommerce » Tab: Connection.

  2. Click on [+] Add.

  3. Configure the connection as you did with the previous one.
    Tip: You can swap between plugin configurations by selecting the corresponding WooCommerce webshop from the Client section.

7.2. Setting up Germanized Readiness

Germanized extends WooCommerce to technically match specific german legal requirements. The plugin adapts your WooCommerce plugin to the special conditions of the German market.

Setting up Germanized Readiness:

  1. Use the installation guide on WooCommerce to install and set up the Germanized plugin.

  2. In PlentyONE. go to Setup » Markets » WooCommerce » Settings » Section: Data Exchange.

  3. Activate the option Export data to 'Germanized plugin' specific input fields.

  4. Save the setting.

Below is a list of the Germanized fields that are processed during the item export/update:

  • The Variation » Costs » Customs Tarif number to the WooCommerce Item » Shipping » HS code.

  • The Variation » Model to the WooCommerce Item » Variations » Variation » MPN.

  • The Variation » First barcode with referrer WooCommerce to the WooCommerce Variations » Variation » GTIN.

  • The Item » Global » Manufacturing country to the WooCommerce Item » Shipping » Manufacturing country.

  • During order import: At Order Import, the WooCommerce DHL post number is imported as Contact » Address » Option Type: Post number

  • The variation’s Base price. This price is generated as follows:
    Important: The exported Base price is calculated from the variant assigned WooCommerce sales price. If your variant also has a special offer price defined for WooCommerce, a base price will be generated and exported for it as well.

    • Size: Meters, centimetres and millimetres are expressed as meter values at export time. Inches are expressed as inches.

    • Weight: Kilograms, grams and milligrams are expressed as kilogram values at export time. Ounces are expressed as ounces.

    • Volume: Litres and millilitres up to 250ml are expressed as millilitres at export time. From 250ml up, the exported value is expressed as litres. Exported values you defined in litres abide by the same rule as litre and millilitre.

7.3. Configuring the plugin

Important: Item related import and export processes cannot be active at the same time.

Configuring the plugin:

  1. Go to Setup » Markets » WooCommerce » Tab: Connection.
    The menu is not there? Then go to Setup » Orders » Order referrer to activate the order referrer.

Table 1. Plugin settings
Setting Explanation

Webshops

Switch between different WooCommerce connections.

Processes

Order import

Runs every 15 minutes.

Imports only orders from the statuses you select under Order Import status.

The following data is imported:

  • Order type

  • Status

  • Currency

  • External order ID

  • Invoice address

  • Delivery address

  • Contact
    → Marked as buyer

  • Item and Variation ID

  • Order referrer

  • Item description

  • Ordered quantities

  • VAT

  • VAT rate

  • Sales price
    → excluding surcharges and discounts

  • Discounts

  • Customer notes

The correct PlentyONE shipping profile is assigned during the order import only if the names of the shipping profiles are the same in WooCommerce and PlentyONE.

The Plugin only recognises discount items contained on imported WooCommerce orders. Discount campaigns are not supported. The discounted value from the WooCommerce order is imported as a separate order item on your PlentyONE order.

The order import process also performs a Payment status update for already imported orders.

Stock export

The stock export runs dynamically based on the number of variations to update:

  • Every 15 minutes for up to 500 variations.

  • Hourly for 500 to 1500 variations.

  • Once a day for more than 1500 variations.

Important: SKU must be identical in PlentyONE and WooCommerce for this process to work.

Price export

Runs every 15 minutes.

Important: SKU must be identical in PlentyONE and WooCommerce for this process to work. The plugin uses the WooCommerce setting Settings » TAX » Prices entered with tax to decide if the exported price is GROSS or NET.

Customers Import

Runs once a day.

Imports the WooCommerce customer base into PlentyONE.

Note: During the order import process, the plugin also imports contact details. To comply with GDPR requirements, the following policies regarding customer accounts and orders have been implemented:

Scenario

Scenarios

Customer is imported as guest

  • The customer has no PlentyONE account.

  • The authenticity of the customer is not guaranteed by either part, even if the contact details on several orders are the same.
    Note: You can convert contacts of the type Guest to regular contacts if required.

Customer is imported as PlentyONE contact

  • The plugin creates a regular account if the authenticity of the WooCommerce contact is guaranteed by a unique external contact ID.

An existing PlentyONE contact is linked to the imported order

  • The plugin checks if a WooCommerce contact with this external contact ID has already been imported in the past.

  • If a contact exists, the new order is attached to this contact.

Category export

Runs once a day. Exports all categories activated for the referrer WooCommerce.

Note: Do not use this feature to export categories that are linked to items. For that purpose, use the item export instead. This feature is meant to be used for an easy export of your entire PlentyONE category tree.

Note that the plugin may delete specific WooCommerce categories if:

  • the corresponding PlentyONE category is deleted.

  • the corresponding PlentyONE category’s client assignment is removed.

Category import

Runs once a day. Imports all WooCommerce categories to PlentyONE.

Note: Categories linked to items can also be exported with the item import process.

Item export

  • Runs once a day for the first export.

  • Hourly for subsequent item updates.
    Important: The plugin only works with WooCommerce item types Simple Product and Variable Product.

The following data is exported:

  • Name 1 as Product name

  • Preview Text as Short Description

  • Item text *as *Product Description

  • Creation Date as Published Date

  • Sales Price as General » Regular Price
    Note: The sales price with the lowest position activated for the referrer WooCommerce of the variation is exported.

  • Special Offer Price as General » Sale Price

  • Categories linked to items that are activated for WooCommerce.

  • Gross weight as Weight

  • Dimensions as Shipping » Dimensions

  • VAT rate

  • Item Images to Product Gallery

  • The linked Variation image with the lowest position.

  • Linked Attributes as Attributes

  • Characteristics as Attributes * Visible on the product page

  • Properties as Attributes * Visible on the product page

  • Meta keywords as Tags

  • SKU as SKU

  • Stock NET as Stock

Item import

Runs once a day.

The plugin only works with WooCommerce item types Simple Product and Variable Product.

The following data is imported:

  • Product name as Name 1

  • Short Description as Preview Text

  • Linked categories as Item assigned categories

  • Regular Price as Sales Price
    → A sales price for the order referrer WooCommerce will be created if it does not already exist.

  • Sale Price as Sales Price (Special Offer)

  • Weight as Gross Weight*Measurements* as Measurements

  • Product images

  • Variation Image as Variation linked Image

  • Attributes * linked attributes visible on Webshop as Properties

  • Tags as Meta keywords

  • Stock quantity as Physical Stock

  • SKU as SKU

Data exchange

Export manufacturer as attribute

Enable / Disable the export of the item linked manufacturer as Attribute * Visible on the product page.

Export item characteristics

Enable / Disable the export of the item linked characteristics as Attributes * Visible on the product page.

Export new items as 'Draft'

Enable / Disable the export of new items as Drafts.

Automatically generate SKU based on:

Generates SKUs for exported variations.

Available options are:

  • Empty (creates no SKU)

  • Variation number

  • Variation ID

  • Barcode

Recommendation: Use the same input field for SKU generation on all Woocommerce webshops that you manage through the plugin.

Export/import items to language

Select a language for the item import and item export.

Important: All translatable input fields have to be set up for this function to work.

Deactivate WooCommerce item if linked PlentyONE item is deactivated

Enable / Disable the deletion of WooCommerce items which have been deactivated on PlentyONE.

Export properties as WooCommerce attributes

Decide how item linked properties are to be exported with the item export process.

Available options are:

  • None = No properties are exported.

  • All = All properties are exported.

  • Only selected properties = Only properties are exported that you activated in the tab Properties export.

Tags for export / import

Export tags from source:

  • Meta Keywords

  • Tags linked to variations

Stock buffer

Whenever stock is exported to WooCommerce, the plugin will subtract the amount entered as stock buffer.

Import and export item stocks from:

All warehouses

Exports stock quantities from all warehouses of the type Sales which are linked to the item.

The warehouses of my choice

Select the warehouses of the type Sales from which the stock quantities are exported.

Order import options

Order import start date

The order import date is updated with each order import run to reflect the date of its last run. To import older orders, enter the start date of the oldest mist order.

Order import status

Select which orders are imported to PlentyONE.

Available options are:

  • Pending payment

  • Processing

  • On hold

  • Completed

Identify house number from WooCommerce 'Address line 1'

Enable / Disable the extraction of the House Number from WooCommerce Address line 1. This value is imported to PlentyONE input field ADDRESS 2.

Order import status

Order status for incoming cancelation requests

Select an order status for incoming cancelation requests.

Automatically deny incoming cancelation requests from status

Incoming cancel requests are automatically denied for orders with this status or higher.

Contact import options

Select which customer class is assigned to imported customers.

7.4. Whitelisting properties for the item export

Now, select which PlentyONE properties to export as WooCommerce attributes.

Important: WooCommerce does not accept properties with more than 28 characters.

Whitelisting properties for the item export:

  1. Go to Setup » Markets » WooCommerce » Tab: Properties Export.

  2. Select the online shop that you want to configure this function for.

  3. Click on [+] Add.

  4. Select a Property.

  5. Save the settings.
    → The whitelisted property is shown on the list.

7.5. Linking PlentyONE VAT rates to WooCommerce tax classes

Link the PlentyONE VAT rates with the tax classes in WooCommerce. This ensures that VAT rates are assigned correctly during the item export.

Linking PlentyONE VAT rates to WooCommerce tax classes:

  1. Go to Setup » Markets » WooCommerce » VAT rate mapping.

  2. Click on [+] Add.
    → The window Link PlentyONE VAT rates with WooCommerce tax classes opens.

  3. Select a PlentyONE VAT rate.

  4. Select a WooCommerce tax class.

  5. Save the settings.
    → The new mapping is shown in the list.
    Note: The mapped VAT rate from Item » variation » settings » Costs » VAT. is saved in the WooCommerce menu Product » General » TAX Class.

8. Using the plugin help

The PlentyONE back end provides the menu Setup » Markets » WooCommerce » Help. This plugin help enables you to:

8.1. Checking the plugin’s health

Checking the plugin’s health:

  1. Go to Setup » Markets » WooCommerce » Help » Plugin health.

  2. Click on Check.
    → The check is carried out.
    Conditions that are met are marked with a green OK.
    Conditions that have failed are marked with a red X.

What is checked?

  • Is the referrer WooCommerce activate in the menu Setup » Orders » Order referrer?

  • Is there more than one referrer WooCommerce in the menu Setup » Orders » Order referrer? Make sure that the ID with the highest number is active.

  • Could a connection to WooCommerce.com be established?

  • Is the SDK file deployed correctly?

8.2. Checking export conditions for variations

Checking export conditions for variations:

  1. Go to Setup » Markets » WooCommerce » Help » Export conditions.

  2. Select the online shop that you want to use this function for.

  3. Enter a valid variation ID.

  4. Click on Check.
    → The check is carried out.
    Conditions that are met are marked with a green OK.
    Conditions that have failed are marked with a red X.

What is checked?

  • The variation must be activate.

    • Item » Variation » Settings » Area: Availability, the checkbox Active must be set.

  • The variation must be available for the market WooCommerce.

    • Item » Variation » Availability » Area: Markets, WooCommerce must be assigned.

  • The variation must have an SKU for WooCommerce.

    • Item » Variation » Availability » Area: SKU must contain an SKU for the referrer WooCommerce.

  • Variation must have a wooCommerce sales price that uses the default system currency and is activated for the selected webshop.

  • The item must have a Name 1.

    • Item » Texts » Name 1 must be saved.

  • The variation’s Client (store) assignment matches the webshop selection in the plugin configuration.

  • The variation must have at least one linked category with a translation for the selected export language.

  • Attribute names exist for the selected item export language.

  • Attribute values exist for the selected item export language.

  • The selected variation contains no recent changes and is excluded from the next item export/update.

8.3. Adjusting the start date for stock and price exports

If you find that the stock/price export does not contain all expected item variations, you can reset the stock and price export start date to any date. The plugin bases the next run on your defined start date instead of on the normal last-run time stamp.

8.4. Manually exporting items

For testing purposes, you can manually export an item every 10 minutes.

Note: Use this function to test how the export will look before you export large amounts of item data.

Manually exporting an item:

  1. Go to Setup » Markets » WooCommerce » Help » Item export.

  2. Select the online shop for which you want to export the item.

  3. Enter a valid Item ID.

  4. Click on Run.
    → If all export requirements are met, the item and its variations will be exported.

Note: Have you deleted one or more items on WooCommerce in order to export them again? The next export only clears the plugin database. As a result, your item will only be exported to WooCommerce with the export after this one.

9. Tab: Stock export

For testing purposes, you can manually export an item’s stock every 5 minutes. You can manually export a variation every 3 minutes.

  • Manually exporting stock and sales price for one variation

  • Manually exporting stock and sales price for one item

Manually exporting stock and sales price for one variation:

  1. Go to Setup » Markets » WooCommerce » Help » Stock export.

  2. Select the online shop that you want to update stock for.

  3. Enter a valid variation ID.

  4. Click on Execute.
    → If all export requirements are met, the stock is exported.

Manually exporting stock and sales price for one item:

  1. Go to Setup » Markets » WooCommerce » Help » Stock export.

  2. Select the online shop that you want to update stock for.

  3. Enter a valid item ID.

  4. Click on Execute.
    → If all export requirements are met, the stock is exported.

10. Automating order processing

The event procedures provided by the plugin allow you to send information about your orders to WooCommerce.

10.1. Available event procedures

Table 2. Event procedures for WooCommerce
Event procedure Explanation

Send order "Payment pending" to WooCommerce

Moves the order to status Payment pending on WooCommerce.

Send order "Processing" to WooCommerce

Moves the order to status Processing on WooCommerce.

Send order "On hold" to WooCommerce

Moves the order to status On hold on WooCommerce.

Send order "Completed" to WooCommerce

Moves the order to status Completed on WooCommerce.

Send order "Cancelled" to WooCommerce

Moves the order to status Cancelled on WooCommerce.

Send order "Refunded" to WooCommerce

Moves the order to status Refunded on WooCommerce.

Send order "Failed" to WooCommerce

Moves the order to status Failed on WooCommerce.

10.2. Example: Setting up the event procedure "Processing"

Setting up an event procedure
  1. Go to Setup » Orders » Events.

  2. Click on Add event procedure ().
    → The Create new event procedure window opens.

  3. Enter a distinct name for the event procedure.

  4. Select the event according to Table 3.

  5. Save () the settings.

  6. Carry out the additional settings according to Table 3.

  7. Select the setting Active ().

  8. Save () the settings.

Table 3. Event procedure "Processing"
Setting Option Selection

Event

Order change: Status change

Select a status, for example [4] In preparation for shipping or [5] Cleared for shipping.

Filter 1

Order > Order type

Order

Filter 2

Order > Referrer

WooCommerce

Procedure

Plugin > Send order "Processing" to WooCommerce

11. FAQ and troubleshooting

A customer number was assigned more than once. The wrong contact was assigned to an order. What’s happening?

Problem:

You probably used a PlentyONE client for a WooCommerce webshop that is or was already connected to a different WooCommerce webshop at some point. So you either changed existing connection settings or you had a WooCommerce webshop in the past that you deleted. That is a problem because you need to use a fresh PlentyONE client for each new WooCommerce webshop. Fresh means that the client has never been used for a WooCommerce webshop.

Solution:

Create a new client and link this client to the WooCommerce webshop.

Background:

For each WooCommerce webshop, external contact IDs are assigned in ascending order. If an order is imported for the new connection with a contact ID that was already assigned for this client, the order is assigned to the existing contact.