Skip to main content
TCS Courier Connector for Odoo — A build-to-order Odoo integration that connects TCS courier (Pakistan) to your sales and del — 1/1Illustrative preview

A build-to-order Odoo integration that connects TCS courier (Pakistan) to your sales and delivery flow

— booking consignments, printing AWB/load-sheet labels, tracking parcels and reconciling COD directly from Odoo. Built, installed and supported by ECOSIRE.

What is TCS Courier Connector for Odoo?

A build-to-order Odoo integration that connects TCS courier (Pakistan) to your sales and delivery flow — booking consignments, printing AWB/load-sheet labels, tracking parcels and reconciling COD directly from Odoo. Built, installed and supported by ECOSIRE. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

Adds a native `delivery.carrier` provider of type `tcs`, integrating with Odoo's standard Delivery Methods so booking happens from the picking, not a separate portal
Consignment booking via the TCS REST/JSON API on `stock.picking` validation, with the returned CN number and tracking URL written back to custom fields on the picking
City and service-area serviceability validation before booking, so un-deliverable destinations are rejected at the counter with a clear error
QWeb PDF reports for the AWB/airway-bill and the TCS load-sheet, sized for thermal or A5 stationery and populated from live booked data
COD amount carried from the sale order onto the TCS consignment at booking time, with dedicated COD reconciliation fields on the delivery/order
COD remittance reconciliation view to match TCS payouts back to originating sale orders and flag settled vs outstanding amounts
Shipment tracking sync via a scheduled `ir.cron` poll and/or inbound webhook, updating delivery status directly on the picking
Weight, piece-count and package-dimension mapping from Odoo `stock.move`/package data into the TCS booking payload
Multi-company and multi-warehouse aware: TCS credentials and cost centre configurable per `res.company` and per carrier
Secure credential storage on the carrier record with `ir.model.access.csv` and record rules limiting visibility to warehouse/admin groups
Cancel/void consignment support that calls the TCS cancellation endpoint and resets the picking's shipment fields when a booking is reversed
Raw TCS request/response logging per shipment for audit and dispute resolution, with errors surfaced as user-friendly messages
Optional `automated action`/`mail.activity` on booking failures so dispatch is alerted rather than silently missing a shipment
Exposed over Odoo's XML-RPC/JSON-RPC API so external storefronts or warehouse apps can trigger a TCS booking programmatically
Built and tested for Odoo 17.0, 18.0 and 19.0 on both Community and Enterprise, matching your exact running version

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your Odoo.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

Technical Specifications

Odoo Compatibility
Odoo 17, Odoo 18, Odoo 19
Editions
Enterprise & Community
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
PostgreSQL 12+

About this Product

If you ship with TCS across Pakistan, you already know the daily friction: staff re-key every order into the TCS portal, copy consignment numbers back into Odoo by hand, print labels from a separate screen, and reconcile COD collections against a spreadsheet at month-end. Odoo's native stock.picking and the standard "Delivery Methods" (delivery.carrier) framework give you generic shippers and flat/rule-based rates, but there is no TCS provider out of the box — no consignment booking against the TCS API, no city serviceability check, no AWB in the TCS load-sheet format, and no COD amount flowing back to reconciliation. That gap is exactly where a manual, error-prone process creeps in.

ECOSIRE builds a dedicated TCS provider that plugs into Odoo's carrier framework. We add a delivery.carrier of type tcs with its own credential fields (account number, API user/password/token, cost centre) stored on the carrier and, where you have multiple entities, on res.company. When a picking is validated, a book_shipment() implementation calls the TCS consignment-booking endpoint over its JSON/REST API, writes the returned CN/tracking number back onto the stock.picking (custom tcs_consignment_no, tcs_tracking_url fields defined on models.Model with proper ir.model.access.csv grants and record rules so only warehouse users see them), and stores the raw response for audit. City and service-area validation runs before booking so an un-serviceable destination is caught at the counter, not at the TCS hub.

Labelling is handled as a QWeb report: we generate the AWB/airway-bill and the TCS load-sheet as PDFs sized for your thermal or A5 printer, populated from the booked consignment data so what prints always matches what TCS has on record. COD is first-class — the order's COD amount is carried onto the consignment at booking, and we add reconciliation fields plus a view (and optional mail.activity/automated action) so finance can match TCS remittances back to the originating sale order and mark them settled. Tracking updates flow back either by a scheduled ir.cron that polls the TCS tracking endpoint or via an inbound webhook, updating delivery state on the picking so customer-service sees live status without leaving Odoo. Everything is exposed through Odoo's XML-RPC/JSON-RPC API too, so your storefront or a warehouse app can trigger a booking programmatically.

Because this is build-to-order, you are not downloading a generic app and hoping it fits. We start from a short scoping call to confirm your TCS account setup (COD vs non-COD, weight/piece rules, single vs multi-warehouse, Community or Enterprise, and your exact Odoo version — 17.0, 18.0 or 19.0), then build against those requirements, test on a staging copy of your database, and hand over installable source plus a git repository. Typical delivery is one working week from confirmed scope. You get a version-matched module, documentation, a training session for your dispatch and finance teams, and a post-go-live support window — not a black box.

What you get

  • Installable module source code built for your exact Odoo version (17.0, 18.0 or 19.0) and Community/Enterprise edition
  • Installation and configuration on your environment, including TCS credential setup, carrier configuration and serviceability data
  • Technical documentation: models, fields, security rules, cron/webhook setup, API endpoints and configuration reference
  • End-user guide plus a live training session for your dispatch and finance teams
  • UAT on a staging copy of your database with a documented test plan and a rollback plan before production go-live
  • Post-go-live support window for bug fixes and adjustments after launch
  • Git repository handover with full commit history so you own and can extend the code
  • Configured QWeb label/load-sheet report templates matched to your printer stationery

Who this is for

Pakistani retailer shipping COD orders on TCS

Runs an online or multi-branch retail business fulfilling COD parcels daily through TCS. Needs one-click booking from the Odoo sale order, printed AWBs that match TCS records, and clean COD reconciliation instead of end-of-month spreadsheet guesswork.

Distributor with multi-warehouse dispatch

Ships from several warehouses and companies on a single Odoo database. Needs per-company TCS accounts and cost centres, serviceability checks before booking, and live tracking so customer service can answer 'where is my order' without logging into the TCS portal.

Finance/accounts lead reconciling COD remittances

Responsible for matching TCS COD payouts against invoices. Needs COD amounts carried onto each consignment and a reconciliation view that links remittances back to the originating order, flagging what is settled and what is still outstanding.

Odoo administrator or systems integrator

Owns the Odoo instance and wants a clean, upgrade-safe module with proper `ir.model.access.csv` security, documented models, and API access — plus a git handover so the integration can be maintained and extended in-house.

How TCS Courier Connector for Odoo Compares

CriterionECOSIRECustom BuildCompetitorOdoo Native
TCS API bookingNative `delivery.carrier` books consignments on picking validationPossible but you design and maintain the API layer yourselfRarely a true TCS provider; often generic or absentNo TCS provider — manual entry in the TCS portal
AWB / load-sheet labelsQWeb PDF reports sized for your thermal/A5 stationeryBuild and format the QWeb templates from scratchGeneric label if any; seldom TCS load-sheet formatNo courier label — printed separately from TCS
COD reconciliationCOD carried to consignment + reconciliation view for remittancesCustom fields and matching logic built to orderCOD field at best; reconciliation usually missingHandled manually in spreadsheets
Serviceability validationCity/service-area checked before bookingYou source and wire the serviceability dataTypically not validated pre-bookingNone — errors surface only at the TCS hub
Tracking sync`ir.cron` poll and/or webhook updates picking statusCron/webhook designed and maintained by youManual or link-out to TCS siteNo live tracking inside Odoo
Version & edition fitBuilt for your exact 17/18/19, Community or EnterpriseDepends on your team's Odoo depthFixed builds; may lag your versionN/A — no feature to match
Ownership & handoverFull source + git repository handed overYou own it but also own all the effortCompiled/licensed; limited to no sourceN/A
SupportPost-go-live support window + quotable upgradesSelf-supported by your teamVendor ticket queue, variable responseCommunity forums only

Frequently Asked Questions about TCS Courier Connector

How long does delivery take?

This is a build-to-order module. After a short scoping call to confirm your TCS account setup, Odoo version and COD/warehouse requirements, typical delivery is one working week from confirmed scope. We test on a staging copy of your database before any production go-live.

Is this an app I can download and install immediately?

No. It is not an existing apps.odoo.com download. ECOSIRE builds it to match your exact Odoo version and TCS account, installs it, and hands over the source and git repository. You get a version-matched integration rather than a generic package.

Which Odoo versions and editions do you support?

We build for Odoo 17.0, 18.0 and 19.0, on both Community and Enterprise. We confirm your exact running version at scoping and build and test against it, so the module installs cleanly without version-mismatch surprises.

Do you handle COD orders and reconciliation?

Yes. The COD amount is carried from the sale order onto the TCS consignment at booking, and we add reconciliation fields and a view so finance can match TCS remittances back to the originating orders and mark them settled or outstanding.

What TCS access do I need to provide?

You need an active TCS business account with API/booking credentials (account number, API user/password or token, and cost centre). We use those to book consignments, print AWB/load-sheet labels and poll tracking. We confirm exactly what is required during scoping.

What support and updates do I get after go-live?

Every build includes a post-go-live support window for bug fixes and adjustments. Because you receive the full source and git repository, your team can maintain and extend it, and we can quote separately for future TCS API changes or new Odoo-version upgrades.

Can other systems trigger a TCS booking automatically?

Yes. The integration works within Odoo's standard delivery flow and is also reachable over Odoo's XML-RPC/JSON-RPC API, so a storefront, marketplace connector or warehouse app can trigger a booking programmatically instead of a user clicking in the Odoo UI.

Request a quote

TCS Courier Connector

A build-to-order Odoo integration that connects TCS courier (Pakistan) to your sales and delivery flow — booking consignments, printing AWB/load-sheet labels, tracking parcels and reconciling COD directly from Odoo. Built, installed and supported by ECOSIRE.

  • Adds a native `delivery.carrier` provider of type `tcs`, integrating with Odoo's standard Delivery Methods so booking happens from the picking, not a separate portal
  • Consignment booking via the TCS REST/JSON API on `stock.picking` validation, with the returned CN number and tracking URL written back to custom fields on the picking
  • City and service-area serviceability validation before booking, so un-deliverable destinations are rejected at the counter with a clear error
  • QWeb PDF reports for the AWB/airway-bill and the TCS load-sheet, sized for thermal or A5 stationery and populated from live booked data

Request a Quotation

Tell us about your TCS Courier Connector requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.