Skip to content
Odoo support plans from $425 a month · Installation and setup: Onboarding Pack, $350 one-offSee plans →Get a quote
PokutsoftPokutsoft
FranceSecurity, Data Quality & Audit
FR PII Masking & Pseudo icon

FR PII Masking & Pseudo

Mask & pseudonymise national IDs (NIR, NISS/INSZ, BSN) with role-based reveal and an access log

Odoo 20.0Odoo 19.0Odoo 18.0

Want FR PII Masking & Pseudo installed and configured for you? Onboarding Pack: $350 one-off

Support plans from $425 a month
Odoo 19.0
Also available for Odoo 18.0 and 20.0 · OPL-1 · English, French
FR PII Masking & Pseudo for Odoo

National identifiers kept masked, pseudonymised and logged

A vault for French NIR, Belgian NISS / INSZ and Dutch BSN numbers with checksum validation, salted pseudonyms, role-based reveal with an append-only log and field masking rules

Social-security and citizen numbers are stored in a vault instead of free text fields. Each identifier is checked with its national checksum, shown masked, and replaced by a salted HMAC pseudonym for exports. Only members of the reveal group can see a clear value, every reveal is written to an access log that cannot be edited or deleted, and masking rules can permanently mask chosen text fields of any model.

NIR / NISS / BSN Checksum on entry Salted HMAC pseudonyms Reveal group only Append-only access log Field masking rules

Key features

Identifier vault

French NIR (key 97 with the Corsica codes), Belgian NISS / INSZ (with the after-2000 rule) and Dutch BSN (11-test) are validated before they are stored; an invalid number is refused.

Masked by default

Lists and forms show a masked value; the clear value sits behind a technical group nobody belongs to and is only read by the module's code.

Reveal with a log

Members of PII Reveal can reveal a value; each reveal increments a counter and, when enabled, writes an access-log line with user, kind and reason. A reason can be made mandatory.

Append-only access log

Access-log entries cannot be modified or deleted, and per-user reveal statistics are available for monitoring.

Bulk pseudonymise

Paste one identifier per line (optionally with a subject label): valid numbers are stored, invalid ones are listed as rejected.

Pseudonym maps and masking rules

Build a map of pseudonyms per kind for exports, with clear values only for reveal users and logged; masking rules apply partial, full, e-mail or hash masking to text fields of any model.

Screenshots

Odoo 19.0 with the data of an office-furniture company in Lyon (Lefèvre Mobilier de Bureau SAS), English interface; the same screens apply to Odoo 18.0 and 20.0.

1. The identifier vault

French NIR, Belgian NISS and Dutch BSN numbers, checksum-validated and shown masked, with the reveal count.

FR PII Masking & Pseudo in Odoo: The identifier vault

2. Append-only access log

Every reveal with user, kind and the reason that was required.

FR PII Masking & Pseudo in Odoo: Append-only access log

3. Pseudonym map for exports

Salted HMAC pseudonyms per subject, without clear values.

FR PII Masking & Pseudo in Odoo: Pseudonym map for exports

4. Masking rules

Partial, e-mail and hash masking of text fields of any model.

FR PII Masking & Pseudo in Odoo: Masking rules

Why this app

✓ One place for national identifiers instead of copies in notes and spreadsheets.

✓ Exports carry pseudonyms, not the numbers.

✓ Every clear-text access is recorded and cannot be erased.

✓ French, Belgian and Dutch formats in the same vault.

Get started

1

Groups

Give PII Reveal only to the people who need clear values.

2

Store

Enter identifiers or bulk-pseudonymise a list.

3

Reveal

Reveal with a reason; the access log keeps the trace.

4

Export

Build pseudonym maps and set masking rules.

Questions

Is a pseudonym anonymous data?

No. A pseudonym is still personal data under the GDPR; it limits exposure in exports and screens.

Can the salt be changed?

Yes, by a settings administrator; pseudonyms are then recomputed with Re-pseudonymise.

En français

FR PII Masking & Pseudo conserve les NIR français, NISS / INSZ belges et BSN néerlandais dans un coffre : contrôle de clé, affichage masqué, pseudonyme HMAC salé, révélation réservée à un groupe et journal d'accès non modifiable.

  • Contrôle de la clé NIR, NISS et BSN à la saisie
  • Valeur en clair visible seulement par le groupe de révélation
  • Journal d'accès impossible à modifier ou supprimer
  • Pseudonymisation en masse avec rejet des numéros invalides
  • Règles de masquage des champs texte

Specifications

  • This page: Odoo 19.0 (also available for Odoo 18.0 and 20.0), Community and Enterprise
  • License: OPL-1
  • Languages: English, French
  • Depends on: base
  • Author: Pokutsoft, pokutsoft.com
  • Support: support@pokutsoft.com

Update date: 2026-10-30 · Version: 19.0.1.3.4

User guides (PDF)

Related modules