What can we help you with?

How to set up ELEX ShipEngine Multi-Carrier Shipping & Label Printing Plugin for WooCommerce?

This article will give you detailed, step-by-step instructions on setting up the ELEX ShipEngine Multi-Carrier Shipping & Label Printing Plugin for WooCommerce. For more information, visit the product page of the plugin. 

ShipEngine is a multi-carrier shipping logistics leader. It enables eCommerce store owners to shop shipping quotes, validate addresses, print labels, and more while providing an outstanding developer experience. ShipEngine is a group of API enthusiasts with one purpose in mind: to solve logistics for commerce.

Our ELEX ShipEngine (FedEx & UPS) WooCommerce Shipping Method Plugin is a WordPress/WooCommerce extension that automates WooCommerce UPS and WooCommerce FedEx shipping by displaying shipping costs on the cart/checkout page. The ShipEngine APIs allow you to pay for postage and print shipping labels directly from your WooCommerce store. 


The following are some of the most significant features of the plugin:

UPS and FedEx shipping rates updated in real-time: Based on the product weight, box dimensions, shipping location, the plugin retrieves UPS and FedEx shipping charges from your ShipEngine account. The shipping costs are displayed on the shopping cart and the checkout page.

Print shipping labels for UPS and FedEx: You can generate and print shipping labels from the WooCommerce order admin page and create a shipment right from the ShipEngine Dashboard

UPS Third-Party Billing: UPS offers several different billing options to customers. UPS allows a third party to be charged for a shipment in addition to the shipper and receiver.

Real-time Estimated Delivery dates: The ShipEngine plugin shows the different available delivery dates along with the various services offered by FedEx and UPS.

Track Shipments: ShipEngine will include the UPS/FedEx tracking number returned during label creation to the order details and include it in the order completion email, allowing both customers and store owners to track packages.

Handling fees: Set up handling fees for each shipping service, either as a fixed amount or as a percentage of the total value.

Options for Packaging: Choose from various predefined packaging options.

Choose separate services for each package: If an order includes multiple packages, a store administrator may select different services for each one.

All of these features (and many more!) are bundled into a single solution for all of your eCommerce store’s shipping requirements.

Getting started with the ShipEngine Multi-Carrier Shipping & Label Printing Plugin for WooCommerce

Read an article to know how to complete the checkout process on ELEX. You can also read how to download, install, activate ELEX plugins.

After installing and activating the plugin, you can access plugin settings in two ways:

  • Dashboard > WooCommerce > Shipping > ShipEngine (or)
  • Dashboard > Plugins > Installed Plugins > ELEX ShipEngine Shipping Plugin > Settings.

Let’s get started configuring the plugin; now that we know what it has to offer and have it installed.

General settings

The general settings are listed below:

General settings ELEX Shipengine

  • Rates in Real Time: Tick this checkbox to display real-time shipping rates from shipping services on the cart/checkout page.

Rates in Real Time ELEX ShipEngine

  • Debug Mode: If you are not receiving rates (lower or higher than expected), are not receiving all available shipping options, or are not receiving any rates at all, you can select this checkbox to locate the error.

Debug Mode ShipEngine

  • Status log: Enable the Status Log option to view information about orders for developers to troubleshoot. You can turn it off on the live site with traffic.

Status log ELEX ShipEngine

Generic API Settings

The following are the generic API settings:

Generic API Settings ShipEngine

  • API Mode: TEST mode allows you to test your plugin settings (such as real-time rates, label printing, and so on), while LIVE mode allows you to accept real-time order transactions.
  • API key: To obtain access to ShiEngine APIs, you must first register with ShipEngine. You will receive a test key and a live key after successfully registering. In this field, enter the API key you received.

How to register for a ShipEngine account?

  1. Go to ShipEngine Signup PageHow to register for a ShipEngine account
  2. Enter all the required details in the given registration form and signup.
  3. Once you have signed up, go to User Dashboards > API Management, as shown in the screenshot below:API Management ShipEngine
  4. Copy the relevant API key (Production or Test), and paste it in the API-Key text field of our EasyPost plugin.

Click the Save changes button.

Rates & Services Settings

This section contains settings that determine which services are available to customers in your WooCommerce store. The settings are shown below:

Rates & Services Settings ELEX ShipEngine

  • Method Title: This option allows you to specify a unique title for the ShipEngine shipping method. This title will appear under Shipping options on the cart and checkout pages.
  • Method Available to: This field allows you to specify which countries you want to offer the ShipEngine shipping method to.
    • All Countries: Select this option if you want to provide the ShipEngine shipping method to customers all over the world. By default, this option is selected.
    • Specific Countries: This allows you to choose the countries you want to ship to. Only a few countries will be able to use the ShipEngine shipping method.
  • Zip Code: Enter the sender’s zip code. This zip code will be used to determine shipping costs.
  • Sender State Code: Enter the two-letter shortcode of the sender’s state.
  • Sender Country: Select the sender’s country.

Estimated Delivery Date Settings

  • Estimated Delivery Date: Displays an estimated delivery date for the package to the specified shipping address.

Enabling this setting will reveal the following options –

Estimated Delivery Date Settings ShipEngine

  • Working Days: Choose the number of working days you want for delivery. Based on the days selected in this setting, the customer will be given an estimated delivery date.
  • Cut-off Time: Select a cut-off time that suits you. If an order is placed after the cut-off time, the next working day will be selected as the delivery date in the ShipEngine API request, with the time format being determined by your system’s date and time format. 

Carrier & Rate Settings

Carrier & Rate Settings ELEX ShipEngine

  • Fallback: If ShipEngine fails to return any shipping costs, the fallback rate for shipping will be shown so that users can check out. To turn it off, leave it blank.
  • Rates Type: Choose between residential and commercial rates for your consumers. Typically, residential rates are higher than commercial rates.
  • Handling Fee: If you want to charge your customers a handling fee, enter it here, and it will be added to the order total. If you don’t want to charge the fee, you can leave it blank.
  • ShipEngine Carrier(s): Choose your preferred shipping carrier(s). Popular shipping carriers such as FedEx and UPS are supported by the plugin. Depending on your needs, you can choose one or more shipping carriers.
  • Services: FedEx and UPS both offer a variety of shipping options to meet a variety of consumer requirements. The following services are supported by our WooCommerce ShipEngine Shipping plugin:


  • First Overnight
  • Priority Overnight
  • Standard Overnight
  • FedEx 2 Day AM
  • FedEx 2 Day
  • FedEx Express Saver
  • FedEx Ground Home Delivery
  • FedEx Ground
  • FedEx International Priority
  • FedEx International Economy
  • FedEx International First


  • Ground (UPS)
  • 3 Day Select (UPS)
  • 2nd Day Air AM (UPS)
  • 2nd Day Air (UPS)
  • Next Day Air Saver (UPS)
  • Next Day Air Early AM (UPS)
  • Next-Day Air (UPS)
  • Express (UPS)
  • Expedited (UPS)
  • Express Plus (UPS)
  • UPS Saver (UPS)
  • UPS Standard (UPS)

The shipping services settings supported by ShipEngine are as given below:

shipping services settings supported by ShipEngine fedex services settings

You can choose from a variety of services based on your needs. Non-selected services, even if they are available from the corresponding shipping carrier, are not displayed to the customer.

The services table is divided into the following four columns:

  1. All of the services offered by the selected shipping carriers are listed in the first column. You can select the desired service(s) to give to your customers by checking the appropriate box.
  2. The second column allows you to give the services a custom name.
  3. The third and fourth columns allow you to make positive or negative pricing modifications in terms of dollar value or a percentage value.

For example, consider shipping cost of Ground UPS returned by UPS is $5

Case 1: Price adjustment of $5, for Ground UPS Mail –

Price adjustment of $5 for Ground UPS Mail

The total shipping cost displayed for Ground UPS Mail is $10 ($5+$5).

Case 2: Price adjustment of 10%, for Ground UPS Mail –

Price adjustment of 10% for Ground UPS Mail

The total cost displayed for Ground UPS Mail is $5.5 (the 10% of 5 is added to 5).

Case 3: Price adjustment of $5 and 10%, for UPS Ground Mail –

Price adjustment of $5 and 10% for UPS Ground Mail

The total cost displayed for UPS Ground Mail is $10.5 (the 10% of 5 is added to 5 + 5 to get actual).

Save your settings once they are configured.

Label Generation settings

The fields for the Label Printing API Setting are as follows:

Label Generation settings ELEX ShipEngine

Label Printing API Settings

  • Print Label Type: This section allows you to choose the file format for printing the shipping labels.Label Printing API Settings ShipEngine

The following are the available options:

  • Portable Network Graphics (PNG): This option prints the label in Portable Network Graphics (PNG), a raster graphics file format that provides lossless data compression and is extensively used on the internet.
  • PDF: This option prints the label in Portable Document Format (PDF), which is a document presentation format that works with any application, software, hardware, or operating system.
  • ZPL: This option prints the label in the ZPL file format, which is mostly used to store playlist data.
  • EPL2: This option prints the label in Eltron Programming Language format, which allows bitmaps and is suited for printing on media with limited space. It is commonly used to create labels with barcode information.
  • Insurance: The insurance charges are accounted for in your ShipEngine account, and when you request Rates and Services, the API includes the insurance charges along with the shipping cost. You are recommended to maintain sufficient funds in your insurance account on ShipEngine to ensure smooth transactions.

There are three options under this setting:

  1. Customer Choice: When this option is selected, a checkbox will appear on the checkout page where customers can choose whether or not to apply insurance to their package.
  2. Mandatory: Insurance is required for all shipments, as the name implies. Customers will not see any checkboxes or information indicating that the products are guaranteed.
  3. No Insurance: The shipments will not be insured.
  • Label Size: Label sizes are available in two sizes –
    • Default – Uses the same label size as the one returned by the shipping carrier.
    • Custom –You can choose a custom label size for each shipping carrier.
    • UPS – 4×8 or 4×6 inches.
    • FedEx – 4×8, 4×7, or 4×6 inches.
  • Signature Option: When you enable the signature option, it ensures a secure informed delivery. A signature option notifies the sender and confirms when the order has been delivered to the recipient. It is ideal for sending important documents, as well as fragile and other products.

Default Shipment Services

Default Shipment Services ELEX ShipEngine

  • Default Domestic Service: For the generation of domestic shipment labels, select the default domestic service. If no shipping services are specified for an order, the default services specified in these settings will be used.
  • Default International Service: For the generation of international shipment labels, select the default international service. If no shipping services are specified for an order, the default services specified in these settings will be used.

Origin Address

Origin Address ShipEngine

Sender Details: Enter the sender’s name, company name, address, email address, and phone number.

Customs Description: For international shipping, enter the product description. This description will come in handy when it comes to customs.

Customs Signatory: Enter the name of the person certifying the customs form information. Use the name of the person in your organization who is in charge of this. This too will come in handy when it comes to customs.

IOSS Number: Since July 1, 2021, businesses can use the Import One-Stop-Shop (IOSS) to meet their VAT e-commerce obligations on distance sales of imported goods. The IOSS facilitates the collection, declaration, and payment of VAT for sellers who sell imported goods over the internet to buyers in the EU.

Issuing Country Code: For EU shipments, enter the issuing country code.

Third Party Billing (UPS)

Third Party Billing UPS ELEX ShipEngine

If you want to issue bills to a third party for your UPS shipment, you can do so here. Then enter the third party’s UPS account information, country, and zip code. This is usually done when the recipient’s or origin’s country and the third party’s country are the same. You can also enable Third-Party billing during the checkout process.

Click Save Changes to save the settings.

Packaging settings

The packaging settings are as follows.

Parcel packing

The ShipEngine shipping plugin offers three options for parcel packaging. They are:

  • Pack Items Individually: Each item in the cart is packed separately in this option. By adding the shipping costs for each item, the total shipping cost is calculated. By default, this option is selected. Item X, for example, has a shipping cost of $10. If the customer adds two quantities of Item X to the cart, the total shipping cost is $10 multiplied by two, which equals $20.

Pack Items Individually ShipEngine

  • Pack into boxes with weight and dimensions: If packing items individually does not work for your company, you can define custom box sizes in the Box Dimensions section. All items in the cart are packed into custom boxes defined in the Box Dimensions settings. The best-fitting box is chosen at random from the defined boxes. This is the preferred option. You can learn more about box packing by reading about setting up box dimensions.

Pack into boxes with weight and dimensions ELEX ShipEngine

Packing Algorithm: You can choose a packing algorithm from the two options such as: 

  1. Volume Based Packing 
  2. Stack First Packing

By default, it will be Volume Based Packing.

Volume-Based Packing: Volume-based packing lets you pack products based on the total volume of the box and the items.

Stack First Packing:  It follows the Stack First algorithm to pack items by stacking upon one another either based on length, width, or height of them as well as the box in which they are packed. 

You can choose the boxes from the list or create a custom box with the proper dimensions to fit in. In the Stack First Packing, the box dimension will be based on the length, width, and height of the items. Based on that, the items are stacked one upon the other. The box with the least remaining space after the fitting into boxes will be chosen for shipping, as it is economical.

Box Dimensions: This setting is applicable only when Pack into boxes with weight and dimension is selected. Here, you can define the outer and inner dimensions of boxes. Outer dimensions are the dimensions of the package. Inner dimensions are the dimensions of the product.

For a heavy packing box, enter the weight of the box so that it is added to the product weight, to calculate shipping rates. You can tick the respective Letter checkbox if you want to mail letters. Based on your requirement, you can add or remove box dimensions.

Pack items based on weight: Enter the package’s maximum weight limit. The weight of all the cart items is added together, and the products are packed in the box(es) with the maximum weight limit and provided to the API to retrieve rates.

Pack items based on weight ShipEngine

You can also choose to pack heavier items first, lighter items first, or pack solely by weight.

Click the Save Changes button.


Now let’s have a look at our WooCommerce cart page to see how the modifications have been implemented.

The following screenshot shows Domestics rates and services returned by ShipEngine shipping carriers.

Domestics rates and services returned by ELEX ShipEngine

The International rates and services returned by EasyPost shipping carriers will be displayed as shown in the screenshot below.

International rates and services returned by EasyPost

Label Generation

Move to your WooCommerce admin order page to generate shipping labels once your clients have placed a purchase.

With the help of an example, learn how to generate shipping labels.

Here, the customer has chosen First Overnight by FedEx as the shipping option to place the order.

Label Generation ELEX Shipengine

Go to WooCommerce > Orders and choose the order to be processed for shipment and label generation.

Check the screenshot:

shipment and label generation Shipengine

Click the Generate Packages button.

You can configure custom services for each package using the plugin. Additional packages can also be added.

After clicking the Generate Packages button, you will have the option to replace the service selected by the customer with a preferred service from your side.

Go to the Generate Shipping Label By Using ShipEngine API section and click on the button with Blue lines. Check the screenshot:

Generate Shipping Label By Using ShipEngine API

A list of services will be displayed as preferred services from which you can choose one before proceeding with the shipment. You can choose any service convenient for you by changing the service chosen by the customers before generating labels and shipment.

Click the Create Shipment button.

When the label is created, you will also receive the shipment tracking ID. Next, click the Print Label button to print the shipping label.

Print Label Shipengine

You can notice the ShipEngine Shipment Tracking meta box on the right. You can use the tracking ID to track the shipments.

The label will be displayed after you click the Print Label option, and you can download it from there. Take a look at the generated label in the screenshot below:

generated label shipengine

The label was created using the service from the preferred service option.

International Shipping Documents

Documents for International shipments consist of the International shipping label, Certificate of Origin Form, and Commercial Invoice.

International Shipping Documents

The below screenshot shows a sample International shipping label.

International shipping label

A sample Certificate of Origin Form for international shipments is shown in the screenshot below.

Certificate of Origin

A sample Commercial Invoice is shown in the screenshot below.

Commercial Invoice shipengine

You must be logged in to post a comment.