Canada Post Webservice REST Rates

Canada Post Webservice REST Rates
A complete shipping extension for OpenCart 3.x and 4.x that integrates with the Canada Post REST API to provide real-time shipping rates and services.

## Features

- **Real-time Rate Calculation**: Get live shipping rates from Canada Post API
- **Multiple Service Support**: Support for all major Canada Post services including:
- Domestic services (Expedited Parcel, Priority, Xpresspost, etc.)
- USA services (Expedited Parcel USA, Xpresspost USA, etc.)
- International services (Xpresspost International, International Parcel, etc.)
- **Flexible Configuration**: Choose which services to offer to customers
-** English and French Language files**: 2 language options
- **Weight and Dimension Support**: Automatic calculation based on cart contents
- **Display Options**: Show weight, insurance, and delivery time information
- **Handling Fee Support**: Add custom handling fees
- **Tax Integration**: Full tax class support
- **Geo Zone Support**: Restrict to specific geographic zones
- **Test Mode**: Support for Canada Post test environment

## Requirements

- OpenCart 3.x or 4.x
- PHP 7.4 or higher
- cURL extension enabled
- Canada Post API credentials

## Installation

### OpenCart 3.x

1. Copy the contents of the `opencart3` folder to your OpenCart installation root directory
2. Go to Admin → Extensions → Extensions
3. Filter by "Shipping"
4. Find "Canada Post" and click "Install"
5. Click "Edit" to configure the extension

### OpenCart 4.x

1. Copy the contents of the `opencart4` folder to your OpenCart installation root directory
2. Go to Admin → Extensions → Extensions
3. Filter by "Shipping"
4. Find "Canada Post" and click "Install"
5. Click "Edit" to configure the extension

## Configuration

1. **shipping calculations**: determine whether to use volumetric or Linear calcaulations
2. **Lettermail**: Set Lettermail rates
3. **min/max totals**: Set min/max cart total when these rates become active

### API Settings

1. **API Key**: Your Canada Post API key
2. **Username**: Your Canada Post username
3. **Password**: Your Canada Post password
4. **Customer Number**: Your Canada Post customer number
5. **Contract ID**: (Optional) Your contract ID if you have one

### Service Settings

1. **Origin Postal Code**: Your store's postal code
2. **Services**: Select which Canada Post services to offer
3. **Weight Class**: Set to kilograms (recommended)
4. **Length Class**: Set to centimeters (recommended)

### Extra Cost Options

1. **Add Signature**: Include signature costs in rate
2. **Add Insurance**: Include incurance costs in rate

### Display Options

1. **Display Weight**: Show package weight to customers
2. **Display Delivery Time**: Show estimated delivery time
3. **Display Dimentions**: Show item dimentions
3. **Display Errors**: Show any errors from Canada Post API

### Cost Settings

1. **Handling Cost**: Additional handling fee (flat fee or %)(optional)
2. **Tax Class**: Select appropriate tax class
3. **Geo Zone**: Restrict to specific zones (optional)

## Canada Post API Setup

### Getting API Credentials

1. Visit [Canada Post Developer Portal](https://www.canadapost-postescanada.ca/information/app/drc/home?execution=e1s1)
2. Register for a developer account
3. Create a new application
4. Get your API credentials (username, password, customer number)

### API Endpoints

- **Production**: `https://soa-gw.canadapost.ca/rs/ship/price`
- **Test**: `https://ct.soa-gw.canadapost.ca/rs/ship/price`

## Supported Services

### Domestic Services
- DOM.EP - Expedited Parcel
- DOM.PC - Priority
- DOM.XP - Xpresspost
- DOM.XP.CERT - Xpresspost Certified
- DOM.LIB - Library Books

### USA Services
- USA.EP - Expedited Parcel USA
- USA.SP.AIR - Small Packet USA Air
- USA.TP - Tracked Packet USA
- USA.TP.LVM - Tracked Packet USA (LVM)
- USA.XP - Xpresspost USA

### International Services
- INT.XP - Xpresspost International
- INT.IP.AIR - International Parcel Air
- INT.IP.SURF - International Parcel Surface
- INT.SP.AIR - Small Packet International Air
- INT.SP.SURF - Small Packet International Surface
- INT.TP - Tracked Packet International

## Troubleshooting

### Common Issues

1. **API Connection Errors**
- Verify your API credentials
- Check if your server can reach Canada Post servers
- Ensure cURL is enabled

2. **No Rates Returned**
- Verify origin postal code is valid
- Check if selected services are available for the route
- Ensure package dimensions are within limits

3. **Incorrect Rates**
- Verify weight and length class settings
- Check if contract ID is correct (if using)
- Ensure postal codes are in correct format

### Debug Mode

Enable debug logging in your OpenCart configuration to see detailed API requests and responses.




Price
$85.00

  • Developed by OpenCart Community
  • 12 Months Free Support
  • Documentation Included

Rating

Compatibility
3.0.0.0, 3.0.1.0, 3.0.1.1, 3.0.1.2, 3.0.1.3, 3.0.2.0, 3.0.3.0, 3.0.3.1, 3.0.3.2, 3.0.3.3, 3.0.3.5, 3.0.3.6, 3.0.3.7, 3.0.3.8, 3.x.x.x, 3.0.3.9, 3.0.4.0, 3.0.4.1, 4.x.x.x, 4.0.0.0, 4.0.1.0, 4.0.1.1, 4.0.2.0, 4.0.2.1, 4.0.2.2, 4.0.2.3, 4.1.0.0, 4.1.0.1, 4.1.0.2, 4.1.0.3

Last Update
22 Sep 2025

Created
22 Aug 2025
0 Sales
0 Comments
murban
murban
Member since: 25 Dec 2014

View all extensions Get Support