Metadata-Version: 2.1
Name: odoo-addon-sale_partner_sale_contact
Version: 16.0.1.0.0.2
Summary: Add sale contact person field to quotations, orders, and invoices
Home-page: https://github.com/OCA/sale-workflow
Author: OpenStudio SAS, Odoo Community Association (OCA)
Author-email: support@odoo-community.org
License: LGPL-3
Classifier: Programming Language :: Python
Classifier: Framework :: Odoo
Classifier: Framework :: Odoo :: 16.0
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
Requires-Python: >=3.10
Requires-Dist: odoo<16.1dev,>=16.0a

.. image:: https://odoo-community.org/readme-banner-image
   :target: https://odoo-community.org/get-involved?utm_source=readme
   :alt: Odoo Community Association

=========================
Sale Partner Sale Contact
=========================

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

.. |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-LGPL--3-blue.png
    :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
    :alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--workflow-lightgray.png?logo=github
    :target: https://github.com/OCA/sale-workflow/tree/16.0/sale_partner_sale_contact
    :alt: OCA/sale-workflow
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
    :target: https://translation.odoo-community.org/projects/sale-workflow-16-0/sale-workflow-16-0-sale_partner_sale_contact
    :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/sale-workflow&target_branch=16.0
    :alt: Try me on Runboat

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

This module adds a **Sale Contact** field to quotations, sale orders, and invoices.

**Key concept — keep the company as customer, name the person who drives the deal**

In standard Odoo, ``partner_id`` is the commercial/legal counterpart of the
document: it drives the fiscal position, pricelist, payment terms, receivable
account and the invoice/shipping addresses. While it *can* technically hold a
child contact, using it to store the "contact person" forces an individual into
a field that is meant to represent the invoiced/contracted entity — polluting
analytic accounting and reporting.

This module addresses a *different need*: tracking a named **commercial contact
person** (e.g. procurement manager, project lead, key account contact) who is
the day-to-day point of contact for a deal, **while keeping the company as the
commercial entity** in ``partner_id``. That person travels consistently across
the sale order, its invoices, and (with the companion module) any generated
projects — something ``partner_id`` cannot guarantee, since each document
computes its own ``partner_id``.

Billing and shipping addresses remain independent and unaffected.

This distinction is also fully **compatible with B2C**: when the customer is
an individual without child contacts, the field simply remains empty and the
ordinary Odoo workflow is unchanged.

The sale contact field allows you to:

* Select a specific contact person for a sale order or quotation
* Automatically propagate the contact from sale order to generated invoices
* Display the contact person on PDF reports (quotations, orders, invoices)

The contact must be a child contact (person) of the selected customer.

**Table of contents**

.. contents::
   :local:

Configuration
=============

To configure the module:

#. Go to **Settings > Sales > Quotations & Orders**
#. Enable/disable **Display sale contact on reports**
#. This option is enabled by default
#. When enabled, the sale contact will appear on PDF reports for sale orders and invoices

Usage
=====

To use this module, follow these steps:

#. Go to *Settings > Sales > Quotations & Orders*
#. Enable the **Display sale contact on reports** option to show the sale contact on PDF reports (enabled by default)
#. Go to *Sales > Orders > Quotations* or *Sales > Orders > Orders*
#. Create or open a sale order
#. After selecting a customer, you can select a **Sale Contact** from the customer's child contacts
#. If the configuration option is enabled, the sale contact will appear on the printed quotation/order PDF
#. When you create an invoice from the sale order, the sale contact will be automatically copied to the invoice
#. If the configuration option is enabled, the sale contact will also appear on the printed invoice PDF

**Note**: Only contacts that are people (not companies) and are direct children of the selected customer will be available for selection.

**Auto-switch behavior**: If you select a contact person in the customer field and that person has a parent company, the system will automatically:

* Set the customer field to the parent company
* Set the sale contact field to the person you selected

This behavior only applies when the restriction modules (\*_partner_id_company_only) are not installed.

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/sale-workflow/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/sale-workflow/issues/new?body=module:%20sale_partner_sale_contact%0Aversion:%2016.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
~~~~~~~

* OpenStudio SAS

Contributors
~~~~~~~~~~~~

* Simon Maillard (maisim) <simon@ogesta.fr>

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.

.. |maintainer-maisim| image:: https://github.com/maisim.png?size=40px
    :target: https://github.com/maisim
    :alt: maisim

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-maisim| 

This module is part of the `OCA/sale-workflow <https://github.com/OCA/sale-workflow/tree/16.0/sale_partner_sale_contact>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
