Skip to main content
TCS Courier Connector for ERPNext — A build-to-order ERPNext integration that books TCS consignments (including COD), prints  — 1/1Illustrative preview

A build-to-order ERPNext integration that books TCS consignments (including COD),

prints labels, and syncs tracking status directly from your Delivery Notes.

ECOSIRE scopes, builds, installs, and supports it on your own instance.

What is TCS Courier Connector for ERPNext?

A build-to-order ERPNext integration that books TCS consignments (including COD), prints labels, and syncs tracking status directly from your Delivery Notes. ECOSIRE scopes, builds, installs, and supports it on your own instance. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

`TCS Settings` single DocType storing COD API credentials with `Password` fieldtype, plus sandbox/production toggle and default cost-center/account number
One-click consignment booking from Delivery Note via a whitelisted server method that posts consignee, address, phone, weight, pieces, and service type to the TCS COD API
COD amount capture and per-consignment service selection (overnight, second-day, COD vs. non-COD) resolved from the source document
CN / airway-bill number written back onto the Delivery Note and stored on a child `TCS Consignment` DocType with full request/response for audit
TCS-format label / airway-bill Print Format with barcode, printable one-click from the document toolbar
City serviceability lookup validated against a cached `TCS City` list before booking so unserviceable destinations fail fast
Hourly scheduler event (`scheduler_events` in `hooks.py`) that polls TCS tracking and updates a status field plus a timeline entry on the source order
`hooks.py` Delivery Note `on_submit` doc event for optional auto-booking, configurable to stay fully manual
Client script adding "Book with TCS", "Print Label", and "Void Consignment" buttons with confirmation dialogs
Void / cancel consignment flow that calls the TCS cancellation endpoint and reverses the CN on the document when the courier allows it
Role profile and DocType-level permissions so only the shipping role can book, void, or edit TCS credentials
Structured error handling: TCS API failures raise a readable `frappe.throw` and log the raw payload to the Error Log instead of failing silently
Frappe REST API + whitelisted methods exposed so a storefront or external dashboard can trigger bookings and read status programmatically
COD reconciliation-ready status fields (booked / in-transit / delivered / returned / COD-collected) queryable in a report view for finance
Built and tested for Frappe/ERPNext v15 and v16, packaged as a standard installable app for clean upgrades

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 ERPNext.

  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

ERPNext Compatibility
—
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
MariaDB 10.6+

About this Product

Pakistani e-commerce sellers running ERPNext hit the same wall the moment an order is ready to ship: ERPNext's core Shipment and Delivery Note DocTypes have no idea TCS exists. Staff copy the consignee name, address, phone, COD amount, and weight into the TCS portal by hand, paste the CN number back into ERPNext (or a spreadsheet), and then manually reconcile which parcels were delivered and which COD cash actually returned. At 50+ orders a day this is slow, error-prone, and it silently breaks COD reconciliation — the exact place where a courier integration should be earning its keep.

ECOSIRE builds a proper Frappe app that wires TCS directly into your order-to-ship flow. It ships as a standard app (a tcs_connector app with its own module) so it installs cleanly via bench get-app / bench install-app and upgrades like any other Frappe app. A TCS Settings single DocType holds your TCS COD API credentials (username, password, cost-center / account number) and toggles sandbox vs. production; secrets use the Password fieldtype and are never rendered in plain text. Role profiles and DocType permissions are set so only your shipping team can book or void consignments.

Booking is driven from the Delivery Note (or a linked Shipment). A whitelisted server method (@frappe.whitelist()) authenticates against the TCS COD API, posts the consignment with the correct service type and COD amount, and writes the returned CN / tracking number back onto the document — alongside a child TCS Consignment DocType record that captures the full request and response for audit. A hooks.py doc event on Delivery Note submit can auto-book (or stay manual, your call), and a client script adds a "Book with TCS" button plus a one-click label print via a Print Format sized for TCS airway bills. City serviceability is validated against a cached TCS City list before booking so bad destinations fail fast instead of at the counter.

Tracking stays current without anyone refreshing a portal. A scheduler event (scheduler_events in hooks.py, typically hourly) walks open consignments, calls the TCS tracking endpoint, and updates a status field plus a timeline entry on the source document — so "in transit", "delivered", or "returned" is visible right on the order. Everything is reachable through the standard Frappe REST API and whitelisted methods, so your storefront or a custom dashboard can trigger bookings or read status the same way the desk UI does.

Because this is build-to-order, nothing is a black box. After a short scoping call we confirm exactly which TCS services, COD flows, and edge cases (multi-parcel, partial COD, returns) you need, then build and test on a staging bench before touching production. Typical delivery is one working week from confirmed scope. You receive the installable source for your version, install and configuration on your instance, technical and user documentation, a training session, and a post-go-live support window — plus the git repository so you fully own what we built.

What you get

  • Installable source code for the `tcs_connector` app, built for your Frappe/ERPNext version (v15 or v16)
  • Installation and configuration on your instance, including `TCS Settings` credentials, roles, and Print Format setup
  • Technical documentation: DocType reference, hooks, whitelisted methods, scheduler events, and TCS API mapping
  • User guide plus a live training session for your shipping and finance teams
  • UAT on a staging bench with a documented test plan and a rollback plan before production cutover
  • Post-go-live support window for bug fixes and adjustments after launch
  • Git repository handover so you fully own the source and version history
  • Configuration notes for serviceable-city refresh and TCS credential rotation

Who this is for

Pakistani e-commerce ERPNext seller

Runs an online store on ERPNext and ships nationwide with TCS, mostly COD. Needs bookings, labels, and delivery status to live inside ERPNext instead of a separate courier portal.

Operations / dispatch lead

Owns the daily ship-out desk. Wants one-click booking and label printing straight from the Delivery Note, city serviceability checks up front, and no manual CN copy-paste at 50+ orders a day.

Finance / COD reconciliation officer

Tracks which parcels delivered and which COD cash actually returned. Needs delivered/returned/COD-collected status synced onto orders so reconciliation is a report, not a spreadsheet hunt.

ERPNext administrator / implementation partner

Maintains the bench and integrations. Wants a standard installable app with clean hooks, whitelisted methods, permissions, and v15/v16 support that upgrades without surprises.

How TCS Courier Connector for ERPNext Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
Delivery modelScoped, built, installed, and supported by ECOSIREYou hire/assign a Frappe developer to build itGeneric app, install-it-yourselfNot available — no TCS concept in core
TCS COD bookingOne-click from Delivery Note with COD amount + service typePossible, depends on your dev's TCS API knowledgeOften India/global couriers, rarely TCS PakistanManual entry into the TCS portal
Label printingTCS airway-bill Print Format, one-clickBuild a Print Format yourselfGeneric label, may not match TCS formatPrint from the TCS portal separately
Tracking syncHourly scheduler event updates status on the orderYou design and maintain the polling jobVaries; may be missing or courier-limitedCheck the TCS portal manually
COD reconciliationDelivered/returned/COD-collected status on each orderBuild reconciliation logic from scratchUsually not TCS-COD awareSpreadsheet vs. portal by hand
Fit to your workflowTailored to your services, roles, and edge casesFully tailored but time/skill dependentTake it as-is; limited configurationNone
Version supportBuilt and tested for v15/v16, upgrade-safeDepends on how it was writtenDepends on maintainer's update cadenceShips with ERPNext but no TCS features
Ownership & supportSource + git handover + post-go-live support windowYou own it but also own all maintenanceVendor-locked; support variesCore support, but nothing to support here

Frequently Asked Questions about TCS Courier Connector

How long does delivery take?

This is a build-to-order integration, not an instant download. After a short scoping call to confirm your exact TCS services and COD flows, typical delivery is one working week from confirmed scope, including UAT on a staging bench before we touch production.

Which ERPNext and Frappe versions are supported?

We build and test for Frappe/ERPNext v15 and v16, packaged as a standard installable app so it upgrades cleanly with your bench. Tell us your exact version during scoping and we target it specifically.

How do updates and support work after go-live?

You get a post-go-live support window for bug fixes and adjustments, plus the git repository so you own the source. Beyond the included window, we offer ongoing support and enhancements (new TCS services, extra automation) as a separate arrangement.

Do I need my own TCS COD API account?

Yes. TCS issues COD API credentials to registered account holders. You provide the username, password, and cost-center/account number; we store them securely in the `TCS Settings` DocType using the `Password` fieldtype and wire them into booking and tracking.

Can it auto-book on Delivery Note submit, or is booking manual?

Either. We can wire a `hooks.py` `on_submit` doc event to auto-book, or keep it a manual "Book with TCS" button on the Delivery Note. We confirm your preference during scoping — many teams start manual and switch to auto-book later.

How does COD reconciliation work?

Each consignment stores status fields (booked, in-transit, delivered, returned, COD-collected) that a scheduler event keeps in sync from TCS tracking. Finance can then reconcile from a report view instead of comparing the courier portal against a spreadsheet.

Can our storefront trigger bookings without using the ERPNext desk?

Yes. Booking and tracking are exposed through Frappe's REST API and whitelisted methods, so an external storefront, dashboard, or script can create consignments and read status the same way the desk UI does, subject to role permissions.

Request a quote

TCS Courier Connector

A build-to-order ERPNext integration that books TCS consignments (including COD), prints labels, and syncs tracking status directly from your Delivery Notes. ECOSIRE scopes, builds, installs, and supports it on your own instance.

  • `TCS Settings` single DocType storing COD API credentials with `Password` fieldtype, plus sandbox/production toggle and default cost-center/account number
  • One-click consignment booking from Delivery Note via a whitelisted server method that posts consignee, address, phone, weight, pieces, and service type to the TCS COD API
  • COD amount capture and per-consignment service selection (overnight, second-day, COD vs. non-COD) resolved from the source document
  • CN / airway-bill number written back onto the Delivery Note and stored on a child `TCS Consignment` DocType with full request/response for audit

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.