How to Create Labels with EasyPost

EasyPost connects to your shipping accounts (USPS, UPS, FedEx, etc.) so you can create shipping and return labels at discounted rates. This guide provides information on how to work with your EasyPost account from within Order Desk to create labels.

For information on how to enable and set up the EasyPost integration, visit the EasyPost Overview & Setup guide.


EasyPost Label Creator
Printing a Label
Voiding a Label
Sending Labels to Dropshippers
Sending Return Labels to Customers
FedEx Setup
Customize Shipping Defaults

EasyPost Label Creator

When the EasyPost integration is enabled, an EasyPost label creator will display beneath the product details on every order.

Default fields can be set within your EasyPost integration settings, but you can also edit them directly on each order.

Package Weight

If the weight of the item is added to the item details in the order, it will be added as the Package Weight. Otherwise, add or adjust the package weight before fetching rates for the label to ensure the price options that are returned are using the accurate weight.

Missing but required: product weight error

When creating labels for international orders, if you get an error that says "Missing but required: product weight", ensure that both item weight and the Package Weight are accurate.

This error is caused when the customs form is being created, which pulls the weight from the item itself rather than the label creator.

Signature Settings

The default signature setting can be set in the EasyPost integration settings. If you need to override the default on specific orders, you can make that adjustment in the label creator.

EasyPost Insurance

Select the EasyPost Insurance box when submitting your shipment information to use EasyPost insurance. The existing item values from the order will be used to determine the insurance price.

For more information, read about the  EasyPost Insurance Program.

Return Label

If creating a return label for the order, check the Return Label box before you fetch rates and create the label. 

For more information about return labels, scroll down to the  Sending Return Labels to Customers section of this guide.

Package Type

Choose the package type being used from the package dropdown. If using your own custom packaging leave it set to My Packaging, otherwise choose the specific carrier and package or envelope type so the right rates will be given for your shipment.

If your packaging type belongs to a certain carrier, only rates from that carrier will be returned when rates are fetched.

Package Dimensions

The default dimensions for packages are set in the EasyPost integration settings page but can be edited on each order individually.

Fetch Rates

After selecting the package type and ensuring the weight and dimensions are accurate, click on Fetch Rates to return all available pricing options for your package. 

Select the rate you want and press Create Label. The label will be created and the tracking number added to the order. 

If you need to, you can edit the settings and fetch the rates again before creating the label.


When EasyPost is in Test Mode, it's best not to test on real orders to avoid accidentally sending shipment updates to real customers. You can  manually create a test order with your own email address for testing purposes.

Otherwise, if you want to test on real orders, make sure you temporarily disable any shipment notification rules and any shopping cart settings that will automatically send the tracking details back to the cart so your tests aren't sent to customers as actual shipment notifications.

Printing a Label

When printing a label, a 5.5″ x 8.5″ peel-off label is recommended. Otherwise, print directly to a piece of paper which can be slipped inside of a plastic address pouch on your package. Print in landscape mode and turn off the headers and footers.

If you have a label printer, you can use PrintNode, our simple label printing option, for reliable delivery to your printer.

Voiding a Label

Deleting a shipment from Order Desk will not automatically void a label that has already been created.

If you need to void a label, click on the Tracking Number in the order to pull up the shipment details. Then click on the void button in the shipment details:

When voiding a label, EasyPost has to request a refund from the shipping provider before the refund is applied to your account. Wait a few days to see your refund. If you have any concerns, please contact EasyPost support.

Sending Labels to Dropshippers

If a label has already been created for an order, you can use an email template and a rule to send the label to your dropship vendor.

Follow  these instructions for setting up a dropship email template. In the email template, include this code to add the download link for the label:

{% if order_shipments.0.label_image is defined and ".pdf" in order_shipments.0.label_image %} <a href="{{ order_shipments.0.label_image }}">Shipping Label</a><br>

{% elseif order_shipments.0.label_image is defined %} <a href="{{ order_shipments.0.label_image|e("url") }}">Shipping Label</a><br>

{% endif %}

Sending Return Labels to Customers

When creating return labels, make sure the label type is one your customer will be able to print out from a personal printer.

If you print your labels in EPL format, override the label format by adding EASYPOST_LABEL_FORMAT in the checkout data field of the order that needs a return label. 

Set the value to PNG:

This setting ensures any label created for this order will be in PNG format.

In the EasyPost label creator, select Return Label then fetch rates and create the label like usual.

Add Return Label to Email

If you need to include the return label in an email, use this code in your email template:

Please print the following label for use with this order:<br>
{% for label in order_shipments if 'Return' in label.shipment_method and label.label_image is defined %}
<a href="{{ label.label_image }}">Shipping Label</a><br>
{% endfor %}</p>

When an email template with this code is sent to a customer, a link to the return label will be included. 

To send the email, click on the email icon in the order and select the template from the dropdown:

For more information on setting up and using email templates, see the  How to Work with Email Templates guide.

FedEx Setup

If you are getting an Authentication Failed message when trying to purchase a label, you likely need to be certified by FedEx. 

Here’s the process after a meter number has been assigned:

  1. Contact FedEx and request that a member of the Web Integration Solutions Consultation (WISC) team get in touch with you. That person will be responsible for moving you through the certification process and should be able to provide a “WIS Label Cover Sheet” which you will need to provide with the labels you generate.
  2. Then you will need to generate, print, and scan your own labels for FedEx according to the instructions provided from them.
  3. Once the labels have been approved by FedEx the meter will be enabled in production.


Customize Shipping Defaults

For detailed information on how checkout data is used, see the  How to Work with Checkout Data guide.

If you would like to customize the shipping defaults for a certain type of order, you can set the following checkout data fields on the order:

EASYPOST_WIDTH the default width of the box
EASYPOST_HEIGHT the default height of the box
EASYPOST_LENGTH the default length of the box
EASYPOST_PACKAGING_TYPE the name of the box packaging
EASYPOST_WEIGHT the actual weight of the package
EASYPOST_WEIGHT_ADD add some weight to the package (like box weight)
EASYPOST_SERVICE_LIMIT limit the returned service options
EASYPOST_LABEL_FORMAT can be either PNG, PDF, EPL2 or THERMAL_PDF (overrides default settings)
LABEL_SIZE set the dimensions, e.g.: 4x6
EASYPOST_THIRD_PARTY_ACCOUNT enter a third-party UPS or FedEx account to charge
EASYPOST_THIRD_PARTY_ZIP required if you enter a third party account
EASYPOST_THIRD_PARTY_COUNTRY store's country used by default; set this if it should be something else
EASYPOST_SIGNATURE set the signature requirements on the label. Options are SIGNATURE_REQUIRED, ADULT_SIGNATURE, or NO_SIGNATURE. If using FedEx, you can also set INDIRECT_SIGNATURE
EASYPOST_INSURANCE set value to 1 for insurance to be turned on by default
CARRIER_INSURANCE_AMOUNT set the declared value for FedEx shipments, if different from the order total.
EASYPOST_EELPFC set a custom value for this field on the customs form
EASYPOST_INVOICE_NUM set a custom value for the invoice number field
PO Number enter value; must also set "PO Number" in  Custom Message 1
Set the carrier ID if EasyPost is connected to more than one carrier account and you would like to limit returns to a single account. This will return the rates for the right account, and any errors will be specific to this account.
tax_id or IOSS
Send the IOSS number that you want to be used on the order to EasyPost. If this isn't available, the Importer Tax Number from the EasyPost integration settings will be used as a backup if it exists. If it doesn't exist either, the default IOSS number from the Store Settings will be used instead. Please note that we load the IOSS in the sender's address in EasyPost and not the receiver's address.
reference Adds a reference number for the shipment to the order. If not added, the Source ID will be used instead.

Still need help? Contact Us Contact Us