Delivery CTT Express

Delivery CTT Express


Technical name
Secure dependencies
Delivery CTT Express

Delivery CTT Express

Beta License: AGPL-3 OCA/delivery-carrier Translate me on Weblate Try me on Runbot

CTT Express Iberic Web Services API intration with Odoo. Valid for Portugal and Spain.

Table of contents


This module needs the zeep python library. It depends on the modules delivery_package_number, delivery_price_method and delivery_state that can be found on OCA/delivery-carrier.

The following ports and hosts should be visible from your Odoo deployment:

  • Test:
  • Production:


CTT Express Iberic Web Services API doesn’t provide shipping price calculation methods. So you’ll have to rely on Odoo standard methods selecting them in the field Price method.

To configure your CTT Express services, go to:

  1. Inventory/Sales > Configuration > Delivery methods and create a new one.
  2. Choose CTT Express as provider.
  3. Configure your CTT credentials: contract, agency, customer code, user and password.
  4. Configure your label format:
    • Single: Thermal printer (single label).
    • MULTI1: One label per sheet.
    • MULTI3: Protrait 3 labels per sheet.
    • MULTI4: Landscape 4 labels per sheet.
  5. You can also can configure your printer offset.
  6. Choose you shipping service.

If you wish to configure several services with the same credentials, duplicate the first you made and change the service in the copy.


The shipping codes are generated when a stock picking which carrier is configured for CTT Express as a provider is validated. The label is generated and attached to the document according to the label generation parameters configured before.

In case you accidentally delete the label attachment, you can generate it again clicking on the CTT Express Label button on the top of the picking form.

As usual, to cancel the shipping, go to the Additional Information tab and click on the Cancel delivery action next to the Shipping code field.

To print the shippings manifest between dates, go to:

  1. Inventory > Reports > CTT Express Manifest
  2. In the wizard we can configure the document format (Excel or PDF) and the date to comprehend.
  3. We can filter delivery methods as well in case we handle different CTT accounts.
  4. Click on Get Manifest to gather the requested files.

To make an scheduled shippings pickup request:

  1. Go to the shipping method for which account we want to schedule the pickup and click on the Pickup request button.
  2. In the wizard, select the date and the minimum and maximum pickup hour.
  3. After clicking on the Request pickup button you’ll get a pickup request code that you should keep in case there’s any issue with it.

Known issues / Roadmap

  • The module implements the Iberic Web Services API. Its services are restricted to Spain and Portugal (and Andorra but only as destination). In future API updates extra countries and extra developments could be needed.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.



  • Tecnativa


Other credits

The development of this module has been financially supported by:


This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/delivery-carrier project on GitHub.

You are welcome to contribute. To learn how please visit

0.0 / 5.0
based on 0 ratings

Python dependencies

Package Version Secured
lxml 4.6.1
zeep 3.2.0
This app has automated tests.

Available languages

Language % translated
Spanish / Español