Technical preview

ISO 20022 Address Parser

Turn messy party-address text into structured ISO 20022 <PstlAdr> XML. A hybrid parser built for technical-preview and migration evaluation, not production compliance.

The preview app and its /api stay behind basic-auth.

iso20022-address-parser.raafetchoukri.com/demo/
The parser UI: a pasted German bank address on the left, and on the right a parsed result showing structured PstlAdr XML with valid and medium-confidence status chips.
router cleanup libpostal hints model post-model rules strict validation
The gate

Unstructured party addresses run out of road in 2026.

From November 2026, fully unstructured postal addresses are deprecated in CBPR+ ISO 20022 payment messages. Party address data, including customer records, beneficiary files, and message archives, needs structuring before that gate. This preview shows one hybrid approach to that conversion.

Nov 2026
CBPR+ structured-address expectation

Customer and beneficiary records
Message archives and repair queues
Reference-data and migration extracts
How it works

A hybrid parser, not a single model call.

Every input runs through a fixed pipeline. Statistical tools and deterministic rules handle the predictable parts; the model handles the messy parts; strict validation gates the output before you ever see it.

STAGE 01

Routing

Classify the input shape: pasted blob, MT-style block, CSV row, already-XML, or non-Latin script, then route it down the right path.

STAGE 02

Cleanup

Pre-model normalisation strips MT line-continuation artifacts, zero-width characters, and stray whitespace before anything is interpreted.

STAGE 03

libpostal hints

Statistical address parsing with libpostal, loaded and serving, proposes field hints that ground the model and guide abstention.

STAGE 04

Model inference

A fine-tuned 4B model, served on a private, token-gated Hugging Face Inference Endpoint, emits the structured <PstlAdr> block.

STAGE 05

Post-model rules

Country canonicalisation, postcode and PO Box handling, and town normalisation correct the common model slips deterministically.

STAGE 06

Strict validation

Well-formed XML and a strict PstlAdr schema check run before display. Official ISO 20022 XSD validation is not yet enabled in this preview.

Preview examples span Germany, the UK, India, Singapore, Russia, and Saudi Arabia. Batch review and bulk upload are not part of this preview.

Integration posture

Built as middleware, not a one-off prompt

The parser is designed to sit between legacy address sources and ISO 20022 message preparation. It takes messy party-address text, returns structured PstlAdr XML, and exposes review signals so teams can decide what to trust, what to route, and what still needs human review.

  • Fits the messy inputs teams already have
    Pasted address blocks, MT-style lines, CSV-style rows, already-XML fragments, and non-Latin scripts can enter the same workflow.
  • Structured output for downstream systems
    The result is not prose. It is a structured PstlAdr payload with field-level output, XML, diagnostics, and confidence signals that can be wired into review tools or migration pipelines.
  • Hybrid workflow, controlled boundaries
    The model is only one part of the flow. Routing, cleanup, libpostal hints, post-model normalisation, and validation gates make the workflow easier to inspect and safer to operate.
  • Review-first confidence
    Confidence bands are designed for triage, not autopilot. They help teams decide what can move forward and what should be sampled, reviewed, or rejected.
  • Abstention instead of invention
    When the input does not look like an address, the workflow can return "No address detected" instead of forcing a plausible-looking output.
  • Private backend path
    The browser never receives the model token or private endpoint URL. The page talks to same-origin API routes, while model access stays server-side.
Live diagnostics panel showing routing with libpostal confidence 1.00, well-formed XML and strict schema checks passing, official ISO 20022 XSD not yet enabled, and a runtime line naming the real model and the hf-inference-endpoint backend.
Live diagnostics: structured output, review signals, strict checks, XSD not yet enabled.
Data handling

What happens to what you paste.

The same posture is shown inside the app, on every screen.

How inputs are handled

  • The frontend talks only to its own same-origin /api endpoint.
  • Inputs are processed by the gated demo. For invited evaluation accounts, submissions and parser outputs may be logged for debugging and product improvement.
  • Links may include the current input in the browser URL fragment, so copied or shared links can contain it.
  • Nothing loads from a third party: no external scripts, fonts, analytics, or trackers.

Use public business addresses only

Use public business, bank, or organization addresses only. Do not submit personal data, account numbers, confidential payment records, internal repair cases, SSI records, or licensed bulk reference-data exports. This is a demonstration of address-structuring capability, not a production compliance system.

Open the technical preview.

See the hybrid parser run on real public business addresses, with the full routing, normalisation, and validation diagnostics shown for every result.

The preview app and /api stay behind basic-auth.