Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
56724fc
[ADD] agreement_rebate: New module to manage agreement rebate sales
sergio-teruel May 13, 2020
60fbd78
[IMP] agreement_rebate: Add active fields in settlements
carlosdauden Mar 7, 2022
fdf7682
[IMP] Add partner_id as deafult _settlement_line_break_fields
sergio-teruel Mar 9, 2022
867c4af
[IMP] Add partner_id to settlement lines tree view
sergio-teruel Mar 9, 2022
b314f46
[IMP] agreement_rebate: Set partner_id to settlement lines
sergio-teruel Mar 9, 2022
98234d7
[IMP] agreement_rebate: Improvements
carlosdauden Apr 21, 2022
e36b3f0
[IMP] agreement_rebate: black, isort
sergio-teruel Nov 1, 2022
210bd34
[MIG] agreement_rebate: Migration to v15.0
sergio-teruel Nov 1, 2022
a12a92b
[IMP] agreement: Change menus structure to make it easy to adapt
Jan 26, 2023
16d2118
[MIG] agreement_rebate: Migration to 16.0
ao-landoo Jul 18, 2023
452999f
Translated using Weblate (Spanish)
Ivorra78 Sep 21, 2023
9b58a96
[FIX] aggrement_rebate: The type of movement is defined in the field …
pilarvargas-tecnativa Jan 31, 2024
3395d9e
Added translation using Weblate (Italian)
mymage May 2, 2024
3fbd355
[FIX] agreement_rebate: Settlements are excluded if any line has been…
sergio-teruel Jan 16, 2025
69077ad
[FIX] agreement_rebate: Settlement lines already invoiced are invoice…
sergio-teruel Jan 17, 2025
6328453
[IMP] agreement_rebate: pre-commit auto fixes
CarlosRoca13 Jan 28, 2025
ba6b48c
[MIG] agreement_rebate: Migration to 18.0
CarlosRoca13 Jan 29, 2025
f3bc1b5
[UPD] Update agreement_rebate.pot
Feb 3, 2025
794cd3c
[BOT] post-merge updates
OCA-git-bot Feb 3, 2025
05e068b
Update translation files
weblate Feb 3, 2025
53dfaa9
[IMP] agreement_rebate: neaten up rebate settlement view
Jul 16, 2025
d1b35cf
[REF] agreement_rebate: invoice creation revamp
ivantodorovich Aug 20, 2025
998726a
[UPD] Update agreement_rebate.pot
Sep 1, 2025
b861d3a
[BOT] post-merge updates
OCA-git-bot Sep 1, 2025
392485c
Update translation files
weblate Sep 1, 2025
f0d3209
[IMP] agreement_rebate: Improve test to create TestAgreementRebateBase
victoralmau Jul 2, 2025
da04442
[IMP] agreement_rebate: Define the sequence without company
victoralmau Jul 2, 2025
eddb441
[BOT] post-merge updates
OCA-git-bot Sep 1, 2025
84a6e9b
Translated using Weblate (Italian)
mymage Sep 2, 2025
27374e9
Added translation using Weblate (Swedish)
jakobkrabbe Nov 3, 2025
0bc7499
Translated using Weblate (Swedish)
jakobkrabbe Nov 4, 2025
5863708
[BOT] post-merge updates
OCA-git-bot Jan 13, 2026
3621263
[FIX] agreement_rebate: invoice_group is not in the context so is not…
CarlosRoca13 Jan 14, 2026
88e4d9c
[BOT] post-merge updates
OCA-git-bot Jan 15, 2026
4422f17
[MIG] agreement_rebate: Migration to 19.0
gdgellatly Feb 28, 2026
3f86b72
[IMP] agreement_rebate: fix rebate line form field alignment
gdgellatly Mar 3, 2026
ab1a9d9
[IMP] agreement_rebate: add multi-company record rules for settlements
gdgellatly Mar 4, 2026
ff4ebbf
[FIX] agreement_rebate: migrate read_group to _read_group for v19
gdgellatly Mar 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
138 changes: 138 additions & 0 deletions agreement_rebate/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

================
Agreement Rebate
================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:d83fe4ffc52b9efee072813e584b15f4d98f30ed9baab08b3c18460f47314736
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fagreement-lightgray.png?logo=github
:target: https://github.com/OCA/agreement/tree/19.0/agreement_rebate
:alt: OCA/agreement
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/agreement-19-0/agreement-19-0-agreement_rebate
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/agreement&target_branch=19.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module extends the functionality of agreement module to allow
define rebate conditions.

**Table of contents**

.. contents::
:local:

Usage
=====

To use this module you need to:

1. Go to a *Agreements > agreement*.

2. Create an agreement of type *Rebate agreement for sale*.

3. Set a rappel type.

Basic global rappel discount

|image|

Basic rappel discount by line items

|image1|

Section rappel discount rule match

|image2|

Calculate the discount in each amount section

|image3|

4. Create any rebate lines to apply this agreement.

Add a product template filter to apply this agreement

|image4|

5. Do some invoices of products included in any rebate agreement

6. Create rebate settlements from *Agreements > Settlements > Create
Settlements* wizard

|image5|

7. Create rappel invoices from *Agreements > Settlements > Create
Invoices* wizard

|image6|

.. |image| image:: https://raw.githubusercontent.com/OCA/agreement/19.0/agreement_rebate/static/img/agreement_discount_global.png
.. |image1| image:: https://raw.githubusercontent.com/OCA/agreement/19.0/agreement_rebate/static/img/agreement_discount_line.png
.. |image2| image:: https://raw.githubusercontent.com/OCA/agreement/19.0/agreement_rebate/static/img/agreement_discount_section_rule_match.png
.. |image3| image:: https://raw.githubusercontent.com/OCA/agreement/19.0/agreement_rebate/static/img/agreement_discount_section.png
.. |image4| image:: https://raw.githubusercontent.com/OCA/agreement/19.0/agreement_rebate/static/img/agreement_rebate_lines_filter.png
.. |image5| image:: https://raw.githubusercontent.com/OCA/agreement/19.0/agreement_rebate/static/img/create_settlements_wizard.png
.. |image6| image:: https://raw.githubusercontent.com/OCA/agreement/19.0/agreement_rebate/static/img/create_settlement_invoices.png

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/agreement/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/agreement/issues/new?body=module:%20agreement_rebate%0Aversion:%2019.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* Tecnativa

Contributors
------------

- `Tecnativa <https://www.tecnativa.com>`__:

- Carlos Dauden
- Sergio Teruel
- Carlos Roca

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/agreement <https://github.com/OCA/agreement/tree/19.0/agreement_rebate>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
3 changes: 3 additions & 0 deletions agreement_rebate/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from . import models
from . import wizards
28 changes: 28 additions & 0 deletions agreement_rebate/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Copyright 2020 Tecnativa - Carlos Dauden
# Copyright 2020 Tecnativa - Sergio Teruel
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
{
"name": "Agreement Rebate",
"summary": "Rebate in agreements",
"version": "19.0.1.0.0",
"development_status": "Beta",
"category": "Agreement",
"website": "https://github.com/OCA/agreement",
"author": "Tecnativa, Odoo Community Association (OCA)",
"license": "AGPL-3",
"application": False,
"installable": True,
"depends": ["account_invoice_refund_link", "agreement"],
"data": [
"data/agreement_rebate_data.xml",
"security/agreement_rebate_security.xml",
"security/ir.model.access.csv",
"views/agreement_condition_view.xml",
"views/agreement_view.xml",
"views/agreement_rebate_settlement_view.xml",
"views/agreement_type.xml",
"wizards/invoice_create_views.xml",
"wizards/settlement_create_views.xml",
"views/agreement_menu_view.xml",
],
}
20 changes: 20 additions & 0 deletions agreement_rebate/data/agreement_rebate_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo noupdate="1">
<record id="agreement_rebate_settlement_sequence" model="ir.sequence">
<field name="name">Agreement rebate settlement</field>
<field name="code">agreement.rebate.settlement</field>
<field eval="4" name="padding" />
<field name="prefix">ARS</field>
<field name="company_id" eval="False" />
</record>
<record id="agreement_type_rebate_sale" model="agreement.type">
<field name="name">Rebate agreements for sales</field>
<field name="is_rebate">True</field>
<field name="domain">sale</field>
</record>
<record id="agreement_type_rebate_purchase" model="agreement.type">
<field name="name">Rebate agreements for purchases</field>
<field name="is_rebate">True</field>
<field name="domain">purchase</field>
</record>
</odoo>
Loading
Loading