Mail: [email protected] Phone: +1(424)231-4091

If you already have purchased the product, you can download it from your account downloads.

Version v4.8.1

Download 62

Last Update Jun 9, 2024

WooCommerce Sync for NexoPOS 4.x is a module that ensures permanent connectivity with a WooCommerce store. This module is helpful to have a unified inventory online with NexoPOS 4.x, and ensure every time an order is created online, it's reflected on both sides (WooCommerce and NexoPOS) but that's not only what it does.

Who Should Use This Module ?

Every store owner having an eCommerce website and using for their store NexoPOS 4.5. This module will make sure the stock available on NexoPOS 4.5 is the same on WooCommerce so that only available stock is sold online.


Before using this module, it's important to meet the following requirements:

  • WooCommerce should be hosted online
  • NexoPOS should be hosted online

This module shouldn't then be used with NexoPOS being installed locally. This way, WooCommerce won't be able to send orders to NexoPOS.

How It Works ?

At the moment, this module uses WooCommerce API and Webhooks to notify NexoPOS of every change that occurs on your online store and to reflect all your modification from NexoPOS to your online store. You'll then be able to perform the following synchronization operations :

  • Sync Products on both side (NexoPOS <=> WooCommerce)
  • Sync Products Category on both side (NexoPOS <=> WooCommerce)
  • Sync Customers on both side (NexoPOS <=> WooCommerce)
  • Sync Orders on both side (NexoPOS <=> WooCommerce)


Before being able to sync the products to WooCommerce and NexoPOS, you need to configure the module. The first configuration will happen on WooCommerce, then we'll see the configuration possible on NexoPOS.

Synchronization from NexoPOS to WooCommerce

First of all, we'll head to WooCommerce settings and make sure to create Rest API Keys.

While adding a new key, we'll give :

  • a description
  • the author who's assigned every modification
  • the permissions, which must be read/update

Once you're done, click on "Generate API Key".

Once you're set, you'll see the consumer key and the secret key, which must be added to this module setting on NexoPOS 4.5.

Now, let's head to NexoPOS 4.x and open WooCommerce settings.

Then we'll need to fill in the following details :

  • The endpoint should be the address of your online store. Typically is the address that shows your home page.
  • The consumer key as copied on WooCommerce
  • The consumer secret as copied on WooCommerce
  • A random string for encrypting every request

And don't forget to save your changes. This will ensure NexoPOS can submit changes to WooCommerce.

Synchronization From WooCommerce to NexoPOS

Now we want to make sure that every time something happens on WooCommerce, NexoPOS is notified somehow. In order to do that, we'll need to create webhooks. If you've registered the consumer key and consumer secret, you can head to the advanced tab on the WooCommerce Sync for NexoPOS, to create webhooks in one click.

If you rather like to proceed manually, let's head to WooCommerce > Settings > Advanced and now let's click on Webhooks.

We'll make sure to register all the topics available and assign them to NexoPOS address. NexoPOS 4.x doesn't support topics for restored entry. Since NexoPOS doesn't have trash where orders, products can be temporarily moved, such topics aren't supported on NexoPOS. Additionally, NexoPOS doesn't support yet WooCommerce coupons. Here are the most recommended topics that should be used :

  • Customer Created
  • Customer Updated
  • Customer Deleted
  • Order Created
  • Order Updated
  • Order Deleted
  • Product Created
  • Product Updated
  • Product Deleted

While creating these entries, all should point to Make sure to replace with your actual domain where NexoPOS 4.5 is installed. Here is an example of one topic being created

Configuring Payments

WooCommerce payments aren't the same as those used on NexoPOS 4x. However, as NexoPOS 4x supports multiple payments, it's therefore easier for you to create payments that matches WooCommerce payments.

In order to recognize each payments, this extensions needs you to assign the WooCommerce payment identifier to NexoPOS payments. So we'll start by heading to the available payments on WooCommerce.

You'll then click on the payment you want to see used on NexoPOS and edit it.

Once on the page of the payment, make sure to enable that and copy the identifier from the URL.

In the previous example, the identifier is "bacs". We'll then go to NexoPOS and search for the payment that should be considered as a bank transfer.

We'll then edit that payment (in our example it's "Bank Payment") and on the field "WooCommerce Payment ID" and paste the identifier we've copied earlier.

You'll repeat the process for all payments you want NexoPOS to recognize. Note that if an order with an unrecognized payment is submitted, that order will be ignored.

Other Useful Settings

We'll cover other settings that need to be made before using this module.

Defining Shipping

You must set what is the shipping method that should be used for every order that is synchronized from NexoPOS to WooCommerce. For that, you need to open the "Orders" settings within WooCommerce settings.

Don't forget to save your settings.

Choose what can be synchronized to WooCommerce

If you would like to restrict a few things that should be synchronized to your online store, you'll head to "Sync To WooCommece" settings and select the feature you would like to enable/disable.

Configure Default for Synchronization to NexoPOS

Not all data submitted to NexoPOS will have an existing reference. Sometimes, you'll be invited to define what is the default information that will be used if, for a request submitted to NexoPOS, there is no existing reference.

For example, if a product is submitted to NexoPOS while a category assigned to that product doesn't exist yet on NexoPOS, you must define a default category so that every product with a nonexisting category is assigned to that default category.

To configure the defaults for NexoPOS, let's head to "Sync to NexoPOS" tab.

You should define :

  • the default category
  • default unit group

from there you'll have to save so that the "default unit" dropdown is populated with the units that belong to the unit group selected. You'll also select :

  • the default tax group
  • to which users all transactions should be assigned
  • for every created customer, to which group they are assigned

Once you're done, save your settings.

Tips And Tricks

Let's see what are the tips that can ease your life with this module.

How to bulk synchronize from WooCommerce

If you would like to synchronize all your existing products to NexoPOS, you'll need to bulk edit those products and just update them (not necessary to change any value). WooCommece will trigger a webhook for every product and those will be created on NexoPOS 4.5.

How to bulk synchronize to WooCommerce

This only works for products, categories, and customers. If you would like to bulk synchronize your entries, on each component table, you'll select all the entries you would like to synchronize and select the action "Sync Selected".


Some issues might occur while using this module. The following points describe what might happen and how to prevent that.

Supported Version

This module has been tested and developed with WooCommerce 5.6.0. According to the extra WordPress plugins you might have, some errors might occur especially if those plugins change the way WooCommerce works normally.

While Creating Products

While creating a product on WooCommerce, NexoPOS will attempt to find if a category attached to that product is already synchronized. If it's not, NexoPOS will get all the existing categories and synchronize them. However, this is limited to 99 categories and sub-categories. Beyond that, those categories will be ignored causing some products not to synchronize.

Compatible Modules

This module is not yet compatible with the multistore module. Once the support is defined, this guide will be updated accordingly. Additionally, this module doesn't support modifiers of Gastro 4x.

Order Not Placed

An order might not be placed for various reasons on WooCommerce. Note that NexoPOS and WooCommerce have different required parameters. If NexoPOS billing information aren't required, it's the case for WooCommerce, you'll then make sure to define the billing information while creating the order.

Quick Or Inline Products Are Ignored

If you created a product from the POS, that product won't be synchronized (included) on the sale sent to WooCommerce. This is because the product doesn't have any reference on WooCommerce.

WooCommerce Order With No Products

If you see orders that have no products on WooCommerce, that is probably related to the product not being synchronized on WooCommerce. In fact, every product should primarily have been created on WooCommerce and synchronized to NexoPOS.

Username Is Already In Use

If you're experiencing this error it's likely because the customer provided on NexoPOS is an administrator on WooCommerce. Unfortunately, the WooCommerce Rest API only returns customers so we can't pull the administrator ID to attach the order to him using the Rest API.

Recommended Modules


Sales Commissions

The sales commission is a module that allows rewards for...

  • v5.2.0
  • Jul 22, 2024


Stock Transfers Module

The Stock Transfers module ensures to be able to transfers...

  • v4.7.3
  • Jul 22, 2024


SMS Utility

Keep your customers up to date with what is happening...

  • v5.2.0
  • Jul 1, 2024