WooCommerce logo

Integration between Ongoing Warehouse and WooCommerce

Table of contents

Introduction

WooCommerce is the world’s largest e-commerce platform. WooCommerce has a REST-based API which covers most of the information available in the platform. Integrating your WooCommerce-based shop with your third-party logistics provider via Ongoing Warehouse’s Warehouse Management System (WMS) provides you with a seamless logistics experience.

When an order is placed by your customer it is automatically transferred to the WMS for the warehouse workers to immediately start picking and packing it. When a shipment has been booked, the WMS marks the order as completed in WooCommerce and posts the tracking number.

Ongoing Warehouse continuously pulls information about the products from WooCommerce and the available stock in the warehouse is continuously pushed to WooCommerce. The Ongoing Warehouse WooCommerce integration eliminates the manual and repetitive task of keeping two registers in sync and automates the information change in the logistics process.

Features

Article registry

Ongoing Warehouse pulls article registry updates from WooCommerce to the WMS. WooCommerce contains the master data. Both products and variants in WooCommerce will be mapped to articles in Ongoing WMS. Virtual products/variant are by default not synchronized to Ongoing WMS, but the synchronization of them can be activated.

Field mapping

Show field mapping

Ongoing WMS WooCommerce
field name field name for products field name for variants
ArticleDefinition ⇒ ArticleNumberProduct ⇒ SKUVariant ⇒ SKU
ArticleDefinition ⇒ ArticleNameProduct ⇒ TitleProduct ⇒ Title + Variant ⇒ Name
ArticleDefinition ⇒ ProductCodeProduct ⇒ IdVariant ⇒ Id
ArticleDefinition ⇒ UnitDefault set to 'st'Default set to 'st'
ArticleDefinition ⇒ CategoriesProduct ⇒ Categories*
ArticleDefinition ⇒ IsStockArticle*Product ⇒ VirtualVariant ⇒ Virtual

* = Synchronization is turned off by default.

Orders

The WMS downloads new and updated orders which are not yet handled. If an order is updated, the change is transferred unless the warehouse workers have started working on it. When orders are fulfilled, the WMS marks the order as completed in WooCommerce and tracking numbers are transferred.

Field mapping

Show field mapping

Ongoing Warehouse field name WooCommerce field name
OrderInfo ⇒ GoodsOwnerOrderIdOrder ⇒ Id
OrderInfo ⇒ GoodsOwnerOrderNumberOrder ⇒ Order number
OrderInfo ⇒ DeliveryDateOrder ⇒ Created st
OrderInfo ⇒ WayOfDeliveryOrder ⇒ Shiping method**
OrderInfo ⇒ WayOfDeliveryType ⇒ CodeOrder ⇒ (first) Shiping lines ⇒ Shipping method ⇒ Id
OrderInfo ⇒ WayOfDeliveryType ⇒ NameOrder ⇒ (first) Shiping lines ⇒ Shipping method ⇒ Title
OrderInfo ⇒ OrderRemarkOrder ⇒ Note
OrderInfo ⇒ SalesCodeOrder ⇒ Shipping address ⇒ First name + Last name
(only set when company name set on order, otherwised first and last name is stored at customer name)
OrderInfo ⇒ OrderNotification ⇒ MobilePhoneorder ⇒ Billing address ⇒ Phone
OrderInfo ⇒ OrderNotification ⇒ Telephoneorder ⇒ Billing address ⇒ Phone
OrderInfo ⇒ OrderNotification ⇒ Emailorder ⇒ Customer (if set else billing address) ⇒ Email
OrderInfo ⇒ OrderNotification ⇒ NotifyBySmsTrue*
OrderInfo ⇒ OrderNotification ⇒ NotifyByEmailTrue*
Orderline ⇒ ExternalOrderLineCodeOrder ⇒ Line Item ⇒ Id
Orderline ⇒ ArticleNumberOrder ⇒ Line Item ⇒ SKU
Orderline ⇒ ArticleNameOrder ⇒ Line Item ⇒ Name
Orderline ⇒ NumberOfItemsOrder ⇒ Line Item ⇒ Quantity
Orderline ⇒ CustomerLinePriceOrder ⇒ Line Item ⇒ Total
Orderline ⇒ LinePriceOrder ⇒ Line Item ⇒ Price
Orderline ⇒ CurrencyCodeOrder ⇒ Currency
Customer ⇒ NameOrder ⇒ Shipping address ⇒ Company
(if set, otherwise first name + last name)
Customer ⇒ AddressOrder ⇒ Shipping address ⇒ Address1
Customer ⇒ Address2Order ⇒ Shipping address ⇒ Address2
Customer ⇒ PostCodeOrder ⇒ Shipping address ⇒ Postcode
Customer ⇒ CityOrder ⇒ Shipping address ⇒ City
Customer ⇒ CountryCodeOrder ⇒ Shipping address ⇒ Country
Customer ⇒ EmailOrder ⇒ Customer (if set else billing address) ⇒ Email
Customer ⇒ MobilePhoneOrder ⇒ Billing address ⇒ Phone
Customer ⇒ Invoice address ⇒ NameOrder ⇒ Billing address ⇒ Company
(if set, otherwise first name + last name)
Customer ⇒ Invoice address ⇒ AddressOrder ⇒ Billing address ⇒ Address1
Customer ⇒ Invoice address ⇒ Address2Order ⇒ Billing address ⇒ Address2
Customer ⇒ Invoice address ⇒ PostCodeOrder ⇒ Billing address ⇒ Postcode
Customer ⇒ Invoice address ⇒ CityOrder ⇒ Billing address ⇒ City
Customer ⇒ Invoice address ⇒ CountryCodeOrder ⇒ Billing address ⇒ Country
Customer ⇒ Invoice address ⇒ EmailOrder ⇒ Billing address ⇒ Email
Customer ⇒ Invoice address ⇒ MobilePhoneOrder ⇒ Billing address ⇒ Phone

* = effected by filters or settings. The set value might vary, or it might not be used by default.
** = Only available in API verison 3

Stock values

Stock balance is sent from Ongoing Warehouse to WooCommerce.

Default settings and considerations

The integration provides default settings which are suitable in most cases. However, there are some possibilities for customization.

  1. Synchronization interval.
    Default: Every 15 minutes. It is usually a suitable balance between responsiveness and band-width usage.
  2. Which version of WooCommerce is your customer using?
    Preferably version 3.0.x or later. Support exists for 2.2.x or later.
  3. Is HTTPS used?
    Default: Yes (strongly recommended).
    If not, we use oAuth. Which hash function is used?
    Default: SHA256.
  4. Are any plugins used?
    The use of plugins might complicate the setup of the integration.
  5. Which status should a product have in WooCommerce in order for it to be transferred to the WMS?
    Default: "Publish".
  6. Do you have any variant of your articles without unique article numbers? For example, colors, sizes, packaging.
    Default: No.
  7. Are virtual products used in WooCommerce?
    The use of virtual products is not included in the basic integration and might complicate the setup of the integration.
  8. Should the available stock be synchronized from the WMS to WoCommerce?
    Default: Yes.
  9. Which status should an order have in WooCommerce in order for it to be transferred to the WMS?
    Default: "Processing".
  10. Should fulfilled orders be automatically set as completed and tracking numbers sent?
    Default: Yes. If yes, answer the following questions:
    1. When during the order handing process should the order be reported as completed in WooCommerce?
      Default: When a tracking number has been received from the TA-system (e.g. Unifaun).
    2. Should tracking numbers or tracking links be transferred to WooCommerce?
      Default: Yes.

Preparations

For us at Ongoing Warehouse to implement the integration for the specific WooCommerce store we need the following operations to be performed by you:

Activate the REST API

If it is not yet activated please following the instructions in the following on the following website: https://docs.woocommerce.com/document/woocommerce-rest-api/ You do not need to enable the legacy REST API.

Generate API keys

We require both "ConsumerKey" and "ConsumerSecret". Follow the instructions in the link above to get the keys for the API.

The URL to the API of the web shop

Generally something similar to: https://mynewwebshop.com/wp-json/wc/v2/. When setting up the integration at the integration page in Ongoing WMS, you should set the URL to, in this example, https://mynewwebshop.com/