OdooWiki OCA HUB

Partner Archive Propagate

partner_archive_propagate folder_open OCA/partner-contact open_in_new
Partner Management License: AGPL-3

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.0

Adds 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

base_setupmail
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-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation 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.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.

This 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.

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.