انتقل إلى المحتوى الرئيسي
يتم عرض تفاصيل المنتج باللغة الإنجليزية. الترجمات قريبا.
Carrier Shipping Rate Rules & Markup Engine for Odoo — A build-to-order Odoo module that layers weight/zone/value-based shipp — 1/1معاينة توضيحية

A build-to-order Odoo module that layers weight/zone/value-based shipping rules,

free-shipping thresholds, handling surcharges and per-carrier markups on top of your delivery carriers.

ECOSIRE scopes, builds, installs and supports it for you.

ما هو Carrier Shipping Rate Rules & Markup Engine for Odoo؟

A build-to-order Odoo module that layers weight/zone/value-based shipping rules, free-shipping thresholds, handling surcharges and per-carrier markups on top of your delivery carriers. ECOSIRE scopes, builds, installs and supports it for you. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

الميزات الرئيسية

`shipping.rate.rule` model with weight-band, order-value-band and destination-zone conditions evaluated by `sequence` priority for deterministic resolution
Overrides the standard `delivery.carrier` `rate_shipment()` / `_get_price_available()` so rules feed website checkout, `sale.order` and delivery orders through one code path
Per-carrier markup as fixed amount or margin percentage applied on top of live rates returned by real-time connectors (DHL/UPS/FedEx/`base_delivery_carrier_label`)
Zone matching against `res.country`, `res.country.group` and state, so region-specific rates and remote-area surcharges resolve from the delivery address
Free-shipping thresholds scoped by zone and carrier, written as a proper delivery line so tax and margin reporting stay correct
Promo/free-shipping time windows driven by `ir.cron` automated actions with start/end dates
Stackable handling-fee and surcharge rule type (fuel, oversize, insurance) applied after the base carrier rate
Compute methods decorated with `@api.depends` recalculate on cart total, weight or address change — no stale prices at checkout
Multi-company safe via `ir.model.access.csv` access rights plus record rules on the rule and carrier scope
Weight source configurable per rule (product weight, packaging weight, or volumetric/dimensional weight) with rounding controls
Currency-aware bands and markups that respect the order's currency and company pricelist
Backend rule-tester view (XML/OWL) to preview the applied rule and final price for a sample weight/zone/value before go-live
Rate decisions logged for audit — which rule fired, base cost, markup and surcharge components
Honored identically by XML-RPC / JSON-RPC callers so external order systems get the same computed shipping price
Fallback ordering so that when no rule matches, the carrier's native pricing is used instead of a hard failure

مبني حسب الطلب، ننجزه بالكامل لك

لا إعداد يدوي — تطبيق جاهز يبنيه ويثبّته ويدعمه ECOSIRE.

  1. 1

    تطلب

    ابدأ بسعر بناء لمرة واحدة. نحدّد النطاق معك عند الانطلاق.

  2. 2

    نبني ونثبّت

    يقوم ECOSIRE ببنائه وتهيئته وتثبيته على Odoo الخاص بك.

  3. 3

    الإطلاق + الدعم

    تنطلق خلال أسبوع عمل واحد تقريبًا، مع أسبوعين من الدعم بعد التشغيل. نصلح عيوب الكود الذي نسلّمه مجانًا.

المواصفات التقنية

توافق Odoo
Odoo 17, Odoo 18, Odoo 19
الإصدارات
Enterprise و Community
الترخيص
يلزم تأكيد الترخيص
متطلبات Python
Python 3.10+
قاعدة البيانات
PostgreSQL 12+

عن هذا المنتج

Odoo merchants control shipping margin one carrier at a time, and it rarely holds up. The stock delivery app gives you delivery.carrier with a "Based on Rules" pricing type, but its rules are flat variable/operator/value rows scoped to one carrier — there is no cross-carrier markup layer, no free-shipping threshold that varies by region, no handling fee that stacks on top of the raw carrier quote, and no way to apply a margin percentage to what a real-time carrier connector (base_delivery_carrier_label, DHL, UPS, FedEx) returns at checkout. Merchants end up editing dozens of carrier records by hand, hard-coding shipping products, or eating negative margin on heavy or remote-zone orders. Native runs out of road exactly where shipping stops being a fixed price and starts being a policy.

This module adds a dedicated rule engine that evaluates on top of your existing carriers instead of replacing them. We introduce a shipping.rate.rule model (models.Model) with fields for weight bands, order value bands, destination zone (linked to res.country / res.country.group / state), carrier scope, and a priority sequence so overlapping rules resolve deterministically. A compute method decorated with @api.depends recalculates the shipping price whenever the cart total, weight, or delivery address changes, and we override the carrier's rate_shipment() / _get_price_available() so the engine feeds Odoo's standard checkout, sale order, and delivery flow — the customer sees one final number, correctly, in both the eCommerce checkout and back-office Sales quotations. Per-carrier markup is applied as either a fixed amount or a margin percentage against the live carrier cost, so real-time rates from a connector still carry your margin.

Free-shipping thresholds are first-class: define "free over X in zone Y for carrier Z", with optional promo windows driven by Odoo ir.cron automated actions, and the engine writes the discount as a proper delivery line so tax and reporting stay clean. Handling fees and surcharges (fuel, oversize, remote-area) are their own rule type that stacks after the base rate. Everything is exposed through backend views (XML list/form with an OWL-driven rule tester where useful), guarded by ir.model.access.csv plus record rules for multi-company setups, and every rate decision is auditable. Because it hooks the standard carrier interface, the same rules are honored by the website checkout, the sale.order back office, and any integration calling in over XML-RPC or JSON-RPC.

This is a build-to-order engagement, not an instant download. We start with a short scoping call to map your carriers, zones, and margin policy, then build the module against your target version — Odoo 17.0, 18.0, or 19.0, Community or Enterprise (we flag any Enterprise-only carrier connector dependencies up front). Typical delivery is one working week from confirmed scope. You get the installable source, UAT on a staging database, a rollback plan, and a post-go-live support window — and you own the git repository at handover.

ما تحصل عليه

  • Installable module source code built for your exact Odoo version (17.0, 18.0 or 19.0), Community or Enterprise
  • Installation and configuration on your environment, including carrier scoping and initial rule set
  • Technical documentation — model/field reference, override points, and how the rule engine hooks the carrier interface
  • End-user guide plus a live training session for the staff who will maintain rules, thresholds and markups
  • UAT on a staging database with sign-off scenarios, plus a documented rollback plan
  • Post-go-live support window for bug fixes and configuration questions
  • Full git repository handover — you own the source and history
  • Data/configuration import of your existing zones, thresholds and per-carrier margin policy

لمن هذا

E-commerce Operations Manager

Runs the Odoo website store and needs checkout shipping prices that protect margin per zone and per carrier without editing carrier records by hand every time rates change.

Finance / Margin Owner

Owns shipping P&L and wants an auditable markup and surcharge policy — margin percentage on live carrier rates, remote-area surcharges, and free-shipping thresholds that don't quietly erode profit.

Logistics / Fulfilment Lead

Manages multiple carriers and zones and needs weight-band and dimensional-weight rules that reflect real freight cost, with deterministic rule priority so quotes are predictable.

Odoo Administrator / Integrator

Maintains the instance and integrations, needs a clean module that overrides the standard carrier interface, respects multi-company record rules, and behaves consistently over XML-RPC/JSON-RPC.

كيف يقارن Carrier Shipping Rate Rules & Markup Engine for Odoo.

المعيارECOSIREبناء مخصصمنافسOdoo الأصلي
Cross-carrier markup layerFixed or margin-% markup on top of any carrier, incl. live ratesPossible but you build and maintain the engineUsually single-carrier, rarely margin-% on live ratesNone — rules are per-carrier only
Free-shipping thresholds by zone/carrierFirst-class, with promo windows via ir.cronBuildable to spec, added dev timeOften global threshold onlyFree_over is a flat per-carrier flag
Handling fees & surchargesStackable surcharge rule type (fuel, oversize, remote)Custom fields and logic you designLimited or bundled into base rateNot supported as a separate layer
Zone / region matchingCountry, country-group and state driven from addressWhatever you model yourselfVaries; often country-level onlyBasic destination conditions in rules
Fit to your version & editionBuilt for your 17/18/19, Community or EnterpriseYou control it, at full build costDepends on vendor's version coverageWhatever ships in that edition
Support & ownershipSupport window + full git repo handoverYours to own and maintainVendor SLA, no source ownershipCommunity/Enterprise support only
Auditability of rate decisionsLogs which rule fired, base cost, markup, surchargeIf you build loggingTypically opaqueNo rule-level audit trail
Delivery modelBuild-to-order, one working week from confirmed scopeLonger — full spec, build, test cycleInstant download, generic fitAlready installed, limited capability

الأسئلة المتداولة حول Carrier Shipping Rate Rules & Markup Engine

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

No. This is a build-to-order engagement. ECOSIRE builds the module against your target Odoo version and your carrier/zone/margin policy, then installs and supports it. There is no instant apps.odoo.com download for this.

How long does delivery take?

Typical delivery is one working week from confirmed scope. It starts with a short scoping call to map your carriers, zones, thresholds and margin rules; the timeline firms up once that scope is signed off. Larger multi-company or multi-connector setups sit at the upper end.

Which Odoo versions and editions are supported?

Odoo 17.0, 18.0 and 19.0, both Community and Enterprise. We build against your exact version. If your rules depend on an Enterprise-only carrier connector, we flag that during scoping so there are no surprises.

Does it work with real-time carrier rates from DHL, UPS or FedEx?

Yes. Because the engine overrides the standard carrier interface (`rate_shipment` / `_get_price_available`), it applies your markup or margin percentage on top of the live rate a connector returns, so real-time quotes still carry your margin at checkout.

Will it apply correctly on both the website checkout and back-office quotations?

Yes. It hooks Odoo's standard carrier pricing path, so the same rules are honored in the eCommerce checkout, in `sale.order` quotations in the back office, and by any external system calling in over XML-RPC or JSON-RPC.

What about support and updates after go-live?

You get a post-go-live support window for bug fixes and configuration questions, and you receive the full git repository at handover so you own the code. Version upgrades and feature additions can be scoped as follow-on work.

How do overlapping rules resolve — could two rules fight over one order?

No. Every rule carries a `sequence` priority, so overlapping conditions resolve deterministically to the highest-priority match. If no rule matches, the carrier's native pricing is used as a fallback rather than failing.

طلب عرض سعر

Carrier Shipping Rate Rules & Markup Engine

A build-to-order Odoo module that layers weight/zone/value-based shipping rules, free-shipping thresholds, handling surcharges and per-carrier markups on top of your delivery carriers. ECOSIRE scopes, builds, installs and supports it for you.

  • `shipping.rate.rule` model with weight-band, order-value-band and destination-zone conditions evaluated by `sequence` priority for deterministic resolution
  • Overrides the standard `delivery.carrier` `rate_shipment()` / `_get_price_available()` so rules feed website checkout, `sale.order` and delivery orders through one code path
  • Per-carrier markup as fixed amount or margin percentage applied on top of live rates returned by real-time connectors (DHL/UPS/FedEx/`base_delivery_carrier_label`)
  • Zone matching against `res.country`, `res.country.group` and state, so region-specific rates and remote-area surcharges resolve from the delivery address

طلب عرض سعر

أخبرنا باحتياجاتك من Carrier Shipping Rate Rules & Markup Engine وسنرسل لك الأسعار وخيارات الترخيص وعرضًا مخصصًا، عادةً خلال يوم عمل واحد.

لا حاجة للدفع الآن. يؤدي هذا إلى إرسال طلب عرض سعر إلى فريقنا — وسنتواصل معك عبر البريد الإلكتروني بالأسعار والخطوات التالية.