Integration between Ongoing WMS and WooCommerce
Tired of spending time handling orders manually and picking one order at the time? Maybe you are looking for the perfect WooCommerce plugin to help with your inventory management? Don’t worry, Ongoing got you covered. We advocate using a full-fledged Warehouse Management System (WMS) so that you have ample room to grow with your business. With Ongoing WMS you’ll have full control over your inventory across all platforms. And you’ll set up the integration in notime, getting your orders and article data directly from your WooCommerce webshop. Now you can batch-pick and get efficient picking routes, start with scanning to reduce pick and pack mistakes, get automatic label printing, bulk-edit orders and articles, set up detailed warehouse maps, and many more features.
Moreover, if you are a third-party logistics provider (3PL) you’ll be able to onboard a new WooCommerce customer and start processing their orders in a matter of minutes.
Get started with your FREE trial of Ongoing WMS today!
Table of contents
Features
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 WMS continuously pulls information about the products from WooCommerce and the available stock in the warehouse is continuously pushed to WooCommerce. The integration between Ongoing WMS and WooCommerce eliminates the manual and repetitive task of keeping two registers in sync and automates the information change in the logistics process.
Article registry
Ongoing WMS 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/variants will be fetched to Ongoing WMS, and by default they will be created as stock articles. It is possible to modify this so that they are created as non-stock articles, please contact Ongoing WMS if you want this functionality.
Field mapping
Ongoing WMS | WooCommerce | |
---|---|---|
field name | field name for products | field name for variants |
ArticleDefinition ⇒ ArticleNumber | Product ⇒ SKU | Variant ⇒ SKU |
ArticleDefinition ⇒ ArticleName | Product ⇒ Title | Product ⇒ Title + Variant ⇒ Name |
ArticleDefinition ⇒ Description | Product ⇒ Description | |
ArticleDefinition ⇒ ProductCode | Product ⇒ Id | Variant ⇒ Id |
ArticleDefinition ⇒ Unit | Default set to 'st' | Default set to 'st' |
ArticleDefinition ⇒ Weight | Product ⇒ Weight | Variant ⇒ Weight |
ArticleDefinition ⇒ Classes | Product ⇒ Categories* | |
ArticleDefinition ⇒ LinkToPicture | Link to product picture | |
ArticleDefinition ⇒ IsStockArticle** |
* = Synchronization is turned off by default.
** = Can be setup to use the virtual field on the product/variant in WooCommerce.
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. If the app Shipment Tracking is used in WooCommerce it is possible to setup the integration to use the extended functionality accompanied with that, otherwise the tracking information will be reported using order notes.
Field mapping
Ongoing WMS field name | WooCommerce field name |
---|---|
OrderInfo ⇒ GoodsOwnerOrderId | Order ⇒ Id |
OrderInfo ⇒ GoodsOwnerOrderNumber | Order ⇒ Order number |
OrderInfo ⇒ DeliveryDate | Order ⇒ Created st |
OrderInfo ⇒ WayOfDelivery | Order ⇒ Shipping method** |
OrderInfo ⇒ WayOfDeliveryType ⇒ Code | Order ⇒ (first) Shipping lines ⇒ Shipping method ⇒ Id |
OrderInfo ⇒ WayOfDeliveryType ⇒ Name | Order ⇒ (first) Shipping lines ⇒ Shipping method ⇒ Title |
OrderInfo ⇒ TermsOfPayment | Order ⇒ Payment method |
OrderInfo ⇒ OrderRemark | Order ⇒ Note |
OrderInfo ⇒ SalesCode | Order ⇒ 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 ⇒ Customs ⇒ CustomsValueCurrencyCode | Order ⇒ Currency |
OrderInfo ⇒ OrderNotification ⇒ MobilePhone | order ⇒ Billing address ⇒ Phone |
OrderInfo ⇒ OrderNotification ⇒ Telephone | order ⇒ Billing address ⇒ Phone |
OrderInfo ⇒ OrderNotification ⇒ Email | order ⇒ Customer (if set else billing address) ⇒ Email |
OrderInfo ⇒ OrderNotification ⇒ NotifyBySms | True* |
OrderInfo ⇒ OrderNotification ⇒ NotifyByEmail | True* |
Orderline ⇒ ExternalOrderLineCode | Order ⇒ Line Item ⇒ Id |
Orderline ⇒ ArticleNumber | Order ⇒ Line Item ⇒ SKU |
Orderline ⇒ ArticleName | Order ⇒ Line Item ⇒ Name |
Orderline ⇒ NumberOfItems | Order ⇒ Line Item ⇒ Quantity |
Orderline ⇒ CustomerLinePrice | Order ⇒ Line Item ⇒ Total |
Orderline ⇒ OrderLineTotalCustomsValue | Order ⇒ Line Item ⇒ Total |
Orderline ⇒ LinePrice | Order ⇒ Line Item ⇒ Price |
Orderline ⇒ CurrencyCode | Order ⇒ Currency |
Customer ⇒ Name | Order ⇒ Shipping address ⇒ Company (if set, otherwise first name + last name) |
Customer ⇒ Address | Order ⇒ Shipping address ⇒ Address1 |
Customer ⇒ Address2 | Order ⇒ Shipping address ⇒ Address2 |
Customer ⇒ PostCode | Order ⇒ Shipping address ⇒ Postcode |
Customer ⇒ City | Order ⇒ Shipping address ⇒ City |
Customer ⇒ CountryCode | Order ⇒ Shipping address ⇒ Country |
Customer ⇒ Email | Order ⇒ Customer (if set else billing address) ⇒ Email |
Customer ⇒ MobilePhone | Order ⇒ Billing address ⇒ Phone |
Customer ⇒ Invoice address ⇒ Name | Order ⇒ Billing address ⇒ Company (if set, otherwise first name + last name) |
Customer ⇒ Invoice address ⇒ Address | Order ⇒ Billing address ⇒ Address1 |
Customer ⇒ Invoice address ⇒ Address2 | Order ⇒ Billing address ⇒ Address2 |
Customer ⇒ Invoice address ⇒ PostCode | Order ⇒ Billing address ⇒ Postcode |
Customer ⇒ Invoice address ⇒ City | Order ⇒ Billing address ⇒ City |
Customer ⇒ Invoice address ⇒ CountryCode | Order ⇒ Billing address ⇒ Country |
Customer ⇒ Invoice address ⇒ Email | Order ⇒ Billing address ⇒ Email |
Customer ⇒ Invoice address ⇒ MobilePhone | Order ⇒ 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
Purchase orders
If you are using the plugin ATUM WooCommerce Inventory Management and Stock Tracking, Ongoing WMS can fetch purchase orders from WooCommerce. By default purchase orders that are in status "Ordered", "Pending, On the way in" or "Receiving" are fetched. If a purchase order is updated in WooCommerce, the change is transferred to Ongoing WMS unless the warehouse workers have started working on it. When orders are received, the WMS marks the purchase order as completed in WooCommerce. Note that the order will always be marked as fully received in WooCommerce!
Field mapping
Ongoing WMS field name | WooCommerce field name |
---|---|
OrderInfo ⇒ GoodsOwnerOrderNumber | Purchase Order ⇒ Id |
OrderInfo ⇒ GoodsOwnerReference | Purchase Order ⇒ Id |
OrderInfo ⇒ ReferenceNumber | Purchase Order ⇒ Id |
OrderInfo ⇒ InDate | Purchase Order ⇒ Date Expected |
OrderInfo ⇒ OrderRemark | Purchase Order ⇒ Description |
OrderInfo ⇒ WayOfDelivery | Purchase Order ⇒ (first) Shipping Lines ⇒ Method Title |
OrderInfo ⇒ OrderDate | Purchase Order ⇒ Date Created |
OrderLine ⇒ ExternalOrderLineCode | Order ⇒ Line Item ⇒ Id |
OrderLine ⇒ ArticleNumber | Order ⇒ Line Item ⇒ Sku |
OrderLine ⇒ ArticleName | Order ⇒ Line Item ⇒ Name |
OrderLine ⇒ NumberOfItems | Order ⇒ Line Item ⇒ Quantity |
OrderLine ⇒ RowPrice | Order ⇒ Line Item ⇒ Total |
OrderLine ⇒ CurrencyCode | Order ⇒ Currency |
Stock values
Stock balance is sent from Ongoing WMS to WooCommerce.
Returns
Ongoing WMS contains support for efficient returns of goods. When returns are performed in Ongoing WMS, they can be automatically reported as a refund to WooCommerce. More information about the feature can be found at customer returns scanning page.
Shipment tracking app
Ongoing WMS supports the WooCommerce Shipment tracking app for improved handling of tracking numbers and links. The app lets you add shipment tracking information to your orders and provides your customers with easy access to the shipment tracking through emails, the order tracking page, and the order view in their account section.
You can enable support for the app in the Administration ⇒ Integrations page in Ongoing WMS.
Default settings and considerations
The integration provides default settings which are suitable in most cases. However, there are some possibilities for customization.
-
Synchronization interval.
Default: Every 15 minutes. It is usually a suitable balance between responsiveness and band-width usage. -
Which version of WooCommerce is your customer using?
Preferably version 3.0.x or later. Support exists for 2.2.x or later. -
Is HTTPS used?
Default: Yes (strongly recommended).
If not, we use oAuth. Which hash function is used?
Default: SHA256. -
Are any plugins used?
The use of plugins might complicate the setup of the integration. -
Which status should a product have in WooCommerce for it to be transferred to the WMS?
Default: "Publish". -
Do you have any variant of your articles without unique article numbers? For example, colors, sizes, packaging.
Default: No. -
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. -
Should the available stock be synchronized from the WMS to WoCommerce?
Default: Yes. -
Which status should an order have in WooCommerce for it to be transferred to the WMS?
Default: "Processing". -
Should fulfilled orders be automatically set as completed and tracking numbers sent?
Default: Yes. If yes, answer the following questions:-
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 shipping platform (e.g., nShift Delivery). -
Should tracking numbers or tracking links be transferred to WooCommerce?
Default: Yes.
-
When during the order handing process should the order be reported as completed in WooCommerce?
Getting started
For us at Ongoing WMS 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 follow the instructions 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 like: 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/
Please see this guide on how to set up an integration between WooCommerce and your Ongoing WMS.