A build-to-order Frappe app that fans out a single rate request to every carrier account you have connected in ERPNext, then applies your business rules to auto-select the cheapest, fastest, or best-value option at checkout and on the Delivery Note. Scoped, built, installed, and supported by ECOSIRE. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $399.00 USD; request a quote for a scoped proposal.

A build-to-order Frappe app that fans out a single rate request to every carrier account you have connected in ERPNext, then applies your business rules to auto-select the cheapest, fastest, or best-value option at checkout and on the Delivery Note. Scoped, built, installed, and supported by ECOSIRE.
Keine Zahlung jetzt. Dies sendet eine Angebotsanfrage an unser Team – wir melden uns per E-Mail mit Preisen und nächsten Schritten.
If you run more than one carrier account, ERPNext gives you a Shipping Rule engine that resolves to a flat or slab-based charge from a table you maintain by hand — it does not call your carriers, does not know today's fuel surcharge, and cannot compare DHL against Aramex against your local courier for a specific parcel. The result is either overpaying because you default everything to one carrier, or a person tabbing between four carrier portals copying quotes into a Sales Order. Neither scales past a few dozen shipments a day, and neither reflects dimensional weight, zone bands, or the negotiated discounts sitting in your carrier contracts.
`Carrier Rate Request` orchestration DocType that fans out one request concurrently to every enabled carrier connector and aggregates the responses
Normalized `Carrier Rate Quote` child rows so DHL, Aramex, FedEx and local couriers are compared on a common schema (service level, transit days, base, surcharges, landed total)
`Rate Shopping Rule` DocType with cheapest / fastest / best-value policies and a configurable transit-vs-cost weighting factor
Dimensional-weight calculation from per-carrier volumetric divisors, compared against actual weight to match real carrier billing
Zone and weight-band resolution driven by carrier-specific tables, refreshed on a scheduler event
Hard-constraint rules (service exclusions, hazmat/perishable restrictions, max transit days, markup caps) evaluated before selection
ECOSIRE builds the Multi-Carrier Rate Shopping Engine as a proper Frappe app (its own module, DocTypes, and hooks.py wiring) installed on your ERPNext v15 or v16 bench. At its core is a Carrier Rate Request orchestration layer: given an origin, destination, weight, and package dimensions, it fans out concurrently to every carrier connector you have enabled and normalizes each response into comparable Carrier Rate Quote rows (service level, transit days, base cost, surcharges, landed total). A Rate Shopping Rule DocType lets you define selection policy per company, warehouse, customer group, or item group — cheapest, fastest, or best-value with a configurable transit-vs-cost weighting — plus hard constraints like "never ship perishables on ground" or "cap markup at 15%". Dimensional weight is computed from your carrier divisors and compared against actual weight so quotes match what the carrier will actually bill.
The engine hooks into the documents where the decision actually happens. A client script surfaces a "Shop Rates" action on Quotation, Sales Order, and Delivery Note so an agent sees ranked live quotes inline; a Delivery Note validate/before_submit doc event can auto-assign the winning carrier, write the service level, and stamp the chosen rate and margin. Customer-facing markup is applied through a rules layer so the rate you show at checkout already includes your handling margin, while the raw carrier cost is retained on the quote for reconciliation. Everything is exposed over the Frappe REST API through whitelisted methods (@frappe.whitelist()), so your storefront, POS, or a headless checkout can request get_rates() and post back the selection without touching the carrier APIs directly. A scheduler event refreshes cached zone/fuel tables and expires stale quotes, and all access is gated by Frappe role profiles and permission rules so pricing logic and carrier credentials stay locked down.
Because this is build-to-order, we start from your actual carrier mix and contracts rather than a generic template. After a short scoping call we confirm which carriers, service levels, and selection rules you need, then build against your ERPNext version, run it through UAT on a staging bench, and hand over installable source and a Git repository. Typical delivery is 2–4 weeks from confirmed scope depending on how many carrier connectors and edge-case rules are in play. You get the code, the docs, a training session, and a post-go-live support window — not a black box.
Runs three or more live carrier accounts and wants ERPNext to pick the cheapest or fastest option automatically instead of defaulting everything to one courier or hand-copying quotes from carrier portals.
Owns the Delivery Note process and needs carrier auto-assignment, service-level rules and dimensional-weight accuracy so packers stop guessing and shipments go out on the right service every time.
Needs live, marked-up shipping rates surfaced at checkout via the Frappe REST API so the customer sees an accurate landed price and the business protects its handling margin.
Wants raw carrier cost retained alongside the customer-facing rate and an audit trail from shipment back to quote, to reconcile carrier invoices and review which carriers actually hit their SLAs.
Kaufen Sie die Lizenz auf ecosire.com und laden Sie die ZIP-Datei der Multi-Carrier Rate Shopping Engine for ERPNext-App von Ihrem Konto-Dashboard herunter.
Extrahieren Sie die ZIP-Datei in den Apps-Ordner Ihrer Bank oder führen Sie „bench get-app“ mit dem Pfad zur extrahierten App aus.
Führen Sie „bench --site SITE_NAME install-app APP_NAME“ gefolgt von „bench migrate“ aus, um Multi-Carrier Rate Shopping Engine for ERPNext zu installieren und sein Schema anzuwenden.
Öffnen Sie die ECOSIRE-Lizenzeinstellungen auf Ihrer Website und aktivieren Sie Ihren Lizenzschlüssel. Erfordert die kostenlosen Apps ecosire_connect und ecosire_license_client.
| Kriterium | ECOSIRE | Benutzerdefinierter Build | Konkurrent | Odoo Native |
|---|---|---|---|---|
| Live carrier rate comparison | One request fans out to all connected carriers and ranks them | Possible but you build the orchestration yourself | Often single-carrier or a fixed shortlist | |
| Auto-selection logic | Cheapest/fastest/best-value rules per company, warehouse, customer | Whatever you code and maintain | Basic or cheapest-only, limited scoping | |
| Dimensional weight | Per-carrier divisors, billed on greater of actual vs volumetric | Must be implemented and tested per carrier | Sometimes supported, often generic | |
| Delivery Note auto-assignment | `before_submit` hook stamps winning carrier, service, rate | Custom doc events you write and own | Rarely wired into Delivery Note | |
| Customer-facing markup | Margin layer with raw cost retained for reconciliation | Build your own markup and audit fields | Limited or no margin handling | |
| API / headless access | Whitelisted REST methods for storefront, POS, headless | You expose and secure the endpoints | Varies; may be UI-only | |
| Fit and ownership | Scoped to your carriers + ERPNext version, source + Git handed over | Fully yours but you carry all the build risk | Generic; you adapt to its assumptions | |
| Support model | Install, UAT, training, post-go-live support window | Your team supports it | Vendor support, upgrade risk on your version |
This is build-to-order, so it is built for your carrier mix and ERPNext version rather than downloaded ready-made. Typical delivery is 2–4 weeks from confirmed scope, depending on how many carrier connectors and edge-case selection rules are involved. We confirm the exact timeline in writing after the scoping call.
The engine is carrier-agnostic — it fans out to whatever carrier connectors you have installed and enabled in ERPNext. During scoping we confirm your carriers (for example DHL, FedEx, Aramex, UPS, or a regional/local courier). If a carrier you use has no existing connector, we quote building that connector as part of the same engagement.
No. ECOSIRE designs, builds, installs and supports this specifically for your ERPNext v15/v16 bench, your carrier contracts, and your selection rules. There is no instant download — you are buying a scoped build plus installation, documentation, training and support, and you receive the full source and Git repository.
Every build includes a post-go-live support window for bug fixes and configuration tweaks. Because you receive installable source and the Git repository, your own team can maintain and extend it. For version upgrades (for example a v15-to-v16 migration) or new carriers and rules after the support window, we offer a maintenance arrangement or scoped follow-on work.
It runs alongside ERPNext core rather than replacing it. Native Shipping Rules stay available; the rate shopping engine adds live multi-carrier comparison and auto-selection on Quotation, Sales Order and Delivery Note through client scripts and doc-event hooks, so nothing in standard ERPNext is patched destructively.
Yes. Rate shopping is exposed over the Frappe REST API through whitelisted methods such as `get_rates()` and `select_rate()`, so a web storefront, a headless checkout, or ERPNext POS can request live marked-up rates and post back the customer's selection without ever handling carrier credentials themselves.
The engine computes dimensional (volumetric) weight from each carrier's divisor and bills against the greater of actual and dimensional weight, resolves the correct zone and weight band, and includes surcharges in the landed total. We validate the numbers against your real carrier invoices during UAT on staging before go-live.
A build-to-order Frappe app that fans out a single rate request to every carrier account you have connected in ERPNext, then applies your business rules to auto-select the cheapest, fastest, or best-value option at checkout and on the Delivery Note. Scoped, built, installed, and supported by ECOSIRE.