Phone numbers that are always right.

Validate, standardize, and preview every phone number your team enters — with visible feedback, configurable formatting, and full support for extensions.

The problem

Contacts pile up with phone numbers typed a dozen different ways — some with country codes, some without, some with dashes or parentheses. Inconsistent data breaks SMS and VoIP integrations, hides duplicate contacts, and gets rejected by external exports. Worse, the one existing tool for this silently skips numbers it cannot parse, leaving bad data in place with no warning.

The solution

Reformat Phone Numbers validates every number against real country rules, standardizes it to the format your company chooses, and shows a live preview and clear error message right on the form. An admin-level toggle lets you enforce a canonical style or preserve each user's own formatting — and phone extensions are kept intact.

Capabilities

Everything you need to keep phone data clean

Every capability below is implemented in the module.

01

Country-Specific Validation

Every number is checked against real numbering rules for its country, catching malformed or impossible numbers before they reach your database.

02

Live Formatting Preview

As a number is typed, a debounced preview shows exactly what will be saved, so users see the result instead of guessing at it.

03

Default-Country Detection

Numbers entered without a country code fall back to the contact's own country, then your company's configured default country.

04

Standardized International Storage

Choose E.164, International, National, or RFC 3966 as your canonical storage format so SMS, VoIP, and export integrations always get a number they can use.

05

Inline Validation Errors

Invalid numbers show a clear, visible message right at the field — closing the silent-skip gap that leaves bad data unnoticed.

06

Configurable Separator Style

Pick spaces, dashes, no separators, or the library default for International and National formats, matching your own house style.

07

Standardize or Preserve

A single company setting lets you either enforce one canonical format everywhere or simply validate numbers and leave the user's own formatting untouched.

08

Formatted-Result Preview Wizard

A standalone Phone Formatter wizard lets anyone test a number, see the formatted result and validation message, and apply it to a contact with one click.

09

Phone Extension Support

Extension digits are recognized, preserved, and re-attached to the formatted number instead of being dropped or rejected.

Workflow

How it works

1

Configure Your Format

Set the storage style, separator, standardize-or-preserve mode, invalid-number policy, and default country from Settings.

2

Enter a Phone Number

Type or import a number on any contact — local, international, with or without an extension.

3

Review the Preview

A live preview and validity badge show exactly what will be saved before you commit the record.

4

Save With Confidence

The number is standardized (or preserved, per your setting) and stored consistently for every downstream integration.

Questions

Frequently asked

No sales fog. If your question isn't here, email us and we'll answer it the same way.

Validation and formatting cover every country recognized by the underlying numbering-plan library, the same engine Odoo's own phone validation uses — not a limited hand-picked list.

Get the app

Buy it on the Odoo App Store

Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.

Reformat Phone Numbers

Country-rule validation and standardized international storage for every phone number, with a live formatting preview, inline errors, configurable separators, and preserved extensions.

Buy on Odoo App Store