Work Business systems

TMS PIM — AI translation management system

Product-catalogue translation turned from a copy-paste chore into a review-and-approve workflow, driven by an Azure AI translator trained on the company’s own product copy — and every human correction feeds back as training data.

An industrial product catalogue holds thousands of products, each with short text, long description and key selling points that all have to exist in a dozen languages. Off-the-shelf machine translation mangles domain terminology, and doing it by hand does not scale. The goal was to get the speed of machine translation and the judgement of a human expert, without the two fighting each other.

The TMS PIM translation queue: a target-market selector and empty pending-entities list on the left, and a prompt to select an entity to translate on the right

What it does

A market-driven queue. The translator picks a target market, and the app asks the PIM for exactly those products flagged as pending translation for it.

The target-market dropdown open, listing markets by code and locale — BA, CZ, DE, DK, EE, FI, GB, HR, IS, LT, LV, NL, NO, PL, RS, SK, SL — with DE highlighted

The pending-entities list loaded with six items for the German market: two products, a product group, and three copy-texts, each with its part number

On-demand AI translation. Selecting a product streams a live translation of every translatable field through a custom Azure AI Translator model trained on the company’s own product texts, so it already speaks the brand’s vocabulary rather than generic dictionary language.

The translation editor for a pallet truck: product photos across the top, then source English and target German side by side for product name, short text and long text, with read-only fields marked

Human review, side by side. Source and machine translation sit next to each other. The translator edits any field, with visual indicators for what has changed and a one-click reset back to the machine output.

The same editor with the German short-text field outlined as edited, and a Reload control alongside it

Approve back to the PIM. Approving writes the finished translations straight into the product record and clears that market from the product’s pending list, closing the loop in one click.

The translation editor with the Approve button in the top right highlighted

A translation memory that learns. When a translator improves a machine translation, that source-to-corrected pair is saved to a translation memory in the industry-standard TMX format. Over time it becomes a growing, searchable, editable corpus that both sharpens the custom model on retraining and serves as an audit trail.

The translation-memory browser listing language pairs — Swedish to English, and English to Latvian, Finnish, Danish and German — each with its translation count and last-modified date

Built for daily use. Real-time progress over server-sent events, a light and dark theme, and an environment watermark so nobody confuses TEST with PROD.

The same queue screen in light theme, with the theme toggle in the header highlighted and a TEST watermark across the working area

How it’s built

AreaTechnology
Web appASP.NET Core MVC (.NET 10)
FrontendBootstrap 5.3 with light and dark themes, jQuery, server-sent events for live progress
Machine translationAzure AI Translator with a custom model trained on in-house product copy
Product dataIntegration with the PIM over its API
Translation memoryTMX files, thread-safe with atomic writes
AuthMicrosoft Entra ID with a database-backed user allowlist
LoggingSerilog

Engineering highlights

  • A model that speaks the brand. Rather than accept generic machine-translation quality, the translator was trained on the company’s real, human-written product texts, which cut the editing burden on common phrasing dramatically.
  • English-pivot translation for unsupported pairs. For pairs the platform cannot train directly — Swedish to Norwegian, say — the system automatically pivots through English across two custom models sharing one category. Invisible to the user, and no code change per pair.
  • Config-driven multi-brand isolation. The same codebase runs as fully separate deployments for different brands, each with its own Azure resources, users and translation memory, purely through configuration. No fork, and no multi-tenancy risk.
  • The virtuous loop. A human correction does not just fix one product; it becomes training data. The tool gets measurably better the more it is used.

Impact

Translating the catalogue shifted from slow manual work to a quality-controlled pipeline where the machine writes the first draft and human experts spend their time only on refinement — with every refinement compounding into a smarter model and a richer translation memory.

aitranslationpimazuredotnetautomation

← Work