Localization
LCE models languages separately from localized resource content. Discover the languages configured for the tenant, then query or manage translation resources using the exact culture values supported by the environment.
Localization model
Language configuration
Language resources expose fields such as languageId, name, code and isDefault.
Translation resources
Translations connect a resource ID with a culture and localized fields such as name or description.
Localized presentation
The application selects the best available translation according to its channel and fallback policy.
Discover configured languages
POST /metadata/query/languages
{
"tenantId": 1,
"pageIndex": 0,
"pageSize": 50
}
Use returned language codes and the isDefault flag as configuration data. Do not hard-code a universal list of supported languages across every tenant.
Query translations by culture
POST /metadata/query/productTranslations
{
"tenantId": 1,
"productIds": [1201],
"cultures": ["en-US", "tr-TR"],
"pageIndex": 0,
"pageSize": 20
}
Product translation models can include localized fields such as name, shortDescription and longDescription. Other domains provide their own translation models and fields.
Language, culture and currency
| Concept | Example field | Purpose |
|---|---|---|
| Language | code, isDefault | Identifies an enabled language configuration for the tenant or application. |
| Culture | culture, cultures | Selects the localized representation attached to a translatable resource. |
| Currency | currencyId, code | Represents monetary configuration; it is not a substitute for a language or culture. |
| Currency translation | displayName, culture | Provides localized presentation text for a currency resource. |
Localization practices
- Use culture values exactly as returned or configured; preserve casing and separator format.
- Keep localized text in translation resources instead of duplicating the base resource.
- Do not assume that every enabled language has a translation for every resource.
- Define fallback behavior in the consuming application or project policy.
- Keep locale selection separate from currency and price-list selection.
- Cache language configuration carefully and refresh it when tenant settings change.