Canada Post Shipping

Web Services Version For Magento Commerce


This module interfaces to that new Canada post shipping service allowing you to add a Canada Post Shipping Method to your Magento Commerce store front.

It offers the following features

  • Storage of sellonline information
  • Easy setup process
  • Easy configuration / setup process
  • Ability to define containers, assign a cost and weight per container
  • Ability to ship products as individual items if they do not fit into specified containers
  • An intelligent packing algorithm to quickly pack items inside of containers.
  • Ability to limit shipping services.
  • Ability to specify free shipping service and price.

Configurable language English / French to show shipping details (front end only).


To use this module you need to first signup for the venture one program on the canada post website

Prepurchase Steps

  1. You can do so online by navigating to here: (Click the SIGN IN link at the top right of the page)
  2. Once signed up you need to get your API keys, go to the menu bar choose Programs, then Developer and sign in.
  3. You API keys are listed at the top. Your customer number is listed under your profile (click My Profile” to see it.

  4. Now add 3 attributes to the default attribute set “package_width” “package_height” “package_depth” (required integer should be in centimeters! )

  5. Add all these attributes to the default attribute set (You may also apply them to existing attribute sets)

  6. Enter values for all products (except your configurable products) you can add to the cart , your weight may be in a different weight unit of measure but it must be convertible to kilograms

  7. Ensure that your PHP supports SOAP, your webhost provider should be able to answer this for you or you can use echo phpinfo(); to check

Installation of Module

  1. Follow this link to pay for and download the module (use a valid email address to receive updates for a year).
  2. Unpack the file
  3. Copy the “app” folder into your magento commerce installation folder.
  4. Log into the administrator section of your website.
  5. Choose System -> Cache Management
  6. (Version 1.5 or newer) Click “Flush Magento Cache”, then Select “All” and choose “Refresh” action
  7. Choose System -> Configuration from the top menu
  8. Click on Shipping Methods (left side)
  9. Click on “Canada Post Pro Eshipping” Shipping method
  10. Enter in your API Keys, customer number (See step 3
  11. Enter in your boxes, they should be in the format of {Max container weight}kg,{length}x{width}x{height}x{box weight]kg${extra cost}. For example for a box that holds 5kg of items, weighs .2kg, size is 20x12x15 (in centimeters) and costs $2 to pack and purchase you would enter. 5kg20x12x15x0.2kg$2.00,
  12. You may enter as many boxes as you like just separate them by a comma (you can have new lines between each box as well.
  13. Set Production Mode to “yes” to receive accurate quotes.
  14. Click Save Config.
  15. Click on Shipping Settings (left side).
  16. Enter in store address. This will be used for the “from” address
  17. Click on General (left side)
  18. Choose locale you want the module to use. Check to ensure it is working. Module configuration options

Configuration Options


Option Values (* required) Description
Enabled Yes / No Enabled / Disable module
Sort Order (Numeric) Specify order of shipping methods
Title String Title of shipping method
Show Method if Not Available Yes / No as stated
Displayed Error Message (Text) as Stated
Canada Post Customer Number (text) Given from canada post
API Development Username (text) Given from canada post
API Development Password (text)* Given from canada post
API Production Username (text) Given from canada post
API Production Password (text) Given from canada post
Ship From Postal Code (text) Leave blank to use the stores postal code from “Shipping Settings”
Production Mode (yes / no) If yes then quotes are returned in production mode
Max Items to Quote On (number) If specified then if the order exceeds the maximum number of items no quotes are returned.
Shipping Containers (text) shipping containers
{max weight in box}kg{length}x{width}x{height}x{box weight}kg${cost}
comma delimited each group like :
Dimensional Attribute data (text) Enter in the attribute to check and possible dimensional data like the following :

Multiple “mysize attribute” values are allowed, dimensional data should will be converted according to size multiplier, it does not matter the order of the dimensional data. just that each measurement is seperated by an x
Shipping insurance for full replacement value (yes / no) Add shipping insurance for item price
Allowed Methods (multi-select) Choose allowed shipping methods
Free Method (select) Choose free shipping method
Free Shipping with minimum order amount (yes / no) Choose yes / no to enable free shipping
Minimum order amount for free shipping (text) The minimum price of the order in order to enable free shipping
Ship as bundled (yes / no) When shipping bundled items use bundle for dimensional information
Package Description (text) as stated
Ship to Applicable Countries (text) as stated
Ship to Specific Countries (text) as stated
Weight Dimensions
Weight multiplier (number) Multiple item weight by this amount to achieve weight in KG’s
Size multiplier (number) Multiple item weight by this amount to achieve the dimension in CM
Linear Dimensions
Width Attribute (text)* The width attribute name
Default width (number) Leave blank to not use, if width is undefined for the product it will use this width
Length Attribute (text)* The length attribute name
Default Length (number) Leave blank to not use, if length is undefined for the product it will use this length
Height Attribute (text)* The height attribute name
Default Height (number) Leave blank to not use, if length is undefined for the product it will use this length
Other Configuration Details
Log Debug (yes / no) Debug request and response information into logging file unde var/logs/ds_canadapost.log
JSON in description (yes / no) Store box, request, response as JSON string inside method description field in the table sales_flat_quote_shipping_rate.method_description
Handling Fees
Calculate Handling Fee (choose) as stated
Handling Applied (number) as stated
Handling fee (number) as stated
Handling Fee Fixed (number) A fixed handling fee applied on top of the other fees here
Minimum Shipping Cost (number) Minimum amount to charge for shipping
Days for handling (number) Number of days before item is sent to canada post to be shipped