KPB Solutions
ES Español EN English
Book a meeting

Guide

What Is a Distributor and How to Run One: B2B Sales, Warehousing, Delivery and Collections with Odoo

A practical guide to running a distribution business in Chile: the complete B2B flow from presales to collections, what Odoo handles natively, what requires third-party apps and which KPIs to track.

Updated October 14, 2026 8 min read

What Is a Distributor and How to Run One: B2B Sales, Warehousing, Delivery and Collections with Odoo

Photo: toolstop · CC BY 2.0

Your sales rep takes an order over WhatsApp at seven in the evening. The next day the truck leaves with boxes missing, the invoice uses the old price list and, a month later, the customer pays late. Nobody knows whether that order made any margin.

It's not a lack of effort: the process is scattered across spreadsheets, chats and accounting software that can't see the warehouse.

In this guide you'll learn what a distributor is, its B2B flow, what Odoo handles natively and what it doesn't, which KPIs to track and how to implement it.

What is a distributor: types and what it needs to manage

A distributor is a company that buys products in volume from manufacturers or importers, stores them and resells them to other businesses (shops, restaurants, companies or institutions) in smaller quantities. Its value lies in logistics, credit and sales service. Its margin depends on buying well, turning inventory quickly, shipping complete orders and collecting on time.

The most common types are:

  • Consumer goods: grocery stores and convenience stores, with presales and daily delivery.
  • Food and perishables: lots, expiration dates and, sometimes, cold chain.
  • Industrial or technical: spare parts or supplies, with thousands of SKUs.
  • Importer or brand representative: few suppliers and import costs.

All of them manage five fronts: pricing and credit, stock, delivery, tax documents and collections.

The complete flow: presales, order, picking, delivery guide, invoice and collections

Each step flows from the previous one, with no re-keying:

  1. Presales or order taking. Through a visit, WhatsApp, email or a B2B store. In Odoo it's recorded as a quotation with the customer's price list.
  2. Sales order. When you confirm it, Odoo reserves stock and generates the delivery order.
  3. Picking. It's prepared in one, two or three steps, in waves and, in Odoo Enterprise, with the Barcode app.
  4. Delivery guide. When you validate the delivery, Odoo lets you create the electronic guide that travels with the truck.
  5. Invoice. With the invoice delivered quantities policy, you invoice what shipped, not what was ordered (Odoo documentation).
  6. Collections. The credit invoice stays in receivables until it's paid and reconciled.

The electronic delivery guide in Chile

The electronic delivery guide (guía de despacho electrónica, DTE 52) is the tax document that supports the movement of goods. Since January 17, 2020 it must be electronic, under Law 21.131 (SII, Chile's tax authority).

In Odoo it's issued by the Chile - E-Invoicing Delivery Guide module (l10n_cl_edi_stock), part of the official localization in Odoo Enterprise (reviewed in October 2026). It requires the Inventory app, your own CAF (folio authorization files issued by the SII) for delivery guides and approved SII certification. The documentation warns that a guide shouldn't exceed 60 product lines (Odoo for Chile). If you don't have the certification yet, see SII certification and the guide to electronic invoicing.

Customer and channel price lists, volume discounts and credit control

A customer-specific price list is a set of rules that overrides the base price depending on who buys, how much and when. In Odoo each rule applies by product, category or variant, with a minimum quantity (volume discount) and validity dates, and calculates a discount, a formula or a fixed price. The list is assigned on the customer's record. Odoo 20 adds rules by period or day of the week and prices by packaging type, such as case or pallet. If you also configure products with options or approve discounts by tier, you're in CPQ territory.

Credit control is native too: you set a limit per customer and Odoo warns you on the sales order and the invoice when it's exceeded. But it doesn't block anything: holding the order until finance approves it requires an additional rule or development.

Multi-warehouse inventory, lots, expiration dates (FEFO) and replenishment

Odoo manages stock by warehouse and location, with lots and serial numbers (see the Odoo Inventory guide).

FEFO (first expired, first out) is the strategy that ships the lots with the nearest removal date first. It requires enabling lots and expiration dates; in food or pharmaceuticals it reduces shrinkage.

Replenishment uses min/max rules. Odoo 20 suggests those levels based on demand history, adds a stock aging report and lets you assign landed costs (such as freight or import charges) to specific products (Odoo 20 release notes). These features aren't available in earlier versions.

Presales and van sales: what's native in Odoo and what requires third-party apps

In presales, the salesperson takes the order and another team delivers it later. In van sales (route sales), the truck leaves loaded and the salesperson sells, delivers and collects payment in the same visit.

Need Native in Odoo With third-party apps or development
Order with the customer's price list Yes, from a browser or phone —
Routes and visits per salesperson No Route modules
Truck stock Modeled as a location Van sales app
Sell, deliver and collect during the visit Not as a dedicated flow Van sales app
Working without a signal Odoo 20 creates and edits records offline Offline app

If you use third-party modules, check that they exist for your version and who maintains them. At KPB we evaluate them or develop whatever is missing, and for operating without a signal we offer Keep Operating, an offline app that syncs data automatically.

Distributor KPIs with formulas

KPI Formula What it tells you
Fill rate Units shipped ÷ units ordered × 100 How much of what's ordered you deliver
Inventory turnover Cost of goods sold ÷ average inventory value How many times you sell through your stock
Days of inventory Days in the period ÷ turnover How long your stock lasts
Stockout rate Active products out of stock ÷ active products × 100 What share of your assortment you can't sell
Margin by customer or product (Net sales − cost) ÷ net sales × 100 Which customers and products make money
Days sales outstanding (DSO) Accounts receivable ÷ credit sales × days in the period How long it takes you to collect

With Keep BI you see them in prebuilt dashboards inside Odoo, such as “Sales One-Pager,” “Profitability,” “Shipping Status & Performance” and “Collections.” There are plans with 3, 5 or 10 dashboards (10, 15 or 25 UF + VAT per month; the UF is Chile's inflation-indexed unit of account), with setup in 7 days.

Alerts and automation: low margins, maxed-out credit, stockouts and orders that come in by WhatsApp or email

Keep Checking, our alerts module for Odoo, includes these for distributors:

  • “Sale with a margin below X%” and “Customers with no available credit”
  • “Out-of-stock products” and “Products projected to run out of stock”
  • “Late deliveries,” “Incomplete pickings” and “Sales orders not yet invoiced”

Plans range from up to 10 to up to 100 alerts (3 to 10 UF + VAT per month), with setup in 7 days. In the quote builder you put together your selection and request your quote. To define thresholds, read automated threshold alerts.

Another leak is orders that arrive by WhatsApp, email or PDF: with KPB's custom AI assistants and agents, an agent reads the message, identifies the customer and products, and leaves the sales order as a draft for a person to confirm (the PDF case is covered in AI document processing). We also integrate Vambe (AI agents that sell and serve customers over WhatsApp, connected to Odoo CRM) and Fintoc (bank connectivity and automatic reconciliation in Odoo). To automate collections, see finance automation.

Why Excel and accounting software aren't enough, and how to implement Odoo in stages

Excel doesn't reserve stock and accounting software can't see the warehouse, so someone keys in the same data three times. Check the signs you need Odoo and the Odoo vs Excel comparison.

An ERP for distributors is best implemented in stages:

  1. Master data: products with packaging, customers with their RUT (Chilean tax ID), payment terms, credit limit and price list.
  2. Sales, warehouse and delivery: sales orders, picking and delivery guides, with SII certification in place.
  3. Invoicing and collections: invoice what shipped and reconcile payments.
  4. Field sales and channels: presales or van sales, a B2B store and WhatsApp.
  5. Control: alerts and dashboards built on reliable data.

For timelines and costs, read how to implement Odoo in Chile and how much it costs. If you sell to consumers, see Odoo for retail.

Why work with KPB Solutions

We're an Odoo Gold Partner, with 40+ KPBeers (as we call our team) and 70+ active clients in 6 countries. We design your distribution workflow, guide you through SII certification and add alerts, dashboards and integrations once the foundation is working. Learn about our Odoo implementation service.

Want to get your distribution business in order, from presales to collections? Book a meeting and we'll review your operation.

FAQ

Frequently asked questions

What is a distributor?

It's the link between the manufacturer or importer and the retailer: it buys in volume, stores the goods and resells them to other businesses in smaller quantities, usually with credit and delivery included. Unlike retail, which sells to consumers in a store, a distributor sells business to business (B2B), with customer-specific pricing and collections on credit terms.

What should distribution software include?

At a minimum: customer-specific and volume price lists, credit control, multi-warehouse inventory with lots and expiration dates, order picking, the electronic delivery guide (guía de despacho), invoicing of what was shipped and collections follow-up. Odoo covers that flow natively; the electronic delivery guide requires Odoo Enterprise with the Chilean localization.

Does Odoo issue the SII electronic delivery guide?

Yes. Odoo's official Chilean localization includes the Chile - E-Invoicing Delivery Guide module, which generates the guide (DTE 52) from the validated delivery order and sends it to the SII (Chile's tax authority). That module is part of Odoo Enterprise, requires the Inventory app and your own CAF (folio authorization files issued by the SII) for delivery guides, and only works if your company has already passed SII certification.

Does Odoo support presales and van sales?

Not as a dedicated official app. Odoo natively includes the quotations, price lists, inventory and invoicing a presales rep uses, but route planning, truck stock and selling with payment collection during the visit are handled with third-party modules or custom development. It's worth evaluating those apps for your Odoo version before choosing.

How do you manage customer-specific price lists in Odoo?

You create a price list per channel or customer type (for example, wholesale, convenience store or institutional) and assign it on each customer's record. Within the list you define rules by product, category or variant, with a minimum quantity for volume discounts and validity dates. That way the quotation picks up the right price automatically and the salesperson doesn't have to remember it.

Which KPIs should a distributor track?

The most useful are fill rate (how much of what's ordered you ship), inventory turnover and days of inventory, stockout rate, margin by customer and by product, and days sales outstanding on receivables. The key is to agree on the formula for each one and calculate them with ERP data, not with hand-built spreadsheets.

Ready to put these ideas to work in your business?

Let's talk about your Odoo, BI or automation project. A team of 40+ KPBeers is ready to help.

Book a meeting
WhatsApp