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 $249.00 USD; request a quote for a scoped proposal.

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.
No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.
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.
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`
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 2 to 4 weeks: 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.
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.
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.
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.
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.
Buy the license on ecosire.com and download the J&T Express Connector for ERPNext app ZIP from your account dashboard.
Extract the ZIP into your bench's apps folder, or run `bench get-app` with the path to the extracted app.
Run `bench --site SITE_NAME install-app APP_NAME` followed by `bench migrate` to install J&T Express Connector for ERPNext and apply its schema.
Open the ECOSIRE License settings on your site and activate your license key. Requires the free ecosire_connect and ecosire_license_client apps.
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Delivery model | Build-to-order, scoped to your J&T accounts and dispatch flow | You brief and manage an in-house or freelance build | Generic app, take it as shipped | |
| J&T booking & AWB labels | Booking on Delivery Note submit + label via Print Format | Possible but you build every endpoint yourself | Basic label if the carrier is covered at all | |
| COD reconciliation | Remittance matched to Sales Invoice / Payment Entry | Bespoke logic you must design and test | Rarely handled; usually tracking-only | |
| Multi-country serviceability | Per-country credentials, endpoints and label routing | You own the routing complexity | Often single-country or single-endpoint | |
| Tracking updates | Scheduler poll + webhook ingest onto shipment timeline | You build and schedule the sync | Polling if offered, limited milestones | |
| Architecture & upgrade safety | Clean Frappe app, DocTypes, `bench migrate`-safe | Depends entirely on your developer's discipline | Varies; some rely on fragile Custom Fields | |
| Fit to your workflow | Shaped to your documents, roles and COD policy | Fully bespoke — at full build cost and risk | Fixed feature set, adapt your process to it | |
| Support & ownership | Post-go-live window + full git repo handover | You maintain it forever | Vendor SLA, no source access |
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.
Typical delivery is 2 to 4 weeks 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.
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.
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.
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.
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).
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.
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.