OdooWiki OCA HUB

Overdue Invoice Reminder

account_invoice_overdue_reminder folder_open OCA/credit-control open_in_new
Accounting License: AGPL-3

This Odoo module is designed to send overdue invoice reminders to customers. It handles reminders by e-mail, letter and phone.

This module is an alternative to the OCA module account_credit_control. Why another module for invoice reminders ? Because the module account_credit_control is quite complex (we experienced that some users find it too complex and eventually stop using it) and its interface is designed to send massive volume of reminders.

This module has been designed from the start with the following priorities:

  • keep control: you must keep tight control on the overdue invoice reminders that you send. Overdue invoice reminders are part of the communication with your customers, and this is very important to keep a good relation with your customers.
  • usability: the module is easy to configure and easy to use.
  • no accounting skills needed: the module can be used by users without accounting skills. It can even be used by salesman!
  • multi-currency: if you invoice your customer in another currency that your company currency, the invoice reminders only mention the currency of the invoices. And if you invoice a customer with different currencies, the reminder is clear and easy-to-understand by your customer, with a total residual per currency.
  • multi-channel: supports overdue invoice reminders by e-mail (default), phone and letter.
  • simplicity: for the developers, the code is small and easy to understand.

The specifications written before starting the development of this module are written in this document (in French).

The module has one important limitation: it sends a reminder for an invoice when it has past it's Due Date (which is in fact the Final Due Date): if the invoice has a payment term with several lines, it won't send a reminder before the last term is overdue.

An overdue reminder for a customer always include all the overdue invoices of that customer.

The module supports a clever per-invoice reminder counter mechanism:

  • the reminder counter is a property of an invoice,
  • the reminder counter of each overdue invoice is incremented when sending a reminder by email or by post. It is not incremented for reminders by phone.
  • in an email or a letter, the subject will be Overdue invoice reminder n°N where N is the maximum value of the counter of the overdue invoices plus one.

There are two user interfaces to send reminders:

  • the one-by-one interface, which displays one screen for each customer that has overdue invoices, one after the other. You should use this interface when you have a reasonable volume of reminders to send (less than 100 overdue reminders for example). It gives you a tight control on the reminders and the possibility to easily and rapidly customize the reminder e-mails.
  • the mass interface, which displays a list view of all customers that have overdue invoices, and you can process several reminders at the same time (via the Actions menu).

This video tutorial in English will show you how to configure and use the module: Youtube link.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Send and track overdue invoice reminders to customers by e-mail, letter or phone. Odoo proposes which customers to remind, keeps a history of every reminder and blocks reminders when configured.

This module helps you chase unpaid customer invoices without needing accounting expertise. From a wizard you choose customers and salespeople, a trigger delay (how many days an invoice must be overdue) and a minimum delay since the last reminder; Odoo then proposes the customers to remind, sorted by the highest outstanding amount.

You can work one customer at a time or in a mass list. For each customer you pick the reminder type: - E-mail: a prepared message is generated from a template, you can add Cc contacts, and the overdue invoices can be attached as PDF. - Letter: you print an "Overdue Letter" report before validating. - Phone: you record a call result and notes, and can create a follow-up activity for a colleague.

Every reminder is logged in a history on the invoice and on the customer, with counters, dates, user, type and result. Invoices show whether they are overdue, the last reminder date and the reminder count. You can disable reminders on a specific invoice or customer, and set company defaults (trigger delay, minimum interval, wizard interface, contact to remind, attach invoices). The module adds menus for reminder counters, actions and results, and touches account.move, res.partner and res.company.

Depends on

account

Menus it adds

overdue_reminder_action_menuoverdue_reminder_result_menuoverdue_reminder_start_menu
Models and fields (11)
  • res.company · extends an existing modeloverdue_reminder_interface (Default Overdue Reminder Wizard Interface), overdue_reminder_start_days (Default Overdue Reminder Trigger Delay), overdue_reminder_attach_invoice (Attach Invoices to Overdue Reminder E-mails), overdue_reminder_partner_policy (Contact to Remind), overdue_reminder_min_interval_days (Default Overdue Reminder Minimum Interval)
  • res.partner · extends an existing modelno_overdue_reminder (Disable Overdue Invoice Reminder)
  • account.move · extends an existing modeloverdue, no_overdue_reminder (Disable Overdue Reminder), overdue_remind_sent, overdue_reminder_ids (Overdue Reminder Action History), overdue_reminder_counter (Overdue Reminder Count), overdue_reminder_last_date (Last Overdue Reminder Date)
  • res.config.settings · extends an existing modeloverdue_reminder_interface, overdue_reminder_start_days, overdue_reminder_attach_invoice, overdue_reminder_partner_policy, overdue_reminder_min_interval_days
  • overdue.reminder.step · new modeldate, state, counter (New Remind Counter), user_id, interface, mail_body, result_id (Call Result/Info), company_id, partner_id (Invoicing Contact), invoice_ids (Overdue Invoices), mail_subject (Subject), result_notes (Call Notes), activity_note (Note), partner_email, partner_phone, reminder_type (_reminder_type_selection), letter_printed, partner_mobile, create_activity, activity_summary (Summary), activity_type_id (Activity), activity_user_id (Assigned to), activity_deadline (Deadline), mail_cc_partner_ids (Cc), commercial_partner_id (Customer), warn_unreconciled_move_line_ids (Unreconciled Payments/Refunds)
  • overdue.reminder.start · new modeluser_ids (Salesman), interface (Wizard Interface), company_id, start_days (Trigger Delay), partner_ids (Customers), payment_ids, partner_policy (Contact to Remind), min_interval_days (Minimum Delay Since Last Reminder)
  • overdue.reminder.action · new modeldate, mail_cc, mail_id (Reminder E-mail), user_id (Performed by), result_id (Info/Result), company_id (Company), mail_state (E-mail Status), partner_id (Contact), reminder_ids, result_notes (Info/Result Notes), reminder_type (Type), reminder_count (Number of invoices), commercial_partner_id (Customer)
  • overdue.reminder.result · new modelname, active, sequence
  • overdue.reminder.mass.update · new modelreminder_type (New Reminder Type), update_action
  • overdue.reminder.start.payment · new modelwizard_id, journal_id (Journal), last_entry_date (Last Entry), last_entry_create_uid (Last Entry Created by), last_entry_create_date (Last Entry Created on)
  • account.invoice.overdue.reminder · new modelcounter, action_id (Overdue Reminder Action), company_id, invoice_id (Invoice), action_date, action_mail_cc (Cc), action_mail_id, action_user_id, action_result_id, action_mail_state (E-mail Status), action_partner_id, action_result_notes, action_reminder_type, action_commercial_partner_id

Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 7 confirmed, 2 with no information of 9 versions.

Sources · Odoo 14.0

Confirmed on 2026-11-03 in branch 14.0 of OCA/credit-control.

terminal Installation and usage

OCA documentation · Odoo 18.0

Of course, before sending invoice reminders, you must import your bank statements and process them, so that you are up-to-date on customer payments.

Then, go to the menu Invoicing \> Customers \> Overdue Invoice Remind: you will get the start screen where you can:

  • filter the customers that you want to remind (filter by customer or by salesman),
  • check that your bank journals are up-to-date,
  • choose between the one-by-one and mass interfaces,
  • customize some parameters.

Then follow the process until the end.

You can also start the invoice reminder wizard via the button Overdue Reminder on an overdue invoice.

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.