Sitecore has been a top choice for enterprise digital experiences for a while. Sitecore lets you manage content in multiple languages under one item tree, with workflow and publishing support for each language. For global brands, this is a big deal, it is the backbone of their digital operation.
The problem comes when you need to translate content. You need a translation service for that, and the only way to bring one into Sitecore is through a Marketplace app. There is no built-in option and Marketplace app is the only way to do it.
The Translation Bottleneck Nobody Talks About
Translating content has always been painful. Even with modern AI translation platforms doing the heavy lifting on quality, the process around it has not changed much. A marketer or content editor identifies the fields that need translation, copies them out, submits them somewhere, waits, gets a result back, and pastes it into the target language version in Sitecore. Repeat for every page, every component, every language variant.
Typically, you either adopt a full third-party connector that locks you into one translation vendor and a specific workflow, or you build something custom and spend months maintaining it. That is the bottleneck XCentium set out to remove.
Introducing the Universal Content Translation App for Sitecore AI
The XCentium Content Translate app is built for Sitecore AI and available directly from the Sitecore Marketplace, a sidebar panel that lives inside Sitecore Pages. No separate tool, no export/import cycle, no context switching. Editors open the panel on any page and walk through a four-step wizard that takes them from selecting a translation service to seeing the translated content written back to Sitecore, all without leaving the authoring environment.
What makes it different from a traditional connector is the core design philosophy: service-agnostic, administrator-configurable, zero vendor lock-in. Think of it as a universal adapter for translation APIs. Today it ships with Azure AI Translator and DeepL, and more providers already on the roadmap. Adding a new provider is a matter of implementing a known interface not rebuilding the app. It is worth noting that each translation service may have its own nuances like workflows, token limits as well.

How It Works
From the marketer's perspective, the entire translation workflow lives inside a single sidebar panel in Sitecore AI Pages. Here is the end-to-end flow:

What makes this different from a standard connector:
- Zero vendor lock-in. The app treats translation providers as interchangeable. Azure AI Translator and DeepL ship today; adding a new provider requires writing a single adapter class the wizard, field selection, and write-back logic stay completely unchanged.
- Sitecore-managed configuration. Service credentials are stored as structured items under /sitecore/system/Settings/Content Translator/. Administrators configure once; editors pick from the list no editor ever touches an API key.
- Smart field classification. The panel automatically filters out system fields, GUIDs, date strings, image XML, and file references. Only the fields that have translatable human content appear in the list.
- API keys stay server-side. Credentials are never sent to the browser. All translation requests route through a server-side proxy, making it safe for enterprise deployments with strict credential management policies.
The Editor Experience: A Four-Step Wizard
Step 1: Select Your Translation Service
When an editor opens the panel on a page, the first thing they see is the service selection screen. The app queries the Sitecore settings tree and lists every configured translation service. Each service card shows a description and capability tags, so editors are not left guessing what "Azure" means in practice.
For DeepL, the app proactively loads the API configuration and immediately shows the account's character usage bar. Editors can see briefly how much of their monthly quota is still before committing to a translation job.
If a service is not configured in Sitecore, the panel falls back gracefully to a manual credential entry form. The API key is never stored in the browser or sent to Sitecore. It lives only in the session and is passed to the server-side proxy for each request.

Step 2: Choose Which Fields to Translate
After selecting a service, the panel fetches all translatable fields for the current page. This is where the field classification engine kicks in. The app parses the page's presentation definition to find not just the page item's own fields but also the datasource items backing each component on the page. Every Hero, every Rich Text block, every Promo. Their fields appear in a unified, deduplicated list.
Editors can filter by field type using toggles (Single Line, Multi-Line, Rich Text) and select exactly the fields they want to include. The field list groups fields by component, making it easy to translate the Hero section separately from the footer.
![Step 2 showing the component-grouped field list with checkboxes, field type filter toggles, and selected fields highlighted.]](https://edge.sitecorecloud.io/xcentium1e4f-xmcaccelera5e2a-production9df8-f063/media/Project/XCentium/Blogs/Blog-Screenshots/Image-4-of-Universal-Plug-and-Play-blog.png)
Step 3: Pick Your Target Language
Step 3 pulls the list of configured Sitecore languages directly from the Sitecore instance not from a hard-coded list inside the app. This means if your Sitecore environment has fr-CA, de-DE, and ja-JP configured, those are the exact options you see. No mismatches between what Sitecore knows and what the translation panel offers.
The source language is fixed to English (en) in this version, reflecting the typical enterprise pattern where English is the authoritative source of truth. The summary panel shows a count of the selected fields that will be translated.

Step 4: Translate, Review, and Apply
The last step is where the work happens. Clicking Translate All fires off parallel requests to the translation API through the server-side proxy one request per field, with real-time status indicators for each. Fields that fail can be retried individually or all at once.
Once translation completes, a side-by-side diff preview appears. For rich text fields, editors can toggle between the raw HTML view and a rendered preview, giving them confidence that formatting survived the translation pass.
When everything looks good, clicking Apply to Sitecore triggers the write-back flow: the app creates a new language version for each datasource item (if it doesn't already exist), waits for Sitecore to confirm the version is ready using exponential backoff polling, then writes all the translated field values in a single batch operation. The page canvas reloads automatically.


![screenshot of the success alert showing "X fields translated to [Language] and saved to Sitecore" with the "Translate Another Page" button.](https://edge.sitecorecloud.io/xcentium1e4f-xmcaccelera5e2a-production9df8-f063/media/Project/XCentium/Blogs/Blog-Screenshots/Image-8--of-Universal-Plug-and-Play-blog.png)
![screenshot of the success alert showing "X fields translated to [Language] and saved to Sitecore" with the "Translate Another Page" button.](https://edge.sitecorecloud.io/xcentium1e4f-xmcaccelera5e2a-production9df8-f063/media/Project/XCentium/Blogs/Blog-Screenshots/Image-9-of-Universal-Plug-and-Play-blog.png)
What This Looks Like in Practice
Here is an example end-to-end flow for a marketing team running a global campaign:
- Content manager opens a campaign landing page in Sitecore Pages.
- Opens the Content Translate panel from the sidebar.
- Selects Azure AI Translator (pre-configured by the Sitecore admin).
- Sees the Hero title, Hero subtitle, CTA button text, and Body copy fields pre-selected for translation. Unchecks the CTA button text because that is managed by a separate localization team.
- Selects French (Canada) as the target language.
- Clicks Translate All five fields translate in under three seconds.
- Reviews the diff preview, confirms the rich text body copy looks clean.
- Clicks Apply to Sitecore the French CA language version is created and populated automatically.
- Proceeds to publish the French version through the normal Sitecore workflow.
What used to take 15–20 minutes of copy-paste, version creation, and re-entry now takes under five minutes, with no risk of human error in the copy-paste step.
The Bigger Picture
What XCentium has built here is not just a translation tool. It is a pattern. The same architecture a service-agnostic wizard, administrator-managed configuration in Sitecore, server-side API proxying, and a tight SDK integration can be applied to any content enrichment workflow that touches external services.
The plug-and-play metaphor the product was built around is real point it at a new translation API, register the adapter, update the Sitecore settings tree, and editors get a new option in their service dropdown the next time they open the panel. No redeployment of the wizard. No retraining of the team.
For Sitecore customers who have been waiting for a first-class, vendor-neutral translation experience inside Pages this is it.

