Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
965d266
[ADD] hr_expense_invoice
pedrobaeza Mar 9, 2015
2981826
[IMP] hr_expense_invoice: Allow to create supplier invoice from expen…
pedrobaeza Nov 6, 2015
93b812c
[FIX] Fix issue with 2 invoices on the same partner and the same tota…
kryskool Oct 17, 2016
cd6a9f7
[MIG] hr_expense_invoice: Migration to 10.0
cubells Sep 27, 2017
b0e50e3
[MIG] hr_expense_invoice: Migration to 11.0
cubells Dec 11, 2018
2144186
Added translation using Weblate (German)
marylla Dec 18, 2018
7e2c01a
Translated using Weblate (German)
marylla Dec 18, 2018
3b0880f
[12.0][MIG] hr_expense_invoice
kittiu Apr 23, 2019
6dad7a3
[12.0][IMP] hr_expense_invoice
kittiu Jun 11, 2019
6ea7844
[12.0][IMP] hr_expense_invoice
kittiu Jun 13, 2019
b58aa23
Translated using Weblate (German)
marylla Jul 12, 2019
6e51707
Translated using Weblate (Spanish)
Jul 23, 2019
174f79f
[FIX] Avoid not intended warnings
MiquelRForgeFlow Nov 14, 2019
d37bf60
[IMP] hr_expense_invoice : black, isort
Saran440 Dec 5, 2019
c3006f5
[13.0][MIG] : hr_expense_invoice
Saran440 Dec 5, 2019
5a2a706
[IMP] hr_expense_invoice: onchange invoice
chienandalu Sep 14, 2020
6eb0d7d
[FIX] hr_expense_invoice: Reset taxes on invoice change
pedrobaeza Jan 21, 2021
45b20a7
[FIX] hr_expense_invoice: Proper analytic account field name
pedrobaeza Jan 23, 2021
c3e2733
[FIX] hr_expense_invoice: Set groups to invoice_id field in expense view
victoralmau Feb 3, 2021
89c1969
[OU-ADD] hr_expense_invoice: Migration scripts
pedrobaeza Feb 21, 2021
786ea9c
[OU-FIX] hr_expense_invoice: Proper syntax
pedrobaeza Feb 22, 2021
1b90766
[IMP] hr_expense_invoice: Docstring + convention on not overwriting self
pedrobaeza Mar 22, 2021
a87a982
- Do reconciliations per line, so don't group invoices from different…
victoralmau Mar 26, 2021
a1b6f6a
[FIX] hr_expense_invoice: Set empty tax_ids when create_invoice wizard
victoralmau Mar 26, 2021
2b77f6b
[IMP] hr_expense_invoice: Remove expense_create_invoice wizard accord…
victoralmau Mar 29, 2021
9b980ef
[IMP] : Add migration to prevent error related to many2many in Transi…
victoralmau Mar 30, 2021
705b85d
[IMP] hr_expense_invoice: Add button to create invoice from expenses
victoralmau Apr 7, 2021
ba70277
[FIX] hr_expense_invoice: Allow create invoice from invoice_id field
victoralmau Apr 7, 2021
e3a9395
[IMP] hr_expense_invoice: Prevent change invoice total when it's rela…
victoralmau Apr 8, 2021
279f868
[FIX] hr_expense_invoice: Force save unit_amount expense (when invoic…
victoralmau Apr 8, 2021
e6d16b1
[14.0][MIG] hr_expense_invoice
Saran440 Jul 21, 2021
986de00
[FIX] hr_expense_invoice: Assign the partner_id and account_id correc…
victoralmau Sep 30, 2021
90894d0
[FIX] hr_expense_invoice: Changes in the test to avoid errors in the …
victoralmau Sep 30, 2021
83ac372
[MIG] hr_expense_invoice: Migration to 15.0
nicomacr Jan 21, 2022
5ede4f4
[FIX] hr_expense_invoice: Resilient tests on multi-company
pedrobaeza Mar 16, 2022
7cdd71d
setting the name of a new invoice to / in order to maintain proper se…
MosabWadea Apr 2, 2022
a084c60
[FIX] hr_expense_invoice: do not display UoM and quantity label
LoisRForgeFlow May 25, 2022
8769c22
[IMP] hr_expense_invoice: Change _validate_expense_invoice() function…
victoralmau Oct 26, 2022
ce48fa3
[FIX] hr_expense_invoice: Change SavepointCase to TransactionCase
victoralmau Nov 15, 2022
28291cd
[IMP] hr_expense_invoice: Copy attachments from expense to invoice
victoralmau Mar 3, 2023
c3c0c3c
Added translation using Weblate (Italian)
mymage Jun 30, 2023
3dec857
Translated using Weblate (Italian)
francesco-ooops Oct 13, 2023
8465e12
Translated using Weblate (Spanish)
Ivorra78 Oct 29, 2023
c75a746
[MIG] hr_expense_invoice: Migration to 16.0
victoralmau Nov 22, 2023
e4af4d2
Translated using Weblate (Italian)
mymage Feb 23, 2024
330f816
[FIX+IMP] hr_expense_invoice: Proper accounting + UX
pedrobaeza May 15, 2024
4da5f48
Translated using Weblate (Italian)
mymage May 30, 2024
5ff3361
[IMP] hr_expense_invoice: pre-commit auto fixes
desdelinux Jul 15, 2024
4d29d38
[MIG] hr_expense_invoice: Migration to 17.0
Jul 15, 2024
dde3fd2
[FIX] hr_expense_invoice: Proper partner
TheCloneMaster Oct 21, 2024
eadb67c
[FIX] hr_expense_invoice: Fix tests
victoralmau Nov 27, 2024
9fced60
[MIG] hr_expense_invoice: Migration to 18.0
cav-adhoc Dec 12, 2024
030d137
[MIG] hr_expense_invoice: Continue migration to 18.0
david-banon-tecnativa Aug 13, 2025
9acf553
[FIX] hr_expense_invoice: Fix expense sheets with some invoices but n…
david-banon-tecnativa Aug 26, 2025
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
120 changes: 120 additions & 0 deletions hr_expense_invoice/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
================================
Supplier invoices on HR expenses
================================

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

.. |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/licence-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%2Fhr--expense-lightgray.png?logo=github
:target: https://github.com/OCA/hr-expense/tree/18.0/hr_expense_invoice
:alt: OCA/hr-expense
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/hr-expense-18-0/hr-expense-18-0-hr_expense_invoice
: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/hr-expense&target_branch=18.0
:alt: Try me on Runboat

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

This module should be used when a supplier invoice is paid by an
employee. It allows to set a supplier invoice for each expense line,
adding the corresponding journal items to transfer the debt to the
employee.

There are 2 ways to reference expense to invoice.

1. On expense, directly select one invoice.
2. On expense report, use button "Create Vendor Bill" to create one
invoice for multiple expenses.

**Table of contents**

.. contents::
:local:

Usage
=====

**Reference one invoice to an expense**

- Create an expense sheet.
- Add an expense line to sheet with an invoice_id selected or create one
new.
- Process expense sheet.
- On paying expense sheet, you are reconciling supplier invoice too.

**Create one invoice to multiple expenses**

- Create an expense sheet with one or multiple expense lines
- After approved, click button "Create Vendor Bill"
- Select multiple expense to create an invoice, and process it.
- New invoice will be create and link to the selected expense lines.
- Validate newly create invoice.
- On paying expense sheet, you are reconciling supplier invoice(s) too.

Known issues / Roadmap
======================

- Multiple payment terms for a supplier invoice are not handled
correctly.
- Partial reconcile supplier invoices are also not correctly handled.

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/hr-expense/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/hr-expense/issues/new?body=module:%20hr_expense_invoice%0Aversion:%2018.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>`__:

- Pedro M. Baeza
- Vicent Cubells
- Víctor Martínez

- Kitti Upariphutthiphong <kittiu@ecosoft.co.th>
- Rattapong Chokmasermkul <rattapongc@ecosoft.co.th>
- Saran Lim. <saranl@ecosoft.co.th>

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/hr-expense <https://github.com/OCA/hr-expense/tree/18.0/hr_expense_invoice>`_ 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 hr_expense_invoice/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

from . import models
19 changes: 19 additions & 0 deletions hr_expense_invoice/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright 2015-2021 Tecnativa - Pedro M. Baeza
# Copyright 2017 Tecnativa - Vicent Cubells
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "Supplier invoices on HR expenses",
"version": "18.0.1.0.0",
"category": "Human Resources",
"author": "Tecnativa, Odoo Community Association (OCA)",
"license": "AGPL-3",
"website": "https://github.com/OCA/hr-expense",
"depends": ["hr_expense"],
"data": [
"views/account_move_views.xml",
"views/hr_expense_views.xml",
"data/mail_message_subtype.xml",
],
"installable": True,
}
9 changes: 9 additions & 0 deletions hr_expense_invoice/data/mail_message_subtype.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="mt_expense_approved_inherited" model="mail.message.subtype">
<field name="name">Approved</field>
<field name="res_model">hr.expense.sheet</field>
<field name="default" eval="True" />
<field name="description">Expense report approved</field>
</record>
</odoo>
129 changes: 129 additions & 0 deletions hr_expense_invoice/i18n/cs_CZ.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * hr_expense_invoice
#
# Translators:
# Lukáš Spurný <lukasspurny8@gmail.com>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-23 03:45+0000\n"
"PO-Revision-Date: 2018-02-23 03:45+0000\n"
"Last-Translator: Lukáš Spurný <lukasspurny8@gmail.com>, 2018\n"
"Language-Team: Czech (Czech Republic) (https://www.transifex.com/oca/"
"teams/23907/cs_CZ/)\n"
"Language: cs_CZ\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"

#. module: hr_expense_invoice
#: model_terms:ir.ui.view,arch_db:hr_expense_invoice.view_move_form
msgid "<span>Expense</span>"
msgstr ""

#. module: hr_expense_invoice
#: model_terms:ir.ui.view,arch_db:hr_expense_invoice.hr_expense_sheet_form_view_inherit_sale_expense
msgid "Create Vendor Bill"
msgstr ""

#. module: hr_expense_invoice
#: model:ir.model,name:hr_expense_invoice.model_hr_expense
msgid "Expense"
msgstr "Výdaje"

#. module: hr_expense_invoice
#: model:ir.model,name:hr_expense_invoice.model_hr_expense_sheet
msgid "Expense Report"
msgstr "Zpráva o výdajích"

#. module: hr_expense_invoice
#: model:ir.model.fields,field_description:hr_expense_invoice.field_account_bank_statement_line__expense_ids
#: model:ir.model.fields,field_description:hr_expense_invoice.field_account_move__expense_ids
#: model:ir.model.fields,field_description:hr_expense_invoice.field_account_payment__expense_ids
#, fuzzy
msgid "Expenses"
msgstr "Výdaje"

#. module: hr_expense_invoice
#: model:ir.model.fields,field_description:hr_expense_invoice.field_hr_expense_sheet__invoice_count
#, fuzzy
msgid "Invoice Count"
msgstr "Faktura"

#. module: hr_expense_invoice
#. odoo-python
#: code:addons/hr_expense_invoice/models/hr_expense_sheet.py:0
#: model_terms:ir.ui.view,arch_db:hr_expense_invoice.hr_expense_sheet_form_view_inherit_sale_expense
#, fuzzy, python-format
msgid "Invoices"
msgstr "Faktura"

#. module: hr_expense_invoice
#: model:ir.model,name:hr_expense_invoice.model_account_move
msgid "Journal Entry"
msgstr ""

#. module: hr_expense_invoice
#: model:ir.model,name:hr_expense_invoice.model_account_move_line
msgid "Journal Item"
msgstr ""

#. module: hr_expense_invoice
#: model:ir.model.fields,help:hr_expense_invoice.field_account_bank_statement_line__source_invoice_expense_id
#: model:ir.model.fields,help:hr_expense_invoice.field_account_move__source_invoice_expense_id
#: model:ir.model.fields,help:hr_expense_invoice.field_account_payment__source_invoice_expense_id
msgid ""
"Reference to the expense with a linked invoice that generated thistransfer "
"journal entry"
msgstr ""

#. module: hr_expense_invoice
#: model:ir.model.fields,field_description:hr_expense_invoice.field_hr_expense__sheet_id_state
msgid "Sheet state"
msgstr ""

#. module: hr_expense_invoice
#: model:ir.model.fields,field_description:hr_expense_invoice.field_account_bank_statement_line__source_invoice_expense_id
#: model:ir.model.fields,field_description:hr_expense_invoice.field_account_move__source_invoice_expense_id
#: model:ir.model.fields,field_description:hr_expense_invoice.field_account_payment__source_invoice_expense_id
msgid "Source Invoice Expense"
msgstr ""

#. module: hr_expense_invoice
#: model:ir.model.fields,field_description:hr_expense_invoice.field_hr_expense__transfer_move_ids
msgid "Transfer Move"
msgstr ""

#. module: hr_expense_invoice
#: model:ir.model.fields,field_description:hr_expense_invoice.field_hr_expense__invoice_id
msgid "Vendor Bill"
msgstr ""

#. module: hr_expense_invoice
#. odoo-python
#: code:addons/hr_expense_invoice/models/hr_expense_sheet.py:0
#, python-format
msgid ""
"Vendor bill amount mismatch!\n"
"Please make sure amount in vendor bills equal to amount of its expense lines"
msgstr ""

#. module: hr_expense_invoice
#. odoo-python
#: code:addons/hr_expense_invoice/models/hr_expense.py:0
#: code:addons/hr_expense_invoice/models/hr_expense_sheet.py:0
#, python-format
msgid "Vendor bill state must be Posted"
msgstr ""

#. module: hr_expense_invoice
#. odoo-python
#: code:addons/hr_expense_invoice/models/account_move.py:0
#, python-format
msgid ""
"You can't change the total amount, as there's an expense linked to this "
"invoice."
msgstr ""
Loading