A build-to-order ERPNext application for freight forwarders and NVOCCs that manages air, ocean (FCL/LCL) and land (FTL/LTL) jobs with automated charge calculation, HBL/MBL documents and job costing. ECOSIRE scopes, builds, installs and supports it — not an instant marketplace download. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $799.00 USD; request a quote for a scoped proposal.

A build-to-order ERPNext application for freight forwarders and NVOCCs that manages air, ocean (FCL/LCL) and land (FTL/LTL) jobs with automated charge calculation, HBL/MBL documents and job costing. ECOSIRE scopes, builds, installs and supports it — not an instant marketplace download.
Sin pago ahora. Esto envía una solicitud de presupuesto a nuestro equipo; te responderemos por correo con precios y próximos pasos.
Freight forwarders running on ERPNext hit a wall fast. ERPNext core gives you Sales Orders, Purchase Orders, Delivery Notes and the Accounts module, but it has no concept of a freight job, a house bill against a master bill, a container manifest, or a charge tariff that computes selling and buying rates per teu, per kilo or per volumetric weight. Teams end up bolting the operational reality onto spreadsheets and email threads while the ERP only sees the final invoice — so job profitability, milestone status and consol allocation live outside the system your finance team trusts.
`Freight Job` DocType as the operational hub — mode (air/ocean/land), direction, incoterm, shipper/consignee, routing and status workflow, linked to bills, packages, containers and charges
Ocean FCL and LCL handling with container manifest (type, count, seal, tare) and CBM/weight-based consol allocation across multiple house shipments
Air freight with IATA volumetric weight calculation (dimensional factor 1:6000) and chargeable-weight-vs-gross reconciliation enforced on `validate`
Land freight FTL/LTL jobs with vehicle/trailer, haulage legs and per-lane rating
`Charge Tariff` + `Charge` child table computing buying and selling lines by chargeable weight, CBM, container type, TEU or flat basis
Automatic charge recalculation via `hooks.py` doc events (`before_save`/`validate`) with guards that block submit on an unbalanced or zero-margin cost sheet
We build a proper Frappe application (its own app in the bench, installed alongside ERPNext, never a pile of Customize Form hacks) that models freight forwarding as first-class DocTypes. A Freight Job DocType carries mode (air, ocean, land), direction, incoterm, shipper/consignee, routing legs and links to the HBL/MBL documents, packages and containers. Charges are driven by a Charge Tariff and Charge child table so each cost and revenue line (freight, THC, customs, haulage, documentation) is calculated from chargeable weight, volume (CBM), container type or a flat basis — with hooks.py doc events (before_save, on_submit, validate) recomputing chargeable weight versus gross weight and enforcing that a job can't be submitted with an unbalanced cost sheet. Job costing rolls actual buying costs (from linked Purchase Invoices) against sold charges to give real-time margin per job, per consol and per customer.
Technically it fits ERPNext's grain rather than fighting it. Charges flow through to ERPNext Sales Invoice and Purchase Invoice so accounting, taxes and GL stay native and auditable. Server scripts and whitelisted Python methods (@frappe.whitelist()) expose operations like charge recalculation, HBL generation and milestone updates to the Frappe REST API for your portal, tracking page or EDI integrations. Client scripts handle the operational UX — auto-filling routing, warning on volumetric overrides, toggling FCL vs LCL fields. Milestone and multi-leg tracking uses a Shipment Milestone child table plus scheduler events (scheduler_events in hooks.py) that flag overdue ETAs and fire notifications. Role profiles and permission rules (role_profile, DocType permissions, if_owner and user-permission scoping) separate operations, documentation, sales and finance so a docs clerk can't touch buying rates.
Because it's build-to-order, nothing ships until we agree exactly what you need. We start with a scoping call, produce a written scope and data model, then build against your ERPNext version (v15 or v16), your incoterms, your tariff structure and your document templates. You get the installable app source for your build, deployment onto your bench (Frappe Cloud, self-hosted or ECOSIRE-managed), UAT on a staging site with a rollback plan, documentation, a training session and a post-go-live support window. Typical delivery is 2 to 4 weeks from confirmed scope. The full git repository is handed over — you own the code.
Runs air, ocean and land jobs and needs one system for HBL/MBL, consol allocation and milestone status instead of spreadsheets, so ops and finance finally see the same shipment.
Wants job-level margin, unbilled-charge visibility and charges that post cleanly into ERPNext Sales/Purchase Invoices with correct tax and multi-currency GL — no reconciliation between ops tools and the ledger.
Already on ERPNext v15/v16 and needs a proper freight app on the bench, not Customize Form patchwork, with clean DocTypes, hooks and a git repo they can maintain and extend.
Migrating off legacy freight software and needs a right-sized, build-to-order system scoped to their trade lanes, incoterms and tariff structure rather than a bloated off-the-shelf suite.
Compre la licencia en ecosire.com y descargue la aplicación ZIP de Freight Forwarding Management for ERPNext desde el panel de su cuenta.
Extraiga el ZIP en la carpeta de aplicaciones de su banco o ejecute `bench get-app` con la ruta a la aplicación extraída.
Ejecute `bench --site SITE_NAME install-app APP_NAME` seguido de `bench migrar` para instalar Freight Forwarding Management for ERPNext y aplicar su esquema.
Abra la configuración de licencia de ECOSIRE en su sitio y active su clave de licencia. Requiere las aplicaciones gratuitas ecosire_connect y ecosire_license_client.
| Criterio | ECOSIRE | Construcción personalizada | Competidor | Odoo Nativo |
|---|---|---|---|---|
| Freight job model (air/ocean/land, HBL/MBL) | Purpose-built DocTypes for jobs, bills and containers | Possible but you design and build the model yourself | Fixed model that may not match your trade lanes | |
| Charge calc (weight/CBM/container tariffs) | Tariff-driven buying/selling lines with volumetric logic | Hand-built formulas and validations to maintain | Generic tariff, hard to bend to your rate cards | |
| Job costing / margin | Real-time margin per job, consol and customer | Report you must specify and build | Often summary-only, limited buy-vs-sell detail | |
| ERPNext accounting fit | Posts to native Sales/Purchase Invoices, clean GL | You wire the accounting hooks yourself | Varies; some keep a separate ledger | |
| Fit to your process | Scoped to your incoterms, lanes and documents | Fully bespoke — highest effort and cost | You adapt to the app, not the reverse | |
| Delivery time & effort | 2-4 weeks from confirmed scope, we build it | Months of internal dev and QA | Fast install, then long configuration fight | |
| Code ownership & maintainability | Full git repo handover, clean bench app | You own it but carry all the build risk | Vendor-locked, closed or licensed | |
| Support & version upgrades | Post-go-live window + optional v15→v16 upgrades | Your team supports and upgrades it | Vendor SLA, variable responsiveness |
No. This is a build-to-order engagement. We scope, build, install and support the app for your specific ERPNext setup — trade lanes, incoterms, tariffs and document templates. You are not buying a pre-packaged marketplace download; you are commissioning a tailored Frappe app that we deliver and support.
Typical delivery is 2 to 4 weeks from confirmed scope. It starts with a scoping call and a written scope/data model; once you sign off, we build against your ERPNext version, run UAT on staging, then cut over to production. Larger or heavily customized scopes are estimated during scoping — we give you a date before build starts.
Every engagement includes a post-go-live support window for defect fixes and configuration adjustments. Because you receive the full git repository, your team can maintain and extend it, or you can retain ECOSIRE on an ongoing basis for enhancements, version upgrades (v15 to v16) and new trade-lane requirements.
We build for Frappe/ERPNext v15 and v16. The app is a proper bench app with DocTypes, `hooks.py` doc events, scheduler events and whitelisted API methods — no core-file edits — so it survives `bench update` and version upgrades cleanly.
It uses ERPNext accounting natively. Charge lines flow into standard `Sales Invoice` and `Purchase Invoice` documents, so tax, GL, multi-currency and financial reports stay in ERPNext core. Nothing is a separate ledger — job costing simply reconciles sold charges against actual buying costs from linked invoices.
Yes. Operations like milestone updates, charge recalculation and HBL issuance are exposed as whitelisted methods over the Frappe REST API, so a customer tracking page, portal or EDI/carrier integration can read and write against it. Integration scope and any third-party connectors are agreed during scoping.
Yes. We hand over the full git repository for your build, including history. The installable app is yours — you can host it anywhere, maintain it in-house, or have ECOSIRE continue to support it.
A build-to-order ERPNext application for freight forwarders and NVOCCs that manages air, ocean (FCL/LCL) and land (FTL/LTL) jobs with automated charge calculation, HBL/MBL documents and job costing. ECOSIRE scopes, builds, installs and supports it — not an instant marketplace download.