The Context
My client, an UK-based WooCommerce merchant, ships orders via DHL eCommerce UK to B2B buyers. Among them is a major customer on Shopify who relies on my client to fulfil their orders to a third client. Effectively, this operates as a dropshipping arrangement.
- My client’s ERP (SAP Business One) integrates only with their WooCommerce store.
- There’s no direct data exchange between the WooCommerce and Shopify stores, or Shopify and the ERP.
- To enable quick label printing, both stores connect to the same DHL admin panel (using two separate accounts, but let’s park this for now).
The Problem
The Windsor Framework governs the movement of goods between the Republic of Ireland and the UK while keeping trade between Northern Ireland and the rest of the UK frictionless.
In practice: Shipments to Northern Ireland require a Customs Declaration identifying the shipment type (e.g. B2B or B2C) and whether goods are “at risk” of onward movement to the Republic of Ireland.
- The existing WooCommerce → DHL and Shopify → DHL integrations did not produce these declarations.
- Admins had to create them manually, with an obviously slow and error‑prone process.
Objectives & Requirements
As my client wanted to accelerate the operations, we made a list of what we wanted to do:
- Automate Customs Declarations for Windsor Framework compliance
- WooCommerce integration
- Shopify integration
- DHL eCommerce UK integration
- HS code (harmonised system) management
- Validate with a free trial
- SAP Business One integration (Nice to Have)
The Solution: ShipStation
After evaluating options, we chose ShipStation. It supports WooCommerce, DHL eCommerce UK, and Shopify. A SAP integration is probably a big ask at the moment, so we decided to let that go. The free trial let us test workflows and fix minor issues — for example, correcting how the Total Value field was passed to DHL for customs.
Integration Steps
1) WooCommerce ↔ ShipStation
- Install the official ShipStation plugin from the WooCommerce extensions marketplace.
- In WooCommerce, generate an API key and API secret (Settings → Integration → ShipStation).
- Paste those credentials into ShipStation to connect the store.
2) Shopify ↔ ShipStation
- Log in to admin.shopify.com in your browser.
- In ShipStation, enter your Shopify store domain (e.g.,
yourstore.myshopify.com
). - Approve the app connection when prompted.
3) DHL eCommerce UK ↔ ShipStation
- In ShipStation, open Carriers & Fulfilment.
- Choose DHL eCommerce UK and enter your Client ID and Client Secret.
Tip: ShipStation will require some setting up in terms of shipments, declared value, HS codes, and origin country. The automations seem to be powerful too.
Final Setup in ShipStation
- Create Automation Rules for NI destinations to set UKIMS & EORI, possibly for B2B / Risk declarations.
- Maintain Product Defaults with HS codes, origin country, and customs descriptions.
- Test label creation for a Northern Ireland address to confirm the Customs Declaration is generated correctly.
Once configured, you can manage all labels in one platform and automatically generate Windsor Framework–compliant Customs Declarations—keeping Northern Ireland deliveries smooth and audit‑ready.
FAQs
Does ShipStation support Windsor Framework customs declarations out of the box?
ShipStation can generate the necessary customs data when your store, carrier, and product defaults (including HS codes) are set correctly. Automation rules help apply NI‑specific logic consistently.
Where do I manage HS codes?
We decided to store HS codes within ShipStation’s product catalog.
Can I do this without connecting Shopify and WooCommerce to each other?
Yes. Each store connects to ShipStation separately, and ShipStation centralises labels and customs paperwork even if the stores don’t exchange data directly.
Key Takeaway
If you need to integrate WooCommerce, Shopify, and DHL eCommerce UK while staying compliant with the Windsor Framework, ShipStation provides a straightforward, scalable path. It eliminates manual paperwork, reduces errors, and consolidates shipping into one dashboard.