A build-to-order Odoo carrier connector that wires Canada Post into your delivery workflow for live Sell Online API rates, contract and non-contract pricing, label and manifest generation, tracking sync, and international customs forms. ECOSIRE scopes, builds, installs and supports it for your Odoo 17, 18 or 19 database. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $199.00 USD; request a quote for a scoped proposal.

A build-to-order Odoo carrier connector that wires Canada Post into your delivery workflow for live Sell Online API rates, contract and non-contract pricing, label and manifest generation, tracking sync, and international customs forms. ECOSIRE scopes, builds, installs and supports it for your Odoo 17, 18 or 19 database.
Şimdi ödeme yok. Bu, ekibimize bir teklif talebi gönderir — fiyat ve sonraki adımlarla e-posta ile dönüş yapacağız.
Canadian retailers running Odoo hit the same wall at checkout and in the warehouse. Odoo ships with generic delivery.carrier methods that are fixed-price or rule-based, but nothing that speaks to Canada Post. Staff end up copying weights and postal codes into the Canada Post website, keying rates back into sales orders by hand, printing labels from a separate portal, and reconciling tracking numbers across two systems. Odoo Enterprise bundles a handful of built-in third-party carrier integrations, but Canada Post is not one of them, and its contract pricing, oversize rules and customs paperwork are not something a static shipping rule can model. This is exactly where native Odoo runs out of road.
Registers Canada Post as a native `delivery.carrier` with a `canadapost` `delivery_type` and the full set of carrier hook methods (rate, send, tracking link, cancel)
Live rating via the Canada Post Sell Online / REST API returning priced service options (Regular, Expedited, Xpresspost, Priority) at checkout and on delivery orders
Automatic contract pricing when a contract/customer number is configured, with clean fallback to non-contract commercial rates
Shipment creation that stores the returned label (PDF and ZPL) as an `ir.attachment` on the `stock.picking` and writes the tracking PIN to `carrier_tracking_ref`
End-of-day manifest generation (transmit shipments / close manifest) with a QWeb report and the Canada Post manifest artifact attached to the batch
Scheduled `ir.cron` tracking sync that polls delivery status and posts events to the picking chatter, updating the delivery state
We build a dedicated carrier connector that registers Canada Post as a first-class delivery method inside Odoo. The module extends delivery.carrier with a canadapost value on the delivery_type selection and implements the standard carrier hook methods (canadapost_rate_shipment, canadapost_send_shipping, canadapost_get_tracking_link, canadapost_cancel_shipment) so it plugs into sales orders, delivery orders and the eCommerce checkout the way any Odoo carrier does. Behind those hooks sits a thin service layer that calls the Canada Post Sell Online / REST API over HTTPS, parses the XML price-quote and shipment responses, and maps them onto Odoo records. Credentials (API key/secret, customer number, contract number and paid-by-customer number) live on encrypted config fields with a per-carrier test/production toggle rather than in code.
Rating is computed in real time. When a customer picks Canada Post at checkout or a warehouse user rates a delivery order, we build the request from the package dimensions and weight on stock.quant.package / stock.move.line, the origin postal code from the warehouse address, and the destination from res.partner. The connector returns available services (Regular Parcel, Expedited Parcel, Xpresspost, Priority, and US/international equivalents) with priced options; contract pricing is used automatically when a contract number is configured, and non-contract commercial rates otherwise. Label generation calls the Create Shipment endpoint, stores the returned PDF/ZPL label as an ir.attachment on the picking, writes the tracking PIN back to carrier_tracking_ref, and exposes the Canada Post tracking URL. A scheduled ir.cron job polls tracking status and posts delivery events to the picking chatter, and end-of-day manifests (transmit shipments / close manifest) are generated as a QWeb-rendered report plus the carrier manifest artifact.
For cross-border orders we generate the customs declaration required by Canada Post — item descriptions, HS tariff codes, country of origin, declared value and currency — sourced from product fields and the sale order lines, so US and international shipments clear without re-keying. All access is governed by ir.model.access.csv and record rules so warehouse users can rate and ship while only managers edit carrier credentials, and every API call is logged for support and audit.
Because this is build-to-order, nothing ships blind. We start with a scoping call to confirm your services, contract vs non-contract pricing, package profiles, multi-warehouse origins and customs needs, then build against Odoo 17.0, 18.0 or 19.0 (Community or Enterprise — we note where an Enterprise-only feature such as advanced shipping connectors overlaps). You get the work validated on a staging database with your own Canada Post developer credentials before we cut over to production. Typical delivery is 2 to 4 weeks from confirmed scope.
Runs Odoo `website_sale` and needs shoppers to see accurate, live Canada Post rates at checkout instead of flat-rate guesses that erode margin or scare buyers away.
Ships dozens to hundreds of parcels a day and wants one-click label printing, end-of-day manifests and automatic tracking sync directly on the Odoo delivery order, with no second portal.
Sends parcels to the US and internationally and needs Canada Post customs declarations generated from product HS codes and declared values, so shipments clear without manual re-keying.
Owns the Odoo database and wants a maintainable module with proper access rules, encrypted credentials, a test/production toggle and a git handover — not a fragile one-off script.
Lisansı ecosire.com adresinden satın alın ve hesap kontrol panelinizden Canada Post Shipping Connector for Odoo modülünün ZIP dosyasını indirin.
ZIP'i sunucudaki Odoo özel eklentiler klasörünüze çıkarın (veya Uygulamalar > Odoo.sh / runbot'taki dosyadan yükle yoluyla yükleyin).
Geliştirici Modunu etkinleştirin, Uygulamalar'ı açın, Uygulama Listesini Güncelle'ye tıklayın, Canada Post Shipping Connector for Odoo'i arayın ve Yükle'ye basın.
Yeni menüyü açın, ECOSIRE lisans anahtarınızı yapıştırın, tüm harici kimlik bilgilerini (Shopify, Amazon, Stripe vb.) bağlayın ve kaydedin.
Yerleşik bağlantı testini çalıştırın, ilk 10 kaydınızı senkronize edin ve yinelenen cronu planlayın. Herhangi bir sorun olursa desteğe başvurun.
| Kriter | ECOSIRE | Özel Yapı | Rakip | Odoo Yerlisi |
|---|---|---|---|---|
| Canada Post live rating | Real-time Sell Online API rates on order and at checkout | Possible but you build and maintain the API layer | Often present but generic, limited service coverage | |
| Contract pricing | Automatic contract rates when a contract number is set | Only if you code the contract flow yourself | Sometimes; frequently non-contract only | |
| Labels and manifests | PDF/ZPL labels on the picking plus end-of-day manifests | Build label and manifest handling from scratch | Basic labels; manifest support varies | |
| Tracking sync | Scheduled `ir.cron` polling posts events to chatter | You design and schedule the polling job | Tracking link only in many cases | |
| Customs for international | Declarations from HS codes and declared value | Manual mapping and testing needed | Often absent or partial | |
| Fit to your Odoo version | Built for your 17/18/19, Community or Enterprise | Depends entirely on your developer | Version support lags; upgrades may break | |
| Support and ownership | Post-go-live support plus full git repo handover | You own all maintenance | Vendor SLA varies; usually no source access | |
| Delivery model | Build-to-order, scoped and UAT'd on staging, 2-4 weeks | Long in-house build and QA cycle | Instant install but generic, self-configured |
This is a build-to-order module, so typical delivery is 2 to 4 weeks from confirmed scope. The exact timeline depends on the services you use, whether you need contract pricing and cross-border customs, and how many warehouses ship. We confirm dates on the scoping call before any build starts.
No. ECOSIRE builds, installs and supports this connector specifically for your Odoo database. There is no instant download — you request a quotation, we scope it, then we build against your version and your Canada Post account.
We build for Odoo 17.0, 18.0 and 19.0, on both Community and Enterprise. The connector uses the standard `delivery.carrier` framework so it works on either edition; where an Enterprise-only feature overlaps, we note it during scoping.
Yes. You provide a Canada Post business account with Sell Online / Developer Program API access — API key/secret, customer number and, if applicable, a contract number. We configure test credentials for UAT on staging and switch to production credentials at cutover.
If you configure a contract/customer number, the connector requests your negotiated contract rates automatically. Without one, it returns non-contract commercial rates. Both paths use the same live rating call, so what customers and staff see always matches what Canada Post will bill.
Every build includes a defined post-go-live support window for defect fixes and adjustments. Because you receive the full git repository, your team or another partner can maintain it afterward, and we can quote ongoing support or version upgrades (for example moving from Odoo 18 to 19) separately.
Yes. For cross-border orders the connector builds the Canada Post customs declaration from your product HS codes, country of origin, declared value and currency on the sale order lines, so US and international parcels ship with the required documentation without manual re-entry.
A build-to-order Odoo carrier connector that wires Canada Post into your delivery workflow for live Sell Online API rates, contract and non-contract pricing, label and manifest generation, tracking sync, and international customs forms. ECOSIRE scopes, builds, installs and supports it for your Odoo 17, 18 or 19 database.