Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Sales
  3. Price Campaign v 19.0
  4. Sales Conditions FAQ

Price Campaign

by Xpedyt https://xpedyt.pl
Odoo

$ 11.46

v 19.0 Third Party
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Sales (sale_management)
• Discuss (mail)
• Invoicing (account)
Lines of code 520
Technical Name xpt_price_campaign
LicenseOPL-1
Websitehttps://xpedyt.pl
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Sales (sale_management)
• Discuss (mail)
• Invoicing (account)
Lines of code 520
Technical Name xpt_price_campaign
LicenseOPL-1
Websitehttps://xpedyt.pl
  • Description
  • License

Price Campaign

Schedule future price changes for products and pricelists — reviewed, approved, applied automatically, and rolled back when the campaign ends.

Overview

Updating prices in Odoo is a manual operation: someone opens each product, edits the sale price, and saves. There is no way to prepare a batch of changes in advance, no approval step to catch mistakes before they go live, and no automatic way to restore prices once a promotion ends.

Price Campaign solves all of this. Create a campaign, set a start date and an optional end date, then define as many price change lines as needed — each with a fixed price, a percentage increase, or a percentage decrease. Odoo applies the changes automatically on the start date. If you also set an end date, Odoo automatically rolls all prices back to their original values when that date arrives — no manual cleanup required.

Price Campaigns list view

Campaign lifecycle

Each campaign moves through a clear sequence of states:

  • Draft — the campaign is being built. Add or edit price change lines freely. The campaign has no effect on any prices at this stage.
  • Pending Approval — the campaign has been submitted for review. A To-Do activity is automatically created and assigned to the first active Sales Manager. The campaign cannot be applied until it is approved.
  • Approved — the campaign is cleared for application. Odoo will apply it automatically on the start date, or it can be applied immediately using the Apply Now button.
  • Applied — all price changes have been written. The applied date and the user who triggered the action are recorded. Rollback is available until the end date (if set) or for 30 days from the apply date.
  • Cancelled — the campaign was discarded, manually rolled back, or automatically expired when its end date passed.

Campaigns that do not require approval skip the Pending Approval state and can be approved directly from Draft.

Campaign form in Draft state with price change lines

Price change lines

Each line targets one product (or one pricelist item) and defines how its price should change. Three change types are supported:

  • Fixed Price — set an exact new price regardless of the current value.
  • Increase by % — raise the current price by the given percentage.
  • Decrease by % — lower the current price by the given percentage.

Two computed columns — Current Price and New Price — are shown on every line so the user can see exactly what will happen before the campaign is applied. These values update live whenever the change type or value is edited.

The Add Bulk Lines button opens a wizard where a single change rule can be applied to multiple products at once. Choose specific products, a product category, or both — the wizard shows how many products match before generating the lines. One line per product is added to the campaign immediately.

Add Bulk Lines wizard with product category filter

Optional approval workflow

The Requires Approval checkbox on the campaign form controls whether a management review step is enforced. When enabled:

  • Submit for Approval transitions the campaign to Pending Approval and creates a To-Do activity assigned to the first active Sales Manager. The activity deadline is set to the campaign's start date (or today if the date has already passed).
  • The manager approves directly from the campaign form. Any open To-Do activities are marked as done automatically on approval.
  • A campaign with this flag cannot be approved directly from Draft — it must go through the submission step first.

When the flag is disabled, any user can approve the campaign directly without submitting it.

Campaign in Pending Approval state with Approve button visible to the manager

End date and automatic expiry

The optional End Date field defines when a campaign's price changes should stop being active. When an end date is set:

  • A daily cron job checks for applied campaigns whose end date has passed and automatically rolls back all prices to their values from before the campaign ran.
  • The Rollback button remains available on the campaign form right up until the end date, giving the team a manual option to revert early if needed.
  • After rollback, the campaign transitions to Cancelled and a chatter note records that the prices were automatically restored.

This makes the module suitable for time-limited promotions: set a start date and an end date, and the entire price change lifecycle — apply and revert — runs without any manual steps.

If no end date is set, the Rollback button remains available for 30 days after the campaign was applied. After that the button is hidden and any corrections must be made manually.

Price rollback

When a campaign is applied, each line records a snapshot of the price as it was before the change was written. This Was value is stored on the line and is never modified afterwards.

The Rollback button on the campaign form restores every product or pricelist item to its snapshotted value in a single operation, then transitions the campaign to Cancelled and posts a chatter note recording who performed the rollback.

Applied campaign with Rollback button and Was column showing original prices

Automatic application via scheduled jobs

Two daily cron jobs handle the campaign lifecycle automatically:

  • Apply campaigns — finds all approved campaigns whose start date is today or earlier and applies them. Campaigns can also be applied immediately at any point after approval using the Apply Now button.
  • Expire campaigns — finds all applied campaigns with an end date that has passed and rolls back their price changes automatically.

Each campaign is processed inside its own savepoint. A failure in one campaign is logged and does not block the others in the same run.

Product prices and pricelist items

The Apply To field on the campaign determines which price is updated when a line is applied:

  • Product Sale Price — updates the standard sale price on the product template.
  • Pricelist Items — updates the fixed price on a specific pricelist item. Select the target pricelist on the campaign and link each line to the correct pricelist item.
  • Both — if the line has a pricelist item linked, that is updated; otherwise the product sale price is updated.

Requirements

  • Odoo 19
  • Module dependency: sale_management
  • Module dependency: product
Odoo Proprietary License v1.0

This software and associated files (the "Software") may only be used (executed,
modified, executed after modifications) if you have purchased a valid license
from the authors, typically via Odoo Apps, or if you have received a written
agreement from the authors of the Software (see the COPYRIGHT file).

You may develop Odoo modules that use the Software as a library (typically
by depending on it, importing it and using its resources), but without copying
any source code or material from the Software. You may distribute those
modules under the license of your choice, provided that this license is
compatible with the terms of the Odoo Proprietary License (For example:
LGPL, MIT, or proprietary licenses similar to this one).

It is forbidden to publish, distribute, sublicense, or sell copies of the Software
or modified copies of the Software.

The above copyright notice and this permission notice must be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with