Purolator Canada
Purolator Canada offers domestic and international shipping services to accounts shipping from Canada.
This guide provides developers with the details needed to build Purolator Canada shipping capabilities into your ShipStation API workflows.
If you are using or plan to use the Purolator services included with ShipStation API, rather than connecting your own Purolator Canada account, see our Purolator from ShipStation guide.
Requirements
| Property | Type | Required? | Description |
|---|---|---|---|
nickname | string | required | Used to identify your account in ShipStation API |
account_number | string | required | Your Purolator account number |
activation_key | string | required | Your Purolator account activation key |
Shipping Requirements
- Maximum shipment weight is 150 lbs. Shipments greater than 70 lbs will automatically be considered to require Special Handling and receive an $18.00 surcharge.
Connect Account
You can connect a Purolator Canada account using the POST method to the /v1/connections/carriers/ endpoint, or via the ShipStation API Dashboard.
Connect Your Purolator Account to ShipEngine
To connect your Purolator account to ShipEngine, you'll first need to obtain your activation key from Purolator. You can then complete the connection process in ShipEngine.
Obtain a Purolator Activation Key
- Visit the Purolator Developer's API Portal.
- Click Register and log in to Purolator.
- Go to the API Portal on the MyPurolator home page.

- Click Activation Keys on the API Portal dashboard. Then click Request Activation Key.

- Select ShipStation / ShipEngine as the appropriate company from the Who is your eCommerce solution provider? drop-down menu. Then click Next.
)
Who is your eCommerce solution provider?_ drop-down menu
- Complete the Purolator Business Account information as requested, then click Next.
- Complete the fields for Where will your Purolator shipments be originating from?, then accept the Terms and Agreements and click Next.
Click Copy Key and store the key in a safe, secure place. Once completed, the key will show on screen and be available for your API Management.

Check your email. You should have a Purolator confirmation email from [email protected]_. Click the link within the email to open a page to Obtain an Activation Key.
Open a new tab or window and log in to your ShipStation API account.
Connect via Endpoint
carrier_name: purolator_ca
POST /v1/connections/carriers/:carrier_name
Sample request:
A successful connection will return a response with the carrier_id that you'll use for any requests for this account going forward.
Connect via Dashboard
Steps to connect via the dashboard are available in our ShipStation API Help Center's Purolator page.
Rates
Purolator Canada supports rate shopping with ShipStation API.
Service Details
The available services for Purolator Canada appear below. Please note that carriers may update their available services at any time. To ensure you are always using valid services, you can use the list carrier services endpoint at any time.
Domestic Services
| Service | API Code |
|---|---|
| Purolator Express 9 AM | purolator_express_9am |
| Purolator Express 10:30 AM | purolator_express_1030am |
| Purolator Express | purolator_express |
| Purolator Express Evening | purolator_express_evening |
| Purolator Ground | purolator_ground |
| Purolator Ground 9AM | purolator_ground9am |
| Purolator Ground 10:30AM | purolator_ground1030am |
| Purolator Ground Evening | purolator_groundevening |
| Purolator Ground Distribution | purolator_ground_distribution |
International Services
| Service | API Code |
|---|---|
| Purolator Express U.S. | purolator_express_us |
| Purolator Express U.S. 9AM | purolator_express_us9am |
| Purolator Express U.S. 10:30AM | purolator_express_us1030am |
| Purolator Express U.S. 12:00 | purolator_express_us1200 |
| Purolator Ground U.S. | purolator_groundus |
| Purolator Express International | purolator_express_international |
| Purolator Express International 9AM | purolator_express_international_9am |
| Purolator Express International 10:30 AM | purolator_express_international_1030am |
| Purolator Express International 12:00 | purolator_express_international_1200 |
Return Services
Purolator Canada supports creating returns with all domestic services.
Review the Return Shipping Labels page for details on creating return labels with ShipStation API.
Packages
The following carrier package types are available for Purolator Canada services:
| Name | API Code | Package Attributes |
|---|---|---|
| Express Envelope | express_envelope | International, Domestic |
| Express Pack | express_pack | International, Domestic |
| Express Box | express_box | International, Domestic |
| Package | package | International, Domestic |
Adding Shipment Insurance
Purolator Canada supports adding carrier insurance to shipments created with ShipStation API. Review our insurance page for details on adding insurance to your shipments.
Label Support
- Label sizes: 4" x 6", 4" x 8"
- Label formats: PDF
- Supports unicode characters: unknown
Label Reference Fields
Purolator Canada supports adding custom label messages
- Label Message 1 = Reference field 1
- Label Message 2 = Reference field 2
- Label Message 3 = Reference field 3
Label messages are limited to 35 characters. If exceeded, your request will return an error: The creator of this fault did not specify a Reason.
Multi-Package Labels
Purolator Canada supports creating multi-package shipments.
See our Multi-Package Shipping page for details about creating multi-package labels.
Label Branding
Purolator Canada does not support label branding.
Voiding Labels
Purolator Canada supports voiding labels with ShipStation API. Voiding must happen on the same day the label is created. Labels created on past dates cannot be voided. You can void a shipment before end-of-day to stop it from being billed.
Labels cannot be voided after being manifested. Purolator auto-manifests daily, and labels are charged on the manifest.
See our Void a Label page for details about voiding labels with ShipStation API.
Paperless Labels
Purolator Canada does not support paperless labels.
Customs Declarations
You can download customs declarations from the forms_download object in the label response.
Delivery Confirmation
| Confirmation Type | API Code | Description |
|---|---|---|
| No confirmation | none | No confirmation requested. |
| Origin signature not required | delivery | Delivery confirmation is requested. |
| Residential signature domestic | signature | Signature is required for the shipment to be delivered. This signature may be a neighbor, building manager, or the recipient can authorize the release of the package (without being present). |
| Adult signature required | adult_signature | An adult signature is required for the shipment to be delivered. |
| Residential signature Intl | direct_signature | A signature of somebody at the address is required. |
See our Delivery Confirmation page for more details about using the confirmation property.
Advanced Options
Purolator Canada supports certain advanced options, which you can add to the shipment object when creating a shipment or label.
| Option | Type | Default Value | Description |
|---|---|---|---|
additional_handling | boolean | null | Indicates the package requires special handling. |
bill_to_party | string | null | Determines which party is paying for shipping costs. This field must be used in conjunction with the bill_to_country_code, bill_to_postal_code, and bill_to_account fields. |
Available values: recipient, third_party, null (shipping costs will be billed to the connected carrier account) | |||
dangerous_goods | boolean | false | Indicates if dangerous goods are present in the shipment. Please note that some carriers may also require additional dangerous goods properties added to the packages.products array. |
delivered_duty_paid | boolean | false | Indicates the shipment is DDP (that is, the shipper is paying the duties/taxes for the shipment rather than the recipient). |
non_machinable | boolean | false | Indicates that the package cannot be processed through sorting machines. |
saturday_delivery | boolean | false | Indicates that the carrier should charge for delivery on Saturday for services that do not otherwise include Saturday Delivery. |
To ensure you always have the most up-to-date information about a carrier's advanced options, use the list carrier options call.
Dangerous Goods
Set the dangerous_goods property in the advanced_options object to true.
See our Dangerous Goods page for more details about shipping dangerous goods with ShipStation API.
Manifests
Purolator Canada manifests your shipments automatically at the end of the day, so there is no need to manually manifests page shipments with ShipStation API. You can download and print the manifest if needed.
Scheduling Pickups
Purolator Canada does not support scheduling pickups using ShipStation API.
Service Points (PUDO)
Purolator Canada does not support shipping to service points.
Tracking
ShipStation API's integration with Purolator Canada supports receiving tracking updates. Review our ​Track a Package guides​​ for details on tracking with the ShipStation API.
Disconnecting Your Purolator Canada Account
See the Disconnect section in our Delete a Carrier page for the process of deleting or disconnecting a carrier from ShipStation API.