Skip to Content

Address Verification & Po

51.45 51.45

Instant digital delivery after payment confirmation.
License: OPL-1, every download is watermarked.
Terms and Conditions
Compatible with Odoo 18.0 · 19.0
OPL-1 license · Odoo 18.0 & 19.0
Address Verification & Po for Odoo — preview banner

Address Verification & Po

Validate & standardise addresses via your own Loqate/postcode key (BYOK)

Bad addresses quietly drain UK businesses: every malformed postcode is a failed delivery, a returned parcel, wasted postage and a frustrated customer — and the dirty data lingers in the CRM forever. This module validates and standardises contact addresses, scores their quality, and suggests a corrected, normalised version you apply to the contact in one click. A built-in Royal Mail / BS 7666 postcode validator works fully offline with zero external calls, while pluggable adapters add live lookups via postcodes.io, Loqate or a generic REST endpoint. Crucially it is bring-your-own-key: you configure your own provider credentials, so the relationship and per-call spend stay yours, with no keys shipped and no liability on the publisher. eCommerce, delivery, sales and data teams get verified postcodes, standardised addresses and a clear quality flag for data-cleansing campaigns.

Key Features

Offline Royal Mail Postcode Validator

postcode_util implements the full BS 7666 / Royal Mail regex (including the GIR 0AA special case). is_valid_postcode and normalise_postcode validate, re-space and upper-case any UK postcode with zero external calls, so basic validation always works out of the box.

BYOK Provider Configuration

res.company carries address_provider_type, endpoint, key and country bias. Your own credentials are stored on the company and never shipped with the module, so the provider relationship and per-call billing stay entirely yours.

Pluggable Provider Adapters

The ADAPTERS registry dispatches to postcodes.io (free, keyless UK lookup), Loqate/Addressy (BYOK), or a generic JSON REST endpoint. Each adapter degrades gracefully to the offline check on error, using only stdlib urllib — no extra dependency.

Verification Records with Applyable Suggestions

Every check creates a gb.address.verification storing the submitted snapshot, raw response, match score and a standardised suggestion. action_apply_to_partner writes the suggested zip, city, street and country back to res.partner in one click.

Computed Address Quality Scoring

The _compute_quality method grades each result verified, corrected, unverified or unmatched from the match flag, score and correction status, and stamps address_quality plus address_last_checked on the partner for needs-review filtering and cleansing campaigns.

Batch Verification Wizard

gb.batch.verify.wizard runs run_for_partner across a selection or up to 500 contacts, with options to skip already-checked records and auto-apply corrections. It returns counts of processed, verified, corrected and unmatched contacts plus the result list.

UK Postcode Area Reference & Coverage

gb.postcode.area seeds 120+ UK areas (e.g. SW -> London SW) with post town and nation. coverage_report aggregates how many contacts fall in each region, and partners derive postcode_area_code and post town automatically from their zip.

Provider Self-Test

action_test_address_provider pushes a known-good sample address (10 Downing Street, SW1A 2AA) through the configured adapter and shows the match result and score as a notification — a one-click way to confirm your BYOK key and endpoint work before going live.

Use Cases

A UK eCommerce SME validating delivery postcodes at data-entry to cut failed deliveries and returned parcels.
A CRM/data team running a one-off cleansing campaign over thousands of legacy contacts with the batch wizard.
A logistics business standardising city and postcode spacing before pushing addresses to a courier.
A finance team using their own Loqate key to verify customer billing addresses without per-call cost on the publisher.
An operations analyst reviewing the postcode-area coverage report to understand customer distribution by UK region.

Screenshots

Address Verification & Po — Verifications in Odoo

Verifications

Address Verification & Po — Batch Verify Addresses in Odoo

Batch Verify Addresses

Address Verification & Po — Postcode Areas in Odoo

Postcode Areas

Why Choose This Module

Bad addresses mean failed deliveries, returned goods and wasted postage. This module verifies and standardises contact addresses, scores their quality, and suggests a corrected version you apply in one click. Bring Your Own Key: configure your own Loqate, Postcodes.io or generic REST endpoint — no keys are shipped and no per-call cost falls on the publisher.

Specifications

  • Compatible: Odoo 18.0 / 19.0
  • License: OPL-1
  • Languages: English
  • Author: Pokutsoft
  • Dependencies: base, contacts
  • Support: support@pokutsoft.com

Update date: 2026-07-02