Skip to main content
J&T Express Connector for ERPNext — A build-to-order Frappe app that wires J&T Express into your ERPNext Delivery Note and Sa — 1/1Illustrative preview

A build-to-order Frappe app that wires J&T Express into your ERPNext Delivery Note and Sales Order flow

— AWB/label generation, COD reconciliation, pickup booking and webhook-driven tracking across SE-Asia and MENA lanes.

ECOSIRE scopes, builds, installs and supports it; it is not an off-the-shelf download.

What is J&T Express Connector for ERPNext?

A build-to-order Frappe app that wires J&T Express into your ERPNext Delivery Note and Sales Order flow — AWB/label generation, COD reconciliation, pickup booking and webhook-driven tracking across SE-Asia and MENA lanes. ECOSIRE scopes, builds, installs and supports it; it is not an off-the-shelf download. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

Dedicated Frappe app and module (clean namespace, migratable via `bench migrate`) rather than loose Custom Fields bolted onto stock DocTypes
`J&T Settings` single DocType storing per-country customer code, API key and signing secret, with the private key kept in an encrypted `Password` fieldtype
`J&T Shipment` DocType mirroring each consignment, its AWB/tracking number, COD flag, package dimensions and current milestone
Booking driven by a `hooks.py` `on_submit` doc event on Delivery Note (plus a manual `@frappe.whitelist()` "Create Shipment" action for controlled dispatch)
AWB / shipping-label generation as a Frappe Print Format, printable directly from the ERPNext desk and mobile — no J&T portal round-trip
COD support: collected-amount capture, remittance-file import, and a reconciliation view matched against `Sales Invoice` and `Payment Entry`
Pickup booking against the J&T pickup API via a whitelisted method, with request/response persisted for audit
Multi-country serviceability routing that selects the correct J&T endpoint, credentials and label template per destination country
Request signing per J&T's HMAC/digest scheme, with signature and payload verification on any inbound status callbacks
Tracking sync via a Frappe Scheduler Event (cron-style `scheduler_events`) plus webhook ingestion where J&T supports it, writing milestones to the shipment timeline
Rate/serviceability pre-check surfaced on the Sales Order so unservable destinations are caught before dispatch
Idempotent booking guard (dedupe on source document + AWB) so a re-submitted Delivery Note never double-creates a consignment at J&T
Client Script that adds carrier actions and live-status badges to the Delivery Note form for packers and support
Role-based access via a `J&T Manager` role / permission profile and a full Frappe Error Log trail for every rejected or failed carrier call
Built and tested against Frappe/ERPNext v15 and v16, delivered through a git repo installable with `bench get-app`

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

SE-Asian and MENA merchants running ERPNext live and die by their last-mile carrier, and J&T Express is one of the biggest — but ERPNext core has no idea J&T exists. Out of the box you get a Shipment DocType and Delivery Note, yet no way to push a consignment to J&T, print a compliant AWB, book a pickup, or pull a scan event back. Teams end up keying orders into the J&T merchant portal by hand, copying tracking numbers into spreadsheets, and — worst of all — reconciling COD remittances manually against hundreds of parcels. Every rekeyed address is a misdelivery, and every unreconciled COD parcel is cash you can't see in Payment Entry.

ECOSIRE builds a proper Frappe app (its own module, not a pile of Custom Fields) that makes J&T a first-class carrier inside ERPNext. We add a J&T Settings single DocType holding per-country API credentials, customer code, and the private key J&T uses to sign requests, plus a J&T Shipment DocType that mirrors each consignment and its lifecycle. Booking is driven from your existing documents: a hooks.py on_submit doc event (or an explicit "Create J&T Shipment" button backed by a @frappe.whitelist() method) reads the Delivery Note, maps items and package weights, calls the J&T order-create endpoint, stores the returned AWB/tracking number back on the source document, and renders a label through a Frappe Print Format so your packers print straight from the desk — no portal round-trip.

COD is treated as a real accounting problem, not a checkbox. The connector flags COD consignments, captures the collected amount J&T reports, and gives you a reconciliation view that matches carrier remittance files against Sales Invoice / Payment Entry so finance can see exactly which parcels are paid, pending, or short. Pickup booking is a whitelisted method against J&T's pickup API with the response persisted for audit, and a Frappe Scheduler Event polls (or receives, where J&T supports webhooks) tracking milestones and writes them to a timeline on the shipment so support and customers see live status. Multi-country serviceability is baked in: routing rules pick the correct J&T endpoint, credentials and label template per destination, with graceful fallbacks and a Frappe Error Log entry whenever the carrier rejects a booking, so failures are visible instead of silent.

Because this is build-to-order, nothing is pre-listed for instant download. We start with a short scoping call to confirm your J&T country accounts, the exact documents you dispatch from, your COD and returns policy, and your ERPNext version. From confirmed scope, typical delivery is one working week: we build against a staging bench, run UAT with your real order and COD data, and hand over installable source, a git repository, technical and user documentation, a training session, and a post-go-live support window. You get software shaped to your operation and warranted by the team that wrote it.

What you get

  • Installable source code for your version of the connector, packaged as a Frappe app installable via `bench get-app` / `bench install-app`
  • Installation and configuration on your bench, including `J&T Settings` credential setup per country and role/permission wiring
  • Technical documentation: DocType schema, hooks and scheduler events, whitelisted API methods, and J&T endpoint mapping
  • End-user guide plus a live training session for dispatch, finance (COD) and support staff
  • UAT on a staging bench using your real order and COD data, with a documented rollback plan
  • Post-go-live support window for defect fixes and configuration adjustments after launch
  • Handover of the private git repository with full commit history and a tagged release
  • Deployment runbook covering credential rotation, adding a new J&T country, and safe `bench migrate` upgrades

Who this is for

SE-Asia e-commerce operations lead

Runs high-volume COD fulfilment across Malaysia, Indonesia, the Philippines, Thailand or Vietnam on ERPNext and needs J&T bookings, labels and pickups to happen inside the Delivery Note flow instead of a separate merchant portal.

MENA cross-border merchant

Ships J&T lanes into or across the Gulf and needs multi-country credential handling, correct per-destination labels and serviceability checks so orders aren't booked to unservable postcodes.

Finance / COD reconciliation manager

Owns cash-on-delivery exposure and wants every collected parcel matched to a Sales Invoice and Payment Entry, with remittance files reconciled automatically rather than in spreadsheets.

ERPNext system owner / bench admin

Maintains the ERPNext instance and wants a clean, migratable Frappe app with documented hooks, scheduler events and role profiles — not fragile Custom Fields that break on upgrade.

How J&T Express Connector for ERPNext Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
Delivery modelBuild-to-order, scoped to your J&T accounts and dispatch flowYou brief and manage an in-house or freelance buildGeneric app, take it as shippedNothing to deliver — J&T not supported
J&T booking & AWB labelsBooking on Delivery Note submit + label via Print FormatPossible but you build every endpoint yourselfBasic label if the carrier is covered at allManual entry in the J&T merchant portal
COD reconciliationRemittance matched to Sales Invoice / Payment EntryBespoke logic you must design and testRarely handled; usually tracking-onlyManual spreadsheet reconciliation
Multi-country serviceabilityPer-country credentials, endpoints and label routingYou own the routing complexityOften single-country or single-endpointNot applicable
Tracking updatesScheduler poll + webhook ingest onto shipment timelineYou build and schedule the syncPolling if offered, limited milestonesNone
Architecture & upgrade safetyClean Frappe app, DocTypes, `bench migrate`-safeDepends entirely on your developer's disciplineVaries; some rely on fragile Custom FieldsN/A
Fit to your workflowShaped to your documents, roles and COD policyFully bespoke — at full build cost and riskFixed feature set, adapt your process to itNone
Support & ownershipPost-go-live window + full git repo handoverYou maintain it foreverVendor SLA, no source accessCommunity forums only

Frequently Asked Questions about J&T Express Connector

Is this a ready-made app I can download and install today?

No. It is build-to-order. ECOSIRE scopes, builds, installs and supports the connector for your specific J&T country accounts and ERPNext setup. There is no instant download and no public Frappe Cloud Marketplace listing — you request a quotation, we confirm scope, then we build.

How long does delivery take?

Typical delivery is one working week from confirmed scope. That covers building against a staging bench, UAT with your real order and COD data, documentation, and a training session. Complex multi-country or custom-workflow requirements can extend this; we give you a firm timeline after the scoping call.

Which Frappe/ERPNext versions are supported?

We build and test against Frappe/ERPNext v15 and v16, delivered as a proper Frappe app installable with `bench get-app`. If you are on an older version we will tell you honestly during scoping whether a backport is feasible before you commit.

How is cash-on-delivery reconciled?

COD consignments are flagged on the `J&T Shipment` DocType, the collected amount reported by J&T is captured, and a reconciliation view matches carrier remittance files against your `Sales Invoice` and `Payment Entry` records so finance can see paid, pending and short parcels without spreadsheets.

How does it handle multiple J&T countries?

Credentials, customer codes and signing keys are stored per country in the `J&T Settings` DocType, and routing rules select the correct J&T endpoint and label template for each destination. Serviceability checks on the Sales Order catch unservable postcodes before a booking is attempted.

What about support and updates after go-live?

Every engagement includes a post-go-live support window for defect fixes and configuration changes, and you receive the full git repository so you own the code. Beyond the window we offer ongoing support and version-upgrade retainers (for example when a new ERPNext major release or a J&T API change lands).

Will it survive ERPNext upgrades?

Yes — it ships as a versioned Frappe app with its own module and DocTypes, migrated through `bench migrate`, rather than ad-hoc Custom Fields. The handover runbook covers safe upgrades, credential rotation and adding a new J&T country.

Request a quote

J&T Express Connector

A build-to-order Frappe app that wires J&T Express into your ERPNext Delivery Note and Sales Order flow — AWB/label generation, COD reconciliation, pickup booking and webhook-driven tracking across SE-Asia and MENA lanes. ECOSIRE scopes, builds, installs and supports it; it is not an off-the-shelf download.

  • Dedicated Frappe app and module (clean namespace, migratable via `bench migrate`) rather than loose Custom Fields bolted onto stock DocTypes
  • `J&T Settings` single DocType storing per-country customer code, API key and signing secret, with the private key kept in an encrypted `Password` fieldtype
  • `J&T Shipment` DocType mirroring each consignment, its AWB/tracking number, COD flag, package dimensions and current milestone
  • Booking driven by a `hooks.py` `on_submit` doc event on Delivery Note (plus a manual `@frappe.whitelist()` "Create Shipment" action for controlled dispatch)

Request a Quotation

Tell us about your J&T Express 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.