Partner Archive Propagation
This module extends the native archiving mechanism for partners.
When archiving a company or parent contact, it will also handle its descendants according to business rules — with user control and safeguards.
Features
- Adds a new "Archive Contact and Children" button on the Partner form.
- Shows a wizard listing contact-type descendants before archiving.
- Automatically skips descendants linked to active users.
- Adds a technical Many2one field (propagated_from_id) that records which parent partner caused the automatic archiving, making propagation fully traceable and reversible.
- Ensures automatic unarchive propagation.
- Includes a system setting to enforce propagation even for non-UI actions (imports, RPC, automated jobs, etc.).
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Adds an "Archive Contact and Children" button on the contact form that lets you archive a company or parent contact together with its descendants, with a wizard to review and exclude contacts before confirming.
When you archive a company or parent contact, this module can also archive its child contacts in a controlled way.
- On the contact form, a new "Archive Contact and Children" button appears when the contact has children and is still active. Clicking it opens a wizard titled "Archive Contacts" that lists the contact-type descendants that will be archived. You can remove any line to keep that contact active, then press "Archive" to confirm.
- Descendants that are linked to active users are never archived automatically; instead a message is posted on the parent contact and, in the wizard, a warning notification lists the skipped contacts.
- Non-contact descendants (for example invoice or delivery addresses) are archived silently when the parent is archived through the wizard.
- Each automatically archived contact records which parent caused it through the "Archived Due To" field. When the parent is unarchived, those contacts are automatically restored and the field is cleared.
- A system setting "Force partner archive propagation outside UI" (in Settings) makes archiving done through imports, RPC or automated jobs also propagate to descendants.
- The standard archive action on the contact form archives only that contact, not its children.
Depends on
Required by other modules
Models and fields (4)
- res.partner · extends an existing modelpropagated_from_id (Archived Due To), show_prop_wizard_button
- res.config.settings · extends an existing modelpartner_archive_force_outside_ui (Force propagation outside UI)
- res.partner.archive.propagate.line · new modelname, email, phone, wizard_id, partner_id (Contact)
- res.partner.archive.propagate.wizard · new modelline_ids (Contacts to archive), 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. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 2 confirmed, 7 with no information of 9 versions.
Sources · Odoo 18.0
Confirmed on 2026-11-03 in branch 18.0 of OCA/partner-contact.
terminal Installation and usage
OCA documentation · Odoo 18.0Configuration
Source · Odoo 18.0- Go to Settings → Technical → General Settings → Partner Archive Propagate.
- Enable "Force propagation outside UI" to automatically apply propagation when partners are archived through automation or imports.
Usage
Source · Odoo 18.0This module provides two distinct ways to archive a company or parent contact.
Archive via the action menu (gear icon)
Clicking Archive in the gear (⚙) menu archives only the company itself. Child contacts, invoice/delivery addresses, and related partners are left completely untouched. Use this when you want a quick archive without touching any of the company's contacts.
> Note: This behaviour is consistent regardless of the Force propagation > outside UI system setting. The gear menu never propagates.
Archive via the "Archive Contact and Children" button
- Open a partner (company or main contact).
- Click the "Archive Contact and Children" button.
- Review the list of child contacts to be archived. Remove any row to keep that contact active after archiving.
- Confirm the action.
- Non-contact types (e.g., invoice/delivery addresses) are archived silently in the background — they do not appear in the list.
- Contact-type descendants appear in the wizard for review.
- Contacts linked to active users are automatically excluded from the list; a warning message is posted on the company.
If the company has no contact-type descendants, no wizard opens and the company (and its non-contact addresses) are archived immediately.
Unarchiving
Unarchiving also follows propagation rules: if a parent partner is unarchived, its propagated descendants are unarchived as well. Partners that were independently archived are not affected.
System setting: Force propagation outside UI
When Force propagation outside UI is enabled (under Settings), archiving a company via any non-UI path (imports, RPC calls, automated jobs, etc.) will also propagate to descendants, just as the wizard button does. This setting has no effect on the gear menu action.
No verified information in OCA: Installation.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
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.