From 6a61f77ae5c2f6452936afc08daf3eec80f25f8a Mon Sep 17 00:00:00 2001 From: afma-odoo Date: Tue, 14 Jan 2025 13:05:32 +0100 Subject: [PATCH] [IMP] accounting: update invoice follow-up actions due to 18 update task-4260085 --- .../finance/accounting/payments/follow_up.rst | 158 +++++++++++------- .../payments/follow_up/debtor-level.png | Bin 6723 -> 0 bytes 2 files changed, 99 insertions(+), 59 deletions(-) delete mode 100644 content/applications/finance/accounting/payments/follow_up/debtor-level.png diff --git a/content/applications/finance/accounting/payments/follow_up.rst b/content/applications/finance/accounting/payments/follow_up.rst index 84624cb32..a150fda02 100644 --- a/content/applications/finance/accounting/payments/follow_up.rst +++ b/content/applications/finance/accounting/payments/follow_up.rst @@ -2,94 +2,134 @@ Follow-up on invoices ===================== -A follow-up message can be sent to customers when a payment is overdue. Odoo helps you identify late -payments and allows you to schedule and send the appropriate reminders using **follow-up actions** -that automatically trigger one or more actions according to the number of overdue days. You can send -your follow-ups via different means, such as email, post, or SMS. +Follow-up messages can be sent to customers when payments are overdue. Odoo helps identify late +payments and allows scheduling and sending the appropriate reminders using **follow-up actions** +according to the number of overdue days. Follow-ups can be sent through different methods, including +email, post, or SMS. .. seealso:: - - `Odoo Tutorials: Payment Follow-up `_ + - `Odoo Tutorials: Payment Follow-up `_ + - :doc:`/applications/finance/accounting/customer_invoices/payment_terms` + +.. _accounting/payments-follow-up/configuration: Configuration ============= -To configure a :guilabel:`Follow-Up Action`, go to :menuselection:`Accounting --> Configuration --> -Follow-up Levels`, and select or create (a) new follow-up level(s). Several follow-up actions are -available by default under the :guilabel:`Notification` tab, and the **name** as well as the -**number of days** can be changed. The follow-up :guilabel:`Actions` available are: +To configure :guilabel:`Follow-up actions`, go to :menuselection:`Accounting --> Configuration +--> Follow-up Levels`. In the :guilabel:`Follow-up Levels` list view, several follow-up levels and +actions are configured by default. -- :guilabel:`Send Email`; -- :ref:`Send a Letter `; -- :ref:`Send an SMS message `. +To modify a follow-up level, click on the record. From the form view, edit the +:guilabel:`Description` or adjust the number of days before a reminder is sent. In the +:guilabel:`Notification` tab, select :guilabel:`Actions` such as :guilabel:`Send Email`, :ref:`Send +a Letter `, and :ref:`Send SMS Message `. -You can use a pre-filled template for your messages by selecting a :guilabel:`Content Template`. To -change the template used, hover over the field and click the :guilabel:`-->`. If enabled, SMS -messages have a specific :guilabel:`Sms Template` field. +.. note:: + Sending letters or SMS messages in Odoo requires :doc:`In-App Purchase (IAP) + ` credit or tokens. -It is possible to automatically send a reminder by enabling the :guilabel:`Automatic` option, and -attaching the *open* invoice(s) by enabling :guilabel:`Attach Invoices`, within a specific follow-up -action. +To use a pre-filled template when sending an email or letter, select a :guilabel:`Content Template`. +To modify it, click the :icon:`oi-arrow-right` :guilabel:`(internal link arrow)` icon next to the +:guilabel:`Content Template` field. If enabled, SMS messages use a specific :guilabel:`Sms Template` +field that can be modified by clicking the :icon:`oi-arrow-right` :guilabel:`(internal link arrow)` +icon. -By clicking on the :guilabel:`Activity` tab, scheduling activities (tasks) is possible. That way, -an activity is automatically scheduled when the follow-up is triggered. To do so, enable -:guilabel:`Schedule Activity`, and select a :guilabel:`Responsible` person for the task. Choose an -:guilabel:`Activity Type`, and enter a :guilabel:`Summary` on how to handle the activity, if -desired. +Other options can be triggered in the :guilabel:`Options` section within the specific follow-up +level. + +- Automate the reminder with the :guilabel:`Automatic` option. +- :guilabel:`Attach Invoices` that are overdue in the reminder. +- :guilabel:`Add followers` on the related customer to receive notifications about any email reply + made on the reminder's email. + +In the :guilabel:`Activity` tab, enable the option to automatically schedule :doc:`activities +` when the follow-up level is triggered. Select the +:guilabel:`Responsible` person and the :guilabel:`Activity Type`, and enter a :guilabel:`Summary`. + +To add a new :guilabel:`Follow-up Level`, click :guilabel:`New` and fill in the fields. .. tip:: - Set a negative number of days to send a reminder before the actual due date. + Set a negative number of days to send a reminder before the invoice due date. -Follow-up reports -================= +.. _accounting/payments-follow-up/invoice-follow-ups: -Overdue invoices you need to follow up on are available in :menuselection:`Accounting --> Customers ---> Follow-up Reports`. By default, Odoo filters by :guilabel:`Overdue Invoices`, but you can also -filter by :guilabel:`In need of action` in the :guilabel:`Filters` menu. +Invoice follow-ups +================== -When selecting an invoice, you can see all of the customer's unpaid invoices (overdue or not), with -the due dates of late invoices appearing in red. You can exclude invoices from a reminder by -clicking :guilabel:`Exclude from Follow-ups`. You can set either :guilabel:`Automatic` or -:guilabel:`Manual` reminders as well as a :guilabel:`Responsible` person for that customer. +.. note:: + Reconcile all bank transactions before starting the follow-up process to prevent sending a + reminder to a customer who has already paid. -To send reminders, click on :guilabel:`Follow up`, and select the action(s) you want to perform -from: +To view all overdue invoices, go to :menuselection:`Accounting --> Customers --> Invoices`. In the +:guilabel:`Invoices` list view, click into the search bar and filter on :guilabel:`Overdue`. + +.. _accounting/payments-follow-up/follow-ups-for-one-customer: + +Follow-ups for one customer +--------------------------- + +For a detailed overview of a customer's invoice follow-up status, go to :menuselection:`Accounting +--> Customers --> Customers`. Open the customer's form and click the :guilabel:`Accounting` tab. In +the :guilabel:`Invoice follow-ups` section, click on the different levels to view the +:guilabel:`Follow-up Status` of each level. If actions are needed, click :guilabel:`Overdue +Invoices` to have a detailed list of the overdue invoices. + +Additional options can be set: + +- :guilabel:`Reminders`: :guilabel:`Automatic` or :guilabel:`Manual`. +- :guilabel:`Next reminder`: Date by which follow-up actions should be taken. This date is + automatically set when follow-ups are processed but can be manually adjusted if needed. +- :guilabel:`Responsible`: Person responsible for handling follow-up actions. + +To send a payment reminder to a customer, click :guilabel:`Send` and select the actions in the +:guilabel:`Send and Print` window: - :guilabel:`Print`; - :guilabel:`Email`; - :guilabel:`Sms`; - :guilabel:`By post`. -You can :guilabel:`Attach Invoices` and change the content templates from this view. When done, -click :guilabel:`Send` or :guilabel:`Send & Print`. +Enable the :guilabel:`Attach Invoices` option and change the :guilabel:`Content Template` if needed. +Then, click :guilabel:`Send` or :guilabel:`Send & Print`. + +.. seealso:: + :doc:`/applications/essentials/in_app_purchase` .. note:: - The contact information on the invoice or the contact form is used to send the reminder. - - When the reminder is sent, it is documented in the chatter of the invoice. - - If it is not the right time for a reminder, you can specify the :guilabel:`Next Reminder` date. - You will get the next report according to the next reminder date set. + - The chatter keeps a full record of all follow-up actions, and the person listed in the + :guilabel:`Responsible` field is automatically added as a follower. -.. tip:: - Reconcile all bank statements right before launching the follow-up process to avoid sending a - reminder to a customer that has already paid. +.. _accounting/payments-follow-up/follow-ups-for-all-customers: -Debtor's trust level --------------------- +Follow-ups for all customers due for action +------------------------------------------- -To know whether a customer usually pays late or not, you can set a trust level by marking them as -:guilabel:`Good Debtor`, :guilabel:`Normal Debtor`, or :guilabel:`Bad Debtor` on their follow-up -report. To do so, click on the bullet next to the customer's name and select a trust level. +After setting up the additional :ref:`follow-up +` options, review which customers have +overdue invoices or require follow-up. To do so, go to :menuselection:`Accounting --> Customers --> +Customers`. In the :guilabel:`Customers` kanban view, click the search bar and filter by +:guilabel:`Overdue Invoices` or :guilabel:`Requires Follow-up`. -.. image:: follow_up/debtor-level.png - :alt: Set debtor's trust level +To take follow-up actions for all relevant customers, click the :icon:`oi-view-list` +:guilabel:`(list view)` icon and select the customers who need follow-up. Then, click +:icon:`fa-cog` :guilabel:`(Actions)` and select :guilabel:`Process Follow-ups`. -Send reminders in batches -------------------------- +.. _accounting/payments-follow-up/customer-statement: -You can send reminder emails in batches from the :guilabel:`Follow-up Reports` page. To do so, -select all the reports you would like to process, click on the :guilabel:`Action` gear icon, and -select :guilabel:`Process follow-ups`. +Customer statement +================== -.. seealso:: - - :doc:`/applications/essentials/in_app_purchase` - - :doc:`/applications/marketing/sms_marketing/pricing_and_faq` - - :doc:`../customer_invoices/snailmail` +To get a comprehensive overview of a customer's account status, click the :guilabel:`Customer +Statement` smart button on the customer's form. This statement corresponds to the :ref:`Partner +Ledger ` report's portion specific to that customer. + +To send it to the customer, click :guilabel:`Send`, change the :guilabel:`Email Template` if needed, +and click :guilabel:`Print & Send`. + +To view the customer statements for multiple customers at once, select the customers from the +:guilabel:`Customers` list view, click :icon:`fa-cog` :guilabel:`(Actions)`, and select +:guilabel:`Open Customer Statements`. + +To create a PDF file, click :guilabel:`PDF`, and to make an XLSX file, click :guilabel:`XLSX`. diff --git a/content/applications/finance/accounting/payments/follow_up/debtor-level.png b/content/applications/finance/accounting/payments/follow_up/debtor-level.png deleted file mode 100644 index 7f628a1b650cf5785cd2b88abc6054ae85b5ce4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6723 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