PayPal Zettle POS for WooCommerce

Regularly encountered issues

This document gives a shortlist of requirements and often encountered issues when synchronizing your WooCommerce library to PayPal Zettle.

These are the configuration items and directions for the synchronization to occur:

  • Product name – Only from WC to Zettle
  • Product Price – Only from WC to Zettle
  • Stock – synchronizes in both directions
  • SKU – Only from WC to Zettle
  • Barcode – Only from WC to Zettle.

The requirements for a product to synchronize to the PayPal Zettle library:

  • Needs to be a Simple and Variable¬†product
  • The product must have a price set
  • Variable products can have no more than three variation attributes set.
  • The product needs to have been published
  • The site needs to be secure (SSL & HTTPS)


If a product has got a “Tax Class” assigned to it, you need to make sure that this tax class has been correctly configured in WooCommerce > Settings > Tax > <Tax Class>
If there is no entry under this tax class you need to add an entry by pressing “Insert row” and adding the details that are needed for your setup. The end result of a minimal tax class setup should look something like this:

When you set up your store you need to check that VAT rates have been correctly configured for the country that you sell in.


  • STOCK SYNC Z –> WC not working – Most of the time there will be another plugin that is blocking or affecting the communication between Zettle and WooCommerce. You can test this by disabling all other plugins (except for WooCommerce and WooCommerce PayPal Payments) and testing the synchronization again. Also activating a stable Theme like “Storefront” can show you if an issue is related to the Theme.
  • There are cases where stock is adjusted in Multiplications of the intended amount; this would also most likely be caused by another plugin. The same steps as above would be advised.
  • The tax issue mentioned above can also cause synchronization issues.


  • Lost all products in PayPal Zettle library – You have chosen “overwrite PayPal Zettle library” when connecting to PayPal Zettle from WooCommerce settings. Be sure to create a backup of your PayPal Zettle library if you have any products there before you attempt the synchronization.
  • The stock is not syncing from PayPal Zettle to WooCommerce – This occurs because another plugin or the theme is blocking the JavaScript communication (or a part of it) that is required for this action to occur. You can isolate the issue by deactivating the other plugins and retesting a stock change. The theme sometimes also has a part in this, so installing and activating the Storefront theme could also exclude that from causing the issue.
  • Stock is syncing in multiplication from PayPal Zettle to WooCommerce – This occurs when another plugin is also influencing on the stock numbers

Checking if the webhooks are functional

For most of the issues, you encounter you should always check if the webhooks are established. You can do this by deactivating and activating the Zettle plugin and checking if the 4 lines of code have been added to the PayPal Zettle logs. The PayPal Zettle logs can be found here:
WooCommerce > Status > Logs > select “zettle-pos-integration-[…]” in the dropdown and click on view.

The added lines of code should look like this:
2021-08-25T11:53:38+00:00 DEBUG Added 1 jobs to the queue
2021-08-25T11:53:40+00:00 INFO Received Webhook: TestMessage
2021-08-25T11:53:40+00:00 DEBUG Executed Job ‘webhook-registration’ with ID 23.
2021-08-25T11:53:40+00:00 DEBUG Removed 1 jobs from the queue