OCA / delivery-carrier 🇪🇸🇵🇹 AGPL-3.0

CTT Express Connector

Integrate CTT Express (Iberic Web Services API) directly into Odoo. The module manages the complete shipment lifecycle: labels in multiple formats (Single, MULTI3, MULTI4), manifests in Excel or PDF, scheduled pickups with confirmation code, and real-time tracking — all without leaving Odoo. Coverage for Spain, Portugal and Andorra.

delivery_cttexpress
Odoo 12.0 → 18.0
CTT Express (Tourline)
🇪🇸 Spain · 🇵🇹 Portugal · Andorra
CTT Express
delivery_cttexpress
AGPL-3.0
Versions12 → 18
APISOAP (zeep)
LabelsSINGLE/MULTI
CoverageES · PT · AND
Workflow
How does it work in your day-to-day?

Once deployed, the shipping process with CTT Express is fully integrated into Odoo. Here is the step-by-step flow:

1
Configure the shipping method

In Inventory → Shipping Methods you create a new carrier with CTT Express as the provider and enter your credentials for CTT's Iberic Web Services (formerly Tourline Express).

2
Validate the delivery order

When you confirm the delivery, the module contacts the CTT SOAP API, generates the shipment code and retrieves the label in the format you configured (Single, MULTI1, MULTI3 or MULTI4 for multi-package).

3
Print the label and request pickup

The label is attached to the delivery order for direct printing. From Odoo you can also request a pickup at the origin address and obtain the CTT Express confirmation code.

4
Generate the manifest

At the end of the day, generate the delivery manifest in Excel or PDF format directly from Odoo to hand to the CTT Express courier, without accessing the carrier's web portal.

Features
Everything included in the module

Features verified directly in the OCA repository and in real FlexigoTech deployments.

Multi-format labels

CTT Express label generation in Single, MULTI1, MULTI3 and MULTI4 formats. The MULTI format lets you print several labels on a single A4 sheet, cutting down paper use in high-volume operations.

Single · MULTI3 · MULTI4
Excel and PDF manifests

Generate delivery manifests directly from Odoo in Excel or PDF format. Essential for the daily handover to the CTT Express courier, with no need to log into the carrier's web portal.

From Odoo
Pickups with confirmation code

Request scheduled pickups at the sender's address directly from Odoo. CTT Express returns a confirmation code that is logged in the delivery order's chatter for tracking purposes.

Confirmation code
Real-time tracking

Automatic tracking of the shipment status (in transit, delivered, incident) updated directly on Odoo's stock.picking via OCA's delivery_state module.

No CTT portal needed
Label regeneration

If the delivery order's attachments are accidentally deleted, the module lets you regenerate the CTT Express labels without needing to cancel and re-register the shipment through the API.

Incident-free recovery
Cancellation and advanced settings

Cancel shipments straight from the delivery order without accessing the CTT portal. Configure the printer offset to adjust label print positioning for your hardware, and enable the test environment to validate before going live.

Test · Production

Technical requirements

  • Odoo 12.0 to 18.0 — Compatible with all major active versions.
  • Python: zeep — SOAP library required to communicate with CTT Express Web Services (iberws.tourlineexpress.com).
  • Dependent OCA modules: delivery_package_number, delivery_price_method, delivery_state (OCA/delivery-carrier).
  • CTT credentials: Username and password for CTT Express's Iberic Web Services.
  • Test environment: Port 8686 (iberws.tourlineexpress.com). Production: Port 8700.
  • No rate calculation: The CTT API doesn't return prices. delivery_price_method is used to define rates within Odoo.

Configuration in Odoo

  • Inventory → Settings → Shipping Methods → New
  • Provider: CTT Express
  • Username and password for the Iberic Web Services portal
  • Select your preferred label format
  • Set the printer offset if necessary
  • Enable "Test environment" for pre-production testing
# Python dependency (requirements.txt)
zeep>=4.0.0
# CTT Express Endpoints
# Test: iberws.tourlineexpress.com:8686
# Prod: iberws.tourlineexpress.com:8700
Odoo Compatibility
Odoo 12.0 13.0 14.0 15.0 16.0 17.0 18.0 ★ current

FlexigoTech actively maintains versions 17 and 18. For older versions we perform a prior compatibility audit.

Geographic coverage
Spain, Portugal and Andorra: CTT Express operates across the Iberian Peninsula with its own network in Spain and Portugal, also covering shipments to Andorra as a destination. Formerly known as Tourline Express, it is the Iberian brand of the CTT group (Correios de Portugal).

AGPL-3.0 License — Open Source

This module is developed and maintained by the OCA community under the AGPL-3.0 license, with support funded by CTT Express. The source code is public and auditable, never locked to a single vendor. FlexigoTech deploys, configures and maintains it professionally.

What does the AGPL mean for your business? Full guide →

View code on GitHub OCA

Do you use CTT Express and run Odoo?

FlexigoTech installs, configures and adapts this connector to your real operations. Labels, manifests, pickups and tracking working from day one.

Request implementation

No commitment · Response in under 24h · Fixed-price quote

How can we help you?

Specialist team · Responds in <1 day

Schedule a demo Send us a WhatsApp Send us a message