Shiptheory is able to pull your shipments from your Magneto 2 store, however it is important to keep in mind that orders and shipments are not the same. Shiptheory will pull orders through rather than shipments, meaning that if you have an order with 2 shipments then Shiptheory will pull through the 2 shipments separately rather than as one order.


To get fully setup and integrated with Magento 2 on your Shiptheory account you will need to setup the integration on both Magento's side and Shiptheory's.

To set the integration up on Shiptheory's side you will need to go to our channels page and select 'enable' on the Magento 2 option.

From here you can either follow the onscreen instructions or follow the rest of this guide.

The next step is to setup the integration from Magento's side, you will need to pass this guide to your developer in order to complete the following tasks:

  1. Backup your Magneto store files and datebase
  2. Download the the Shiptheory Magento 2 Extension from here

Then Upload the contents of the Shiptheory Magento 2 extension installation package to your store root directory

In the SSH console of your server, navigate to your store root folder and enter the following commands:
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile

Then, logout and back into your Magento 2 admin panel and browse on the main menu to Sales -> Shiptheory > Configuration 

From here, you will want to enter your API key from your Magento 2 settings page in Shiptheory into the 'API Key' field in Magento. 

Then select 'yes' in the 'Enable Webhooks' field and click on the orange 'Save Config' button in the top right corner of the screen.

Finally, you can test if the connection is working correctly by clicking on the 'test connection' button at the bottom of the Magento 2 settings page in Shiptheory.

You can also find the installation instructions on our Installing Shiptheory on Magento guide.


At this point, your Magento 2 store is now integrated and connected to your Shiptheory account, any shipments with the status 'processing' will be automatically sent into Shiptheory. If not, please refer to our guide on why your orders may not be coming into Shiptheory

From here, you will now need to configure the integration to your personal needs.

The first settings you can change is the Product Weight Unit option, in this field you can select what weigh units you use for your products in Magento.

Next up is you notification options, here you can select if you would like to send an email to your customers when their shipments are booked in.

Advanced Settings

The following settings are found in the 'advanced settings' section of the page, this section can be accessed by clicking on the small silver cog at the very bottom of the Magento 2 settings page.

Order Status

The first four options in the 'advanced settings' will allow you to control what happens to shipments when they have a particular status, you are able to control and change what the statuses are for each of the following actions:

    Trigger Status - The Trigger Status is used to select which shipments are sent into Shiptheory, by default this is set to 'processing' so that any shipments with the status of 'processing' will be sent into Shiptheory as soon as the 'ship' button is clicked on the shipment. 

    Update Status - This action is used to update the status of the shipment in Magneto once the shipment has been booked in, this is so that you can keep track of which shipments have been booked in but without the need to login to Shiptheory. By     default this is also set to 'processing' but it can also be changed to any status you have, such as complete, shipped, dispatched, etc.

    Failed Status - This action is used to update the status of the shipment in Magento if the shipment has failed, but by default this is set to 'processing'.

    Label Printed Status - This action is used to update the status of a shipment as soon as the label is physically printed, by default this actions isn't used so that the status isn't changed. But you can add a status in the field to update the shipment to a status such as 'printed'.

One important thing to note here is that the value you fill out in these fields will need to be the "Status Code" rather than the "Status", as the Status Code is the internal value for these and therefore the one that Shiptheory will be able to use.

Commodity Information

The following fields are used to pull the correct commodity information from the products for when you ship internationally, in these fields you will need to enter the attribute code associated with the type of commodity code you have in Magento 2.


For example, if you attribute code 0001 for the commodity description in Magento 2 then you would add the attribute code 0001 to the commodity description field in Shiptheory. If you don't have commodity data or attribute codes setup in Magento 2 then you can follow our guide on getting setup with commodity data in Magento 2.

The final field you may want to configure is the Default Empty Shipment Value field, this field is used to automatically add a value to a shipment if the shipment has a value of 0. This is typically used if there is no value associated in Magento but the carrier you use requires a value.

The final step is to save your details and your connection, simply just click on the blue 'save' button that appears just above the advanced settings. This will then save all of your details, your connection will be setup & correctly configured, and you will be ready to start shipping.

If you have any trouble with getting setup, unsure of what information to include or just need any clarification - you can reach out to our support team and we'll be happy to help.