Odoo delivery orders, booked and posted automatically.

Odoo already knows what needs to move. Motho rates it across the courier network, books it, validates the picking with the waybill attached, and posts the vendor bill — one loop, no re-keying.

Connect Odoo
What syncs

Exactly what lands in your ledger.

No summary journals at month-end. Each entry is created when the event happens, referenced to the waybill that caused it.

Delivery order (stock.picking)Rated and booked shipmentWeight and packages read from the picking; waybill written back to the carrier tracking reference
Validated pickingVendor bill in AccountingCourier cost posted against your freight expense account with analytic tagging
Sale order delivery chargeInvoice lineCharged shipping flows to the customer invoice as usual
Courier statementReconciliation matchMatched to pickings by waybill; variances flagged before the bill is confirmed
Return pickingInbound shipment + creditReturn legs rated separately and netted against the original cost
Reconciliation

Courier invoice versus the rate you booked.

Odoo will happily post whatever the courier invoices. Motho checks it first: every statement line is matched to the delivery order it came from and compared to the rate that was booked.

  • Statement lines matched to Odoo pickings by waybill number.
  • Booked versus billed variance per line, in rands, with the courier's stated reason.
  • Re-weigh disputes backed by the dimensions captured when the picking was booked.
  • Billed parcels with no matching picking are surfaced immediately.
  • Only reconciled lines become confirmed vendor bills; the rest wait.
Setup

Connecting Odoo

You cannot break your chart of accounts: Motho writes only to the accounts you nominate, and never creates or edits one.

  1. Step 01

    Install the Motho module

    Available for Odoo 16, 17 and 18, on Odoo Online, Odoo.sh or self-hosted. It registers a delivery carrier and nothing else — your existing carriers keep working.

    Apps → Motho Shipping → Install

  2. Step 02

    Connect and map

    Paste your API key, map warehouses to collection addresses and nominate the expense account and analytic plan for courier costs.

    stock.warehouse → motho_collection_id

  3. Step 03

    Ship from the picking

    Open a delivery order, hit Get Rates, pick a courier, validate. The label prints, the tracking reference is stored and the bill is drafted.

FAQ

Odoo and shipping, answered

Which Odoo versions and hosting are supported?

Odoo 16, 17 and 18 — Community or Enterprise — on Odoo Online, Odoo.sh or your own server. Odoo Online requires the module to be added by Odoo support, which is a standard request.

Does it work with multi-warehouse and multi-step delivery?

Yes. Each warehouse maps to its own collection address, and two- or three-step delivery routes are supported — Motho acts at the final outgoing picking, not at pick or pack.

How is VAT on courier costs handled?

Vendor bills post at the 15% standard rate against the tax you nominate, and non-VAT-vendor couriers post untaxed. Analytic distribution follows the picking's analytic account if you use one.

Do I have to use Odoo Accounting?

No. If you run Odoo Inventory only, the shipping half works on its own and the accounting side can be posted to Xero, QuickBooks or Zoho Books instead.

What about returns and RMAs?

Return pickings are rated and booked as inbound legs, with the waybill written back to the return so warehouse staff can match arriving parcels to the RMA.

Can we drive it from our own automations?

Yes — the module wraps Motho's REST API, so server actions and scheduled jobs can request rates and book shipments directly from Odoo automations.

Get shipping costs into Odoo automatically.

Connect in a couple of minutes and post your first bill today.

Start shipping with Motho