Skip to main content

After the WooCommerce Integration

Heather Worthington avatar
Written by Heather Worthington
Updated this week

Workflows for Unleashed's WooCommerce integration

The following processes are base examples that demonstrate how WooCommerce aims to sync with Unleashed after the integration is activated.

Manage Products synced with WooCommerce

Once integrated with WooCommerce, products sync as follows:

  • All products created in Unleashed with the setting "Sellable" enabled will sync to WooCommerce.

  • When a new "sellable" product is added to Unleashed, it will automatically export to create a new product in WooCommerce. If the new product code matches an existing SKU in WooCommerce, the integration will sync the newly added product to the existing SKU.

  • Changes or edits made to a "sellable" product in Unleashed will not sync or update the SKU's record in WooCommerce. The exception to this is edits made to the Product Code in Unleashed, at which point a new mapping will be exported to WooCommerce.

  • Products created or edited in WooCommerce do not sync to Unleashed.

  • When "Product Price Sync" is enabled and "Default Sell Price" is selected, changes made to the product's price in WooCommerce will update the Default Sell Price.

Product pricing with WooCommerce

A condition for integrating with the eCommerce Hub's WooCommerce integration is that the Product Prices in WooCommerce must be Tax Inclusive. Unleashed's integration has been built to accommodate this format with processes in place to convert back to the Unleashed's Tax Exclusive format. If WooCommerce is not set to show "Tax Inclusive" pricing, Sales Orders may fail to import from WooCommerce or the imported Sales Order totals could be incorrect.

  • Tax Types in WooCommerce: WooCommerce tax on Sales will need to be one tax rate per order line & non-Compounded (e.g Australian Wine and Exise (WET) tax). This allows us to adhere to current Unleashed functionality.

  • Tax Codes: Tax Codes in Unleashed will need to match exactly with WooCommerce's taxes in order for a successful import Sales Orders.

  • Reporting: Unleashed Tax Exclusive reports will need to match the WooCommerce Tax Inclusive reports (sub-totals).

Manage the Stock on Hand availability

Changes made to your inventory's "Available" quantity in Unleashed will periodically export to WooCommerce (15 minute intervals), making Unleashed the master of your inventory. As such, all inventory management and reporting should be completed in Unleashed.

It is recommended that you do not make any manual changes to Stock Quantities in WooCommerce directly.

SOH Count

Once a mapping has been established between an Unleashed Product and WooCommerce SKU, stock availability will export from Unleashed to WooCommerce based on the "SOH Count" setting selected in WooCommerce configurations. The product's "Available" quantity in Unleashed will export to the SKU's "Stock Quantity" field in WooCommerce, where a product's "Available" quantity is calculated based on the following rules:

Product type in Unleashed

"SOH Count" exported to WooCommerce

"Sellable" product

Stock On Hand quantity - Allocated quantity

"Sellable" and "Assembled" product, with a Bill of Materials that has "Can Auto-Assemble" enabled

Stock On Hand quantity + Can Assemble quantity - Allocated quantity

The "Can Assemble" quantity included is dependent upon the component product's availability within the integration's enabled warehouses. Only updates made to the stock on hand and allocated quantities (not Can Assemble quantity) will trigger a SOH Count's export to WooCommerce.

The following transactions in Unleashed can trigger a stock update to export to WooCommerce:

  • Receipting Purchases Orders

  • Dispatching Sales Shipments

  • Completing Assemblies or Disassemblies

  • Completing Stock Adjustments (Only Stock Adjustments with a Qty greater than 1)

Decimal Quantity SOH

If the "Decimal Quantity" setting is enabled in your Woocommerce store, decimal stock on hand quantities will sync from Unleashed to Woocommerce to update it's Stock Quantity. This setting will also allow orders to be imported to Unleashed with decimal quantities. For more details, see Product Quantity for WooCommerce.

Manage Customers imported from WooCommerce

Customers will be mapped to Unleashed only at the point of Sales Order import from WooCommerce. At this stage, the integration will identify if the WooCommerce Customer matches an existing Unleashed Customer record to establish a mapping using the following criteria.

Unleashed

WooCommerce

Customer Name

Customer First Name + Last Name

Contact Email

Customer Email

  • If the integration matches the WooCommerce Customer with an existing Unleashed Customer: no changes will be made to the customer.

  • If the WooCommerce Customer matches the Guest Customer: no changes are made to the "Guest Account Mapping" allocated in WooCommerce Integration set up.

  • If no Customer in Unleashed matches the WooCommerce Customer's criteria: a new Customer will be created in Unleashed using the WooCommerce Customer's details (table below). The following naming structure will be used when the integration creates a new Customer in Unleashed: Prefix "WOO"-Store domain name-WooCommerce Customer ID eg. WOO-www.mystore.com-1234.

There is no ongoing Customer synchronisation between Unleashed and WooCommerce. Any edits made to a mapped Customer in Unleashed will not sync to update the WooCommerce Customer, and vice versa.

Manage Sales Orders imported from WooCommerce

If a WooCommerce Order has imported to Unleashed, but changes have since been to the order in WooCommerce, those changes will not sync to the existing Sales Order in Unleashed and vice versa. Similarly, the WooCommerce Order cannot be imported again through the integration to replace the original Sales Order in Unleashed. Best practice is to delete or credit the originally imported Sales Order and create a new order in WooCommerce to import.

Refunds processed in WooCommerce do not sync with Unleashed through the integration. A Credit Note must be manually processed in Unleashed to account for any refunds processed in WooCommerce.

WooCommerce Order's importing behaviour

  1. In WooCommerce, an order is created for your stock.

  2. When the WooCommerce Order is updated to "Processing" status, the order imports to Unleashed as a new Sales Order. The Sales Order will import and allocate stock from the warehouse allocated in the integrations "Order Warehouse Mapping" setting.

  3. Unleashed will attempt to create the Sales Order with the "Unleashed Order Status" allocated in the WooCommerce configuration settings:

    • Parked

    • Placed

    • Completed: if there is not enough stock to fulfil and complete the Sales Order upon import, the Sales Order status will default to Parked status.

  4. Stock on Hand Availability in Unleashed decreases by the WooCommerce Order's quantity.

  5. The allocated/dispatched product's updated Stock on Hand availability will export to WooCommerce.

After the Woocommerce Order's imported, any change to the Sales Order's status in Unleashed will not sync back to Woocommerce.

WooCommerce Order Status

Sales Orders will import automatically from WooCommerce to Unleashed based on the WooCommerce Order Status “Processing”. Once the WooCommerce Order is saved with the "Processing" status on the integration will import it and create a new Sales Order in Unleashed. The eCommerce Hub's WooCommerce integration will sync Sales Orders every 15 minutes.

When using the "Import Missing Orders" function within the Data Management tab is used, the integration will review WooCommerce Orders with the status “Processing” and "Completed".

Customers

The Customer allocated to a Sales Order created from the WooCommerce integration will depend on the following criteria:

  • The WooCommerce Customer matches an existing Unleashed Customer: The existing Unleashed Customer will be allocated to the Sales Order.

  • The WooCommerce Customer does not match an existing Unleashed Customer: A new Customer will be created in Unleashed and the Sales Order will be allocated to the new Unleashed Customer.

  • There is no WooCommerce Customer identified in the WooCommerce Order: The "Guest Customer" allocated in the integration's "Guest Account Mapping" will be used to import the Sales Order.

Discounts

Discounts will be displayed in Unleashed Sales Orders as a percentage on a per order line basis. Unleashed's integration will identify the appropriate percentage discount to apply by comparing the WooCommerce Sales Sub-Total incl. discount to the Sub-Total exc. discount.

WooCommerce support 4 types of discount. The following 3 discounts in WooCommerce will be managed in Unleashed by converting the discount into a percentage discount per Order Line basis in the Unleashed's Sales Order:

  • Fixed Cart Discount: An Overall currency Discount applied to the WooCommerce Order. Currency value discount is dictated by the WooCommerce Admin.

  • Percentage Discount: A percentage-based discount over the whole order. Percentage value is dictated by the WooCommerce Admin.

  • Fixed Product Discount: A fixed-value discount applied to a product or group of products, determine by the WooCommerce Admin.

The 4th discount is a front page discount only, for example “was 2k, now only 1.8k!”. This “discount” will be treated like an un-discounted line price and will show on the Unleashed Sales Order as simply “1.8k” (using the previous example).

Charge Lines

In some cases there may be a variance between WooCommerce's sub-totals and Unleashed's calculated sub-totals for the same Sales Order. These variances are usually caused by differences in rounding between the two systems. As such, "Rounding" charge lines will be applied to imported WooCommerce Sales Orders in Unleashed to ensure totals match between the systems.

Taxes

The taxes that apply to Sales Orders created in Unleashed from WooCommerce will always align with how the taxes have been applied in WooCommerce, regardless of the tax rates assigned at the customer or product level in Unleashed.

Ensure the required taxes and tax rates have been accurately setup and allocated in the WooCommerce store match the taxes and rates that have been created in Settings > System > Taxes, and upon import, each Sales Order will be created with the appropriate tax per Sales Order and Charge line.


Field Mappings

Products

Unleashed Product

WooCommerce SKU

Guid

id

ProductCode

sku

ProductDescription

name

Product Notes

description

AvailableQty (or "Stock on Hand" - "Allocated Qty" + "Can Assemble" based on components when products are Auto-Assembled)

stock_quantity

Images

Not Available

Weight

weight

Width

dimensions {width}

Height

dimensions {height}

Depth

dimensions {length}

NeverDiminishing

mange_stock

Customers

Unleashed Customer

WooCommerce Customer

CustomerCode

WOO-(store-domain-name)-(customer_id)

CustomerName

first_name + last_name

Contact First Name

first_name

Contact Last Name

last_name

Email

email

Street Address

shipping.address_1

Street Address2

shipping.address_2

City

shipping.city

Region

shipping.state

Country

shipping.country

PostalCode

shipping.postcode

PhoneNumber

phone

Notes

role (read-only)

There will be no Contact details, e.g., Contact Name and Phone Number, imported when the Guest Account Mapping is used. Only the Shipping Address will be imported on the appropriate Sales Order.

Sales Orders

Unleashed Sales Orders

WooCommerce Sales Orders

Guid

id

OrderNumber

number

CurrencyCode

currency

OrderDate

date_created

OrderQuantity

quantity

DeliveryStreetAddress

address_1

DeliveryStreetAddress2

address_2

DeliveryCity

city

DeliveryRegion

state

DeliveryCountry

country

DeliveryPostCode

postcode

SalesOrderLines - TaxRate

Order - Line items properties

SalesOrderLines - LineTax

taxes

LineTaxCode

rate_code

TaxTotal

total_tax

TaxRate

tax_class


Frequently asked questions

Why is my Stock on Hand failing to export to WooCommerce?

Go to your WooCommerce Store > Products > {Product} > Product Data > Inventory and check your products' "Manage Stock Level" setting; if it is disabled, the integration will not be able to export Stock on Hand quantities successfully.

Did this answer your question?