How Woosage50 Works

How Woosage50 Works

Woosage50 integrates the order processing and product management functions of WooCommerce and Sage 50 Accounts. It has two components.

Woosage50 Plugin - this is a plugin that is installed on your WooCommerce website. It is the Woosage50 control centre, providing the settings and schedules for processing orders and updating website product data from Sage. It also provides an API that allows secure interaction with the plugin by the Woosage50 Service.

Woosage50 Service - this is a Windows services that runs on PC or server on your local network* and it acts as a bridge between the Woosage50 plugin and Sage. It utilises the Woosage API to interact with the Woosage50 plugin and accesses the Sage data via the Sage interface (SDO & ODBC), 

* The Woosage50 Service can also run on a Windows Remote Desktop Server provided that it has access permissions to read and write to the Sage data

The relationship between the service and plugin is illustrated in the diagram below.



The Woosage50 Service runs two concurrent processes:

Orders - importing website orders to Sage and updating website stock quantities from Sage.
Products - updating website product and price data from Sage.

The service runs continuously, taking its processing instructions from the Woosage50 Plugin, which has user-defined schedules to determine when the orders and products cycles are to be run. It uses the Woosage API to contact the plugin to enquire if there are any processing activates to be carried out or if any settings have changed.  It then either carries out those instructions as follows, or sleeps for 60 seconds before repeating.

The orders cycle starts by requesting the plugin to deliver any unprocessed orders, and the settings, if changed. It then imports the orders to Sage according to the settings. Once the orders have been processed, the service gets the free stock from Sage for all web products, checks for any changes and sends them to the plugin to update the website stock quantities.

The products cycle gets the product & price data from Sage for all web products and sends this to the plugin in batches, pausing between each to allow for processing of the data.

The Woosage50 Plugin monitors the processing activity of the Woosage50 Service and displays the status Woosage50 website page.

This article is intended to give an overview of how Woosage50 works in simple terms and is not a detailed description of all operations.

    • Related Articles

    • Woosage Invoice Matching

      Woosage has always matched the website customer payments to sales invoices in Sage, when the invoice has been created by Woosage. However, when the invoice has been created from a sales order the payment created when the invoice is posted is a ...
    • Match Invoices from Sales Orders to Customer

      Previously, when Woosage created sales orders (SO) there was no way for Woosage to tell Sage to mark an invoice subsequently produced from the SO as matched to the customer. Optionally, Woosage can now do this by keeping track of which SO's generate ...
    • Tax Discrepancies

      As Woosage50 works with two different systems, WooCommerce & Sage, both of which can have different tax calculation methods and number precision, there is scope for discrepancies between the WooCommerce order and the imported sales order/invoice in ...
    • Woosage 50 Processing Schedules

      Orders Processing Cycle The orders processing cycle deals with time-critical data, orders and stock updates, and is run normally according to a schedule. When running it will do the following. Get any unprocessed orders from the website and import ...
    • Recent Change Log

      Changes to the components of Woosage50 can be found in the following sections. Note: Not all versions are released and some builds are merged, resulting in gaps the in the version number sequences. Woosage50 Service Changes 3.2.15 (9/1/2026) ...