Plugin Sync (Firewall-Proof)
The modern way to connect a WooCommerce store to Brother POS is the Brother POS plugin. Once installed, the plugin does all the work from your website's side: it pulls your product catalog and storefront settings out of Brother POS, and pushes online orders and stock changes back. All traffic starts from your website, so it slips past Cloudflare, security plugins, and host firewalls that used to block the old connection.
This page explains how the plugin sync works, why it is more reliable, and how to install it.
Two Sync Modes
Brother POS supports two ways of connecting to WooCommerce. You choose the mode under Settings > WooCommerce Integration > Edit in the Sync direction field.
| Mode | How it works | When it is used |
|---|---|---|
| Plugin push / pull (recommended) | Your website's plugin reaches out to Brother POS to pull the catalog/settings and push orders. | Default for all new stores. |
| Legacy pull | Brother POS reaches into your website over the WooCommerce REST API. | Older stores set up before the plugin, or sites without the plugin. |
Every store created after mid-2026 is set to plugin push / pull automatically. You do not need to enter a store URL or WooCommerce API keys for this mode — the plugin handles the connection itself.
Why Plugin Sync Is More Reliable
The old legacy pull mode had Brother POS connect into your website. That inbound connection is exactly what security tools are built to stop:
- Cloudflare / WAF / bot-fight can rate-limit or block Brother POS's requests.
- Security plugins (Wordfence, Sucuri) can reject REST API calls.
- Some hosts block the HTTP PUT and DELETE methods entirely, so product updates and deletes fail with a
403even when your API keys are valid.
With plugin push / pull, every connection originates from your website and goes outbound to Brother POS. Outbound traffic never crosses your site's firewall, so none of the blocks above apply, and there are no inbound writes to your site to be refused.
What the Plugin Keeps in Sync
Once connected, the plugin runs three jobs automatically and on a throttled schedule:
1. Catalog Pull (products in)
The plugin pulls your product catalog from Brother POS and writes each product into WooCommerce using WooCommerce's own functions.
- Paginated and incremental. The first "Sync all products now" pulls the full catalog in batches of 100. After that, the plugin only pulls products that changed since the last pull, so it stays fast even with thousands of SKUs.
- Matched by SKU. Products are found or created by SKU, so re-running a sync never creates duplicates. A large catalog that times out mid-run can be safely resumed by clicking again.
- Carries everything. Name, price, sale price, description, stock, categories (with icons), weight pricing, quantity pricing, cannabis attributes (THC/CBD, strain type, terpene), and images.
See Product Sync for the full field-by-field breakdown.
2. Config Pull (storefront settings in)
The plugin pulls your storefront settings from Brother POS and applies them to WooCommerce, so you configure everything once in Brother POS instead of hand-editing each website. This includes:
- Payment methods — Interac e-Transfer and Pay-on-Pickup (see Order Sync).
- Tax — synced from your Brother POS tax settings (see below).
- Shipping — free-over-threshold, flat delivery fee, and local pickup (see below).
- Checkout add-ons — tip selector and delivery/pickup scheduling.
- Go live — turns off WooCommerce's "Coming soon" mode and enables the order push.
3. Order & Stock Push (orders and stock out)
When a customer checks out online, the plugin immediately pushes the order to Brother POS. It also pushes stock and product changes made in WooCommerce. See Order Sync.
The Connection Sets Itself Up
You never type an ingest URL or a shared secret. The only thing you paste is your POS API key:
- In Brother POS, open Settings > WooCommerce Integration. Your POS API key is shown with a copy button.
- Paste that key into the Brother POS plugin on your WordPress site.
- Brother POS detects the key and pushes the connection details (the address to send events to, plus a private site ID and secret) straight into the plugin.
From that point on, the plugin knows exactly where and how to talk to Brother POS. Every message is signed with the private secret so only your store's plugin can read or write your data.
The connection is secured with a per-store site ID and a rotating HMAC signature on every request, including a short time window to block replay attempts. You do not manage any of this — it is provisioned automatically the first time your key is recognized.
Automatic Tax Setup
Instead of installing WooCommerce Tax or Avalara, the plugin builds your WooCommerce tax rates from the tax settings you already entered in Brother POS.
- Prices stay entered pre-tax, exactly like in the POS — tax is added at checkout.
- Split tax provinces (for example GST + PST) get one rate line each.
- An additional tax (such as the SK Vapour Products Tax) is added at its own priority.
- Every customer is charged your store's rate, based on your shop's location.
Whenever you change your tax settings in Brother POS, the plugin replaces the old WooCommerce rates on its next pull — no duplicates pile up.
Automatic Shipping Setup
The plugin configures WooCommerce-native shipping from your Brother POS delivery settings:
| Method | Behavior |
|---|---|
| Free shipping | Free over your free-delivery threshold (or always free if no threshold is set). |
| Flat-rate delivery | Your delivery fee, charged on orders under the threshold. Labeled "Delivery" for local-delivery stores, "Shipping" for mail-out stores. |
| Local pickup | Free, when pickup is enabled. |
A few details that make this rock-solid:
- All zones are configured, not just one. WooCommerce serves the most specific matching shipping zone. The plugin configures every zone so a leftover "United States" or state zone can't quietly override your rates. Any pre-existing "always free" shipping is cleared first.
- The paid delivery option hides when free shipping qualifies, so customers never see a delivery charge sitting next to a free option.
- The rate cache is cleared after each update, so shoppers immediately see the new rates instead of a stale cached one.
Installing the Plugin
- Download the plugin. Get the Brother POS WooCommerce plugin ZIP from your Brother POS admin panel (or ask support for the latest version).
- Upload it to WordPress. In your WordPress admin, go to Plugins > Add New > Upload Plugin, choose the ZIP, and click Install Now.
- Activate the plugin.
- Paste your POS API key. Open the plugin's setup screen (WooCommerce > Weight Pricing > API Setup) and paste the POS API key from Brother POS.
- Sync. The plugin registers its connection automatically. Click Sync all products now for the first full catalog import; after that, products and settings refresh on their own.
After activating, open the BrotherPOS Diagnostics page under the WooCommerce menu. It shows whether the ingest URL and shared secret are set and when the last product pull ran. See Diagnostics.
Troubleshooting
| Problem | Solution |
|---|---|
| Products not appearing online | Confirm the POS API key is pasted into the plugin. Click Sync all products now in the plugin, then check Last product pull on the Diagnostics page. |
| Storefront still shows "Coming soon" | Enable Go live in your Brother POS WooCommerce settings — the plugin turns off Coming Soon mode on the next config pull. |
| Wrong or duplicate shipping methods | The plugin replaces the shipping methods it manages on each pull. Trigger a fresh pull, or use the plugin's manual "pull config" action. Legacy "always free" shipping is cleared automatically. |
| Tax not calculating online | Make sure your tax rates are set in Brother POS. The plugin only builds WooCommerce tax when a rate is configured. |
| Big catalog import stops partway | Just click Sync all products now again — it resumes safely because products match by SKU and images are skipped once present. |
| Old store still using REST API | Switch Sync direction to Plugin push / pull in the WooCommerce settings, then install the plugin. |
Best Practices
- Use plugin push / pull for every new store. It is the default and avoids firewall headaches entirely.
- Configure payment, tax, and shipping once in Brother POS. Let the plugin apply the same settings to every website you run.
- Keep the plugin up to date. Download the newest ZIP when you upgrade Brother POS so new sync fields work.
- Check Diagnostics after install. A 30-second look confirms the connection is healthy before you go live.
What's Next?
- Product Sync — What the catalog pull sends and how products are matched.
- Order Sync — How online orders and payment options flow back to Brother POS.
- Diagnostics — The in-admin troubleshooting page on your WordPress site.
- Health Monitor — Monitor sync activity from the Brother POS side.