Negotiate Once, Deliver with Confidence

Manage long-term sales agreements with a fixed price and committed quantity, then release call-off orders against a live remaining balance — no re-keyed prices, no over-shipped commitments.

The problem

Sales teams that run annual supply agreements re-key the same negotiated price into every order and track the remaining commitment by hand. Nothing stops an order from exceeding what was actually agreed, so pricing disputes and over-shipped volume are only discovered after the fact.

The solution

Sales Blanket Order captures the agreement once — price, quantity, and validity period — then locks that price into every call-off order it generates. A live remaining-balance guardrail blocks or warns before any order exceeds what is left, so the commitment stays accurate from the first order to the last.

Capabilities

Everything a blanket agreement needs

Every capability below is implemented in the module.

01

Blanket Sales Agreements

Create multi-line agreements per customer with a fixed negotiated price, committed quantity, and validity period for each product.

02

Live Consumption Tracking

Ordered and remaining quantities recompute in real time from confirmed sale orders — never a manually maintained counter.

03

Over-Consumption Guardrail

Choose per agreement whether a call-off exceeding the remaining balance is blocked outright or allowed with a warning.

04

Guided Order Generation

A step-by-step wizard releases a chosen subset of lines and quantities into a new sale order with the negotiated price locked in.

05

Distribution Planner

Auto-split the committed quantity into an even monthly or quarterly release schedule between the order date and expiry, then adjust it by hand.

06

Consumption Dashboard

List and kanban views show committed, ordered, and remaining quantities with progress bars at a glance, grouped by agreement status.

07

Full Audit Trail

Every generated sale order links back to its blanket order and line, so the full history of an agreement's call-offs is always traceable.

08

Automatic Expiry

A daily scheduled action moves agreements past their validity date to Expired and notifies the owner with an activity.

09

Explicit Lifecycle

Draft, Open, Expired, Done, and Cancelled states with sequence-numbered documents keep every agreement's status unambiguous.

Workflow

How it works

1

Create the Agreement

Add product lines with committed quantities, negotiated prices, and a validity period for the customer.

2

Plan the Releases

Run the distribution planner to spread the committed quantity into a monthly or quarterly schedule.

3

Release Call-Off Orders

Use the guided wizard to release a subset of lines into a price-locked sale order, checked against the remaining balance.

4

Track to Completion

Watch progress bars update as orders confirm, until the agreement is fully consumed or its validity date expires.

Questions

Frequently asked

No sales fog. If your question isn't here, email us and we'll answer it the same way.

Each agreement has a configurable guardrail: set it to Block to stop the order outright, or Warn to allow it while flagging that the commitment has been exceeded.

Get the app

Buy it on the Odoo App Store

Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.

Sales Blanket Order

Negotiated pricing and committed quantities locked into every call-off, with live consumption tracking, an over-consumption guardrail, a distribution planner, automatic expiry and a full audit trail.

Buy on Odoo App Store