Using Shipmate with WooCommerce

Introduction

The Shipmate plugin for WooCommerce allows quick and easy integration between your Shipmate account and WooCommerce store, giving access to all the carriers and delivery services Shipmate provides, directly inside WooCommerce.

This guide explains how to set up the Shipmate WooCommerce plugin and configure your accounts to start despatching your orders in WooCommerce using delivery labels from Shipmate.

Shipmate - WooCommerce Plugin

Requirements

Before you are able to start printing shipping labels using Shipmate with WooCommerce, you will need the following:

  • A self-hosted WooCommerce store running WooCommerce 3.0 on WordPress 4.0 or later
  • PHP 5.6 or later with the cURL module enabled
  • (S)FTP access to your WordPress installation either through WordPress itself or on your server
  • A Shipmate account
  • At least one active Carrier and Delivery Service
  • A compatible printer

In order to print labels directly within WooCommerce using Shipmate WebPrint™ you will also need to download the Shipmate Desktop Application for Windows or macOS.

If you need any assistance ensuring you have everything you need to link your Shipmate account with WooCommerce, please contact support@shipmate.co.uk.

Please bear in mind we are unable to install the plugin for you or directly support your hosting infrastructure configuration. You may need to ask your web developers to install and test the plugin for you.



Setup - WooCommerce

Install Shipmate Plugin

Installing the Shipmate WooCommerce Plugin is straightforward but you might need a hand from your web developer, depending on how your store has been set up. The plugin is installed much like any other WordPress plugin, so if you are familiar with this - you should be up and running in no time.

Firstly, Download the Shipmate WooCommerce Plugin here.

Upload the contents of the Zip file to the /wp-content/plugins/shipmate directory on your web server, then navigate to the Plugins area inside your WordPress Dashboard.

Here you should see the WooCommerce Shipmate plugin - click Activate to install the plugin.

Connecting Shipmate

To connect your Shipmate account your WooCommerce store, simply take the following steps:

1. Click the Settings option from within the WooCommerce section of the WordPress Dashboard.

2. Click the Shipmate tab along the top of the WooCommerce Settings screen.

3. Enter your Shipmate account details - these are the details you usually use to log in to your Shipmate account.

Ensure the correct environment is selected - in most cases simply leave this as 'Production'.

4. Click the 'Save changes' button. If all your details are correct, you will see the line Your WooCommerce installation is connected to your Shipmate account. This means your Shipmate account is now linked to your WooCommerce store and you will see your Shipmate account name and access token.

If you made any mistakes, simply repeat the above steps, checking your details carefully until you see the success message.

Shipmate - WooCommerce Settings
Hover
Shipmate - WooCommerce Settings

Enabling Label Generation

From the General Options tab inside the Shipmate WooCommerce settings, you can choose when the WooCommerce plugin allows you to generate new shipping labels using Shipmate. In most cases you will want to leave the default option of 'Only when the order status is Processing' - however if you use custom order statuses, it might be useful to switch the option over to 'For any order status'.

Once you are happy with your choices, click the ‘Save changes’ button. These settings will apply when you next process an order.

Shipmate - WooCommerce Enabling Label Generation Settings

Printing Method

You have the option to choose when your shipping labels are printed - either immediately upon generation automatically, or you can generate the labels but print them later, either using the Shipmate Desktop App Scan & Print feature, or from the Shipmate Web Portal.

Simply choose the method you want to use from the Printing Labels section of the General Options tab inside the Shipmate WooCommerce settings.

Once you are happy with your choices, click the ‘Save changes’ button. These settings will apply when you next process an order.

Shipmate - WooCommerce Printing Method Settings

Units of Measure

By default, Shipmate works in centimetres and grams, however we understand this might not match the units of measure you commonly use, or those otherwise stored on your WooCommerce store. You can select from millimetres, centimetres and metres (sorry, no imperial measurements!) for dimensions and grams and kilograms for weights.

Simply choose the units you want to use from the Units of Measure section of the General Options tab inside the Shipmate WooCommerce settings.

Once you are happy with your choices, click the ‘Save changes’ button. These settings will apply when you next process an order.

Shipmate - WooCommerce Units of Measure Settings

Updating Order Statuses

The Shipmate WooCommerce plugin is able to automatically update the status of your orders when labels are created, cancelled or if there’s a problem with creating shipping labels.

To configure these statuses, simply click the ‘General Options’ tab from within the Shipmate WooCommerce Settings tab. Under the 'Updating Order Statuses' heading you will see the three events you are able to configure - simply drop down the menu and select the status you wish to apply in each situation.

If you don’t want Shipmate to update the order status, leave or set the option to ‘Don’t change status’.

Once you are happy with your choices, click the ‘Save changes’ button. These settings will apply when you next process an order.

Shipmate - WooCommerce Updating Order Statuses Settings

User / Printer Mapping

You can link users on your WooCommerce store to users on your Shipmate account through the User Mapping setting. This means that when your users print labels using the Shipmate Plugin, the labels are sent to their printer, facilitating multi-user shipping label printing.

Useful tip: If all your WooCommerce users print to the same label printer, simply map them all to the user you log in to Shipmate with to print labels.

To configure your user mappings, simply click the ‘User Mapping’ tab from within the Shipmate WooCommerce Settings tab.

On this screen you will see a list of all of your WordPress users, with a drop-down menu next to each of them. Simply select the Shipmate user you wish to assign to each of your WordPress users.

If you don’t want to assign a user to Shipmate, simply leave the Shipmate User drop-down set to ‘Not Assigned’.

Once you are happy with your choices, click the ‘Save changes’ button. These settings will apply when you next process an order.

Shipmate - WooCommerce User Mapping Settings

Delivery Routing

You can map Shipping Options within your WooCommerce store to Delivery Services on your Shipmate account through Delivery Routing settings. This means that when your customers select a particular Shipping Option when they place their order, Shipmate will automatically pre-select the equivalent service for you when creating your shipping labels.

Useful tip: If you would still like to use Routing Rules within Shipmate, you can bypass this feature by simply leaving each of the Shipping Options set to Any Delivery Service.

To configure your Delivery Service Mappings, simply click the ‘Delivery Routing’ tab from within the Shipmate WooCommerce Settings tab.

On this screen you will see a list of all of your WooCommerce Shipping Options, with a drop-down menu next to each of them. Simply select the corresponding Shipmate Delivery Service you wish to assign to each of your Shipping Options.

If you don’t want to assign a Shipping Option to a particular Delivery Service, simply leave the Delivery Service drop-down set to ‘Any’.

Once you are happy with your choices, click the ‘Save changes’ button. These settings will apply when you next process an order.

Shipmate - WooCommerce Delivery Routing Settings

Packaging Options

The Shipmate WooCommerce plugin will automatically pull through all of your Packaging Options configured on Shipmate for selecting whenever creating your parcels.

It is also possible to configure a default Packaging Option that is automatically applied to all parcels, which is especially handy when you standardise on only a few packaging types.

To view the current default Packaging Option, simply click the ‘Packaging Options’ tab from within the Shipmate WooCommerce Settings tab.

This screen shows you the current configuration with a handy link to the relevant settings on your Shipmate account. Any changes made on your Shipmate account will be automatically reflected when processing new orders in WooCommerce.

Shipmate - WooCommerce Packaging Options Settings

International Shipments

The Shipmate WooCommerce plugin adds six additional custom fields to the Shipping section of each of your WooCommerce products - enabling you to provide the necessary customs declaration details for your shipments. The six fields are:

  • Shipmate HS Code - this is the Harmonised Code or Tariff Code
  • Shipmate Product Short Description
  • Shipmate Product Full Description
  • Shipmate Item Value (£)
  • Shipmate Item Quantity
  • Shipmate Country of Origin

To edit these values, simply navigate to the WooCommerce Products page, then click Edit for the product you wish to update. These additional fields can be found inside the Shipping section of the Product Data area.

These attributes must be present in order to send your products outside of mainland UK.

You can find out more information about Tariff Codes on the UK Government website - GOV.UK.

If you need to update many products at the same time, you may wish to explore using a CSV uploader rather than editing each individual product. Ask your web developer for further details.

Disconnecting Shipmate

If you no longer wish to associate your WooCommerce store with your Shipmate account, simply click the ‘Your Integration’ tab from within the Shipmate WooCommerce Settings tab, then click the ‘Disconnect from Shipmate’ button.

This will close the connection between your WooCommerce store and Shipmate account. This does not affect any other settings on your Shipmate account.




Setup - Shipmate

Channel Settings

To amend your WooCommerce Channel settings inside Shipmate, you need to be logged in as an administrative user on your account, then simply navigate to your profile menu then click Settings.

From the Settings menu select Sales Channels. This will open a page listing all of the available channels on your account. Simply click the blue ‘Settings’ link next to the WooCommerce logo. This will open the WooCommerce Channel Settings page.

Shipmate - Settings
Hover
Shipmate - Settings - Sales Channels
Shipmate - Channel Settings
Hover
Shipmate - Channel Settings with WooCommerce highlighted
Shipmate - WooCommerce Channel Settings

Tracking References

Shipmate is able to return either the carrier’s tracking reference, or the Shipmate Unified Tracking Reference, which you can use to notify your customers so they are able to track the progress of their orders.

If you opt for the Carrier’s tracking reference, customers will have the direct tracking reference for the carrier however if you subsequently make any changes to their delivery, they might not be informed automatically.

If you use the Shipmate Tracking Portal, it’s most likely that you should opt for the Shipmate Unified Tracking Reference, as this will provide you with the Unified Tracking Reference needed to link to the Tracking Portal.

To choose which tracking reference you’d like to use with WooCommerce, simply select the relevant option from the Tracking Reference section of the Channel Settings, then click ‘Update Settings’.

Shipmate - WooCommerce Channel Settings
Hover
Shipmate - WooCommerce Channel Settings with Tracking Details highlighted

Shipmate Desktop App

In order to print shipping labels directly using Shipmate with WooCommerce, you must download the Shipmate Desktop App and configure the app to use your label printer.

You can find out more about installing and configuring the Shipmate Desktop App for Windows or macOS in these user guides.

Shipmate - Desktop App

Disconnecting your Store

If you no longer wish to associate your Shipmate account with your WooCommerce store, simply click the ‘Remove Channel’ button on the WooCommerce Channel Settings page.

This will close the connection between your Shipmate account and WooCommerce store. This does not affect any other settings on either your Shipmate account or WooCommerce store.

Shipmate - WooCommerce Channel Settings
Hover
Shipmate - WooCommerce Channel Settings with Remove Channel highlighted



In Use

Shipping an Order

You are able to print shipping labels using Shipmate for all orders that have a ‘Processing’ status in WooCommerce.

From the Order screen inside WooCommerce admin, simply click the 'Print Labels with Shipmate' button to open the Print Shipping Labels dialogue box.

Here you can add as many parcels as you like to fulfil your order. If you have configured a default Packaging Option, the weight and dimensions will have already been pre-populated with these values. You can overwrite these values if you wish, or select another Packaging Option to change all the values accordingly.

If you wish to add more parcels, simply click the ‘Add Parcel’ link and repeat the steps above. To remove a parcel, simply click the ‘x’ on the right-hand side of the parcel row.

Beneath the parcel details you are able to finally select the Delivery Service and Despatch Date, which will automatically be set as today’s date. If you set the Delivery Service to ‘Use Routing Rules’, Shipmate will apply the rules configured on your account for the given parcel details - otherwise, select the specific delivery service you wish to use.

Once you are happy with your selections, click the ‘Print with Shipmate’ button. This will generate the labels and send them to your WebPrint connected printer, while saving the tracking references against the order in WooCommerce. The order status will also be updated according to the settings you have configured.

WooCommerce - Print Shipping Label
WooCommerce - Print Multiple Shipping Labels
WooCommerce - Print Multiple Shipping Labels
Hover
WooCommerce - Print Multiple Shipping Labels

Shipping Multiple Orders

You are able to print shipping labels using Shipmate for all orders that have a ‘Processing’ status in WooCommerce.

From the Orders list screen inside WooCommerce admin, simply check all the orders you wish to despatch then click the 'Print Label with Shipmate' option from the ‘Bulk Actions’ drop-down menu to open the Print Shipping Labels dialogue box. This allows you to print a single shipping label for each selected order.

Here you can confirm the weight and dimension of each order. If you have configured a default Packaging Option, the weight and dimensions will have already been pre-populated with these values. If your Packaging Options settings allow, you can overwrite these values if you wish, or select another Packaging Option to change all the values accordingly.

If you wish to remove an order from the bulk print, simply click the ‘x’ on the right-hand side of the order’s row.

Any orders that have previously been processed will show greyed out. These orders won’t be regenerated in Shipmate, but instead Shipmate will reprint the label(s) originally requested.

Beneath the parcel details you are able to finally select the Delivery Service and Despatch Date, which will automatically be set as today’s date. If you set the Delivery Service to ‘Use Routing Rules’, Shipmate will apply the rules configured on your account for the given parcel details - otherwise, select the specific delivery service you wish to use.

Once you are happy with your selections, click the ‘Print with Shipmate’ button. This will generate one label per order and send them to your WebPrint connected printer, while saving the tracking references against the orders in WooCommerce. The status for each order will also be updated according to the settings you have configured.

WooCommerce - Bulk Actions
Hover
WooCommerce - Print Shipping Labels
WooCommerce - Print Multiple Shipping Labels



Developer Information

Updating Email Templates

If you want to include tracking details on Order Completion emails, the Shipmate WooCommerce plugin adds four Post Meta Data attributes to your WooCommerce Orders:

  • _shipmate_carrier – Carrier Name
  • _shipmate_service – Delivery Service Name
  • _shipmate_tracking_reference – Tracking Reference Number
  • _shipmate_parcel_reference – Shipmate-generated Parcel Reference

To add these details to your Order Completion email template, you can use the standard $order->get_meta(); function, for example

$order->get_meta('_shipmate_tracking_reference');

Alternatively, if you have a Shipmate Tracking Portal, you can build up your own branded tracking link in the format https://tracking.yourdomain.com/track/:order_number/:postcode

To obtain the order number and postcode, you can use the following code in your WooCommerce email templates:

$order_number = $order->get_order_number();
$address = $order->get_address('shipping');
$postcode = $address->postcode;

Then use $order_number and $postcode to build up your tracking URL.

The Order Completion email template is typically found in the WooCommerce theme directory, such as woocommerce/emails/plain/customer-completed-order.php

Once updated, make sure you have configured the WooCommerce Shipmate plugin to automatically update the Order Status to Completed on successful label generation.

This will then trigger WooCommerce to send the email automatically to the customer when you print your labels.




Further Information

Version History

Version 2.8.0 - February 2023
Download

  • User Interface improvements and bug fixes

Version 2.7.0 - December 2022

  • Bug fix for reprinting labels
  • Bulk printing packaging options bug fix
  • UI wording change based on the user print settings

Version 2.6.0 - October 2022

  • Adds support for Product Variants using Variant Item Regular Price to calculate contents value

Version 2.5.0 - May 2022

  • Swapped billing telephone to delivery telephone if present

Version 2.4.0 - April 2022

  • Removed double slash in base URL for all endpoints
  • Sorted delivery services to be listed alphabetically

Version 2.3.0 - April 2022

  • Added SKU listing
  • General bug fixes and improvements

Version 2.2.0 - March 2021

Following customer feedback we have made the following improvements to the WooCommerce plugin:

  • Improved printing workflow - choose when your labels are printed
  • Delivery Services now listed alphabetically
  • Improved error messages
  • General bug fixes and improvements

Version 2.1.0 - June 2020

  • Ability to configure units of measure
  • Improved compatibility with custom order statuses
  • Ability to allow label printing in any order status
  • Improved error messages
  • General bug fixes and improvements

Version 2.0.0 - February 2020

  • A brand new, stylish User Interface
  • Print shipping labels for multiple orders on the Orders screen in WooCommerce
  • Ability to process International orders
  • General bug fixes and improvements

Version 1.5.0 - January 2020

  • Ability to quickly populate weights and dimensions using Packaging Types
  • Configure a default Packaging Type to minimise data entry
  • Configure order statuses based on key events when using Shipmate
  • Added support for WooCommerce 2.0
  • General bug fixes and improvements

Version 1.0.0 - August 2018

Initial version facilitates integration between Shipmate and WooCommerce. Features include:

  • Print shipping labels within the Order screen in WooCommerce
  • Map your store’s delivery services to those in Shipmate
  • Add multiple parcels per order
  • State the weight and dimension for each parcel
  • Print shipping labels directly within WooCommerce using WebPrint
  • Map WooCommerce and Shipmate users for simplified label printing
  • Stores carrier tracking numbers inside WooCommerce
  • Multi-User label printing
  • Sets order status to “Complete” when label is generated