跳至主要内容
产品详细信息以英文显示。翻译即将推出。
Canada Post Shipping Connector for Odoo — A build-to-order Odoo carrier connector that wires Canada Post into your delivery w — 1/1示意预览

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.

什么是 Canada Post Shipping Connector for Odoo?

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 $999.00 USD; request a quote for a scoped proposal.

核心功能

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
International and US customs declarations built from product HS codes, country of origin, declared value and currency on the sale order lines
Package-aware requests driven by `stock.quant.package` dimensions and `stock.move.line` weights, with oversize and dimensional-weight handling
Multi-warehouse origin support: origin postal code resolved from each `stock.warehouse` address for correct regional rates
Encrypted carrier credential fields (API key/secret, customer number, contract number, paid-by-customer) with a per-carrier test/production endpoint toggle
Security enforced via `ir.model.access.csv` plus record rules: warehouse users rate and ship, managers manage credentials
eCommerce checkout integration so `website_sale` shoppers see live Canada Post rates and pick a service before payment
Return-label support and shipment cancellation (void) that reverses the tracking reference and label on the picking
Structured API request/response logging with retry and clear user-facing error surfacing for rejected addresses or API faults
Exposed for automation and headless use via the Odoo XML-RPC/JSON-RPC API so external systems can trigger rating and label creation

按需定制,全程代劳

无需自行搭建——由 ECOSIRE 构建、安装并提供支持的可用应用。

  1. 1

    您下单

    以一次性构建价格开始。我们在启动时与您共同确定范围。

  2. 2

    我们构建与安装

    ECOSIRE 在您的 Odoo 上构建、配置并安装。

  3. 3

    上线 + 支持

    约一个工作周内上线,并包含两周上线支持。我们交付的代码中的缺陷免费修复。

技术规格

Odoo 兼容性
Odoo 17, Odoo 18, Odoo 19
版本
企业版和社区版
许可证
许可证需要确认
Python 要求
Python 3.10+
数据库
PostgreSQL 12+

关于此产品

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.

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 one working week from confirmed scope.

你得到什么

  • Installable Odoo module source code targeting your exact version (17.0, 18.0 or 19.0) with a clean `__manifest__.py` and dependency declarations
  • Installation and configuration on your staging environment, including carrier setup, credential entry and service mapping
  • Technical documentation: model extensions, API service layer, cron jobs, security rules and configuration reference
  • User guide plus a live training session for warehouse and sales staff on rating, labelling, manifests and tracking
  • UAT on a staging database using your own Canada Post developer credentials, with a documented rollback plan before production cutover
  • A defined post-go-live support window for defect fixes and adjustments after launch
  • Git repository handover with full commit history so your team or another partner can maintain and extend the module
  • Source-level configuration notes covering contract vs non-contract pricing and customs field mapping for your product catalogue

这是给谁的

Canadian eCommerce retailer

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.

Warehouse / fulfilment manager

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.

Cross-border seller shipping to the US

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.

Odoo administrator / operations lead

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.

Canada Post Shipping Connector for Odoo 如何比较

标准伊科西尔定制建造竞争对手Odoo 原生
Canada Post live ratingReal-time Sell Online API rates on order and at checkoutPossible but you build and maintain the API layerOften present but generic, limited service coverageNot supported — only fixed or rule-based methods
Contract pricingAutomatic contract rates when a contract number is setOnly if you code the contract flow yourselfSometimes; frequently non-contract onlyNone
Labels and manifestsPDF/ZPL labels on the picking plus end-of-day manifestsBuild label and manifest handling from scratchBasic labels; manifest support variesNo carrier label generation
Tracking syncScheduled `ir.cron` polling posts events to chatterYou design and schedule the polling jobTracking link only in many casesManual tracking reference field only
Customs for internationalDeclarations from HS codes and declared valueManual mapping and testing neededOften absent or partialNo customs handling
Fit to your Odoo versionBuilt for your 17/18/19, Community or EnterpriseDepends entirely on your developerVersion support lags; upgrades may breakN/A
Support and ownershipPost-go-live support plus full git repo handoverYou own all maintenanceVendor SLA varies; usually no source accessNo dedicated support
Delivery modelBuild-to-order, scoped and UAT'd on staging, one working weekLong in-house build and QA cycleInstant install but generic, self-configuredAlready in the box, but does not do the job

关于Canada Post Shipping Connector的常见问题

How long does delivery take?

This is a build-to-order module, so typical delivery is one working week 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.

Is this an existing app I can download instantly from apps.odoo.com?

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.

Which Odoo versions and editions do you support?

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.

Do I need a Canada Post account and API credentials?

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.

How does contract versus non-contract pricing work?

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.

What about support and updates after go-live?

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.

Can it handle US and international shipments with customs forms?

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.

申请报价

Canada Post Shipping Connector

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.

  • 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`

申请报价

告诉我们您对 Canada Post Shipping Connector 的需求,我们将发送价格、许可选项和量身定制的方案,通常在一个工作日内。

现在无需付款。此操作会向我们的团队发送报价请求——我们会通过邮件跟进价格和后续步骤。