Azure AD B2C missing translations

Claudio 21 Reputation points
2021-08-15T11:49:48.13+00:00

Hello,

I am having issues with the localization of my Azure AD B2C authentication screens.

I have set up phone signup and social identity providers. I have also enabled the "Email Address" built-in attribute, and I have added a "Username" custom attribute.

When I am redirected to the main screen in Spanish (with ui_locales set to "es"), all works well:

123307-1-main-screen.png

But when I then visit the "Phone Registration" link, I see the following:

123361-2-register.png

Here, the "Email Address" attribute I've added is not translated. I have tried adding these missing translations as overrides to the "Phone signup page" in the "Languages" section (as I did for the "Username", which is correctly translated into "Nombre de Usuario"), but they are rejected with errors such as "The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: but_change_claims is not a valid override.", etc.

The country list is also not translated (should be "España", not "Spain"):

123335-2-register-country.png

Lastly, when I visit the link to change my phone number, I have the "Country" dropdown not translated (should be "País", not "Country"):

123352-3-change-phone-number.png

Please advise. Many thanks!

Microsoft Entra External ID
Microsoft Entra External ID
A modern identity solution for securing access to customer, citizen and partner-facing apps and services. It is the converged platform of Azure AD External Identities B2B and B2C. Replaces Azure Active Directory External Identities.
2,678 questions
0 comments No comments
{count} votes

2 answers

Sort by: Most helpful
  1. James Hamil 22,186 Reputation points Microsoft Employee
    2021-08-17T20:41:44.717+00:00

    Hi @Claudio , have you tried changing the resource json? This seems to be the easiest solution. If this doesn't work let me know and I can assist you further.

    Best,
    James

    0 comments No comments

  2. Claudio 21 Reputation points
    2021-08-18T07:20:43.307+00:00

    Hi @James Hamil , yes I have. Under "Phone signUppage" I uploaded an override with the following content:

    {  
      "LocalizedStrings": [  
        {  
          "ElementType": "ClaimType",  
          "ElementId": "extension_Username",  
          "StringId": "DisplayName",  
          "Override": true,  
          "Value": "Nombre de usuario"  
        },  
        {  
          "ElementType": "ClaimType",  
          "ElementId": "extension_Username",  
          "StringId": "UserHelpText",  
          "Override": true,  
          "Value": "El nombre de usuario para identificarse en la aplicación"  
        },  
        {  
          "ElementType": "DisplayControl",  
          "ElementId": "emailVerificationControl",  
          "StringId": "but_change_claims",  
          "Override": true,  
          "Value": "Cambiar correo electrónico"  
        },  
        {  
          "ElementType": "DisplayControl",  
          "ElementId": "emailVerificationControl",  
          "StringId": "but_send_code",  
          "Override": true,  
          "Value": "Enviar código de verificación"  
        },  
        {  
          "ElementType": "DisplayControl",  
          "ElementId": "emailVerificationControl",  
          "StringId": "but_send_new_code",  
          "Override": true,  
          "Value": "Enviar código nuevo"  
        },  
        {  
          "ElementType": "DisplayControl",  
          "ElementId": "emailVerificationControl",  
          "StringId": "but_verify_code",  
          "Override": true,  
          "Value": "Verificar código"  
        },  
        {  
          "ElementType": "DisplayControl",  
          "ElementId": "emailVerificationControl",  
          "StringId": "failure_send_code_msg",  
          "Override": true,  
          "Value": "Tenemos problemas para comprobar la dirección de correo electrónico. Escriba una dirección de correo electrónico válida y vuelva a intentarlo."  
        },  
        {  
          "ElementType": "DisplayControl",  
          "ElementId": "emailVerificationControl",  
          "StringId": "failure_verify_code_msg",  
          "Override": true,  
          "Value": "Tenemos problemas para verificar la dirección de correo electrónico. Vuelva a intentarlo."  
        },  
        {  
          "ElementType": "DisplayControl",  
          "ElementId": "emailVerificationControl",  
          "StringId": "intro_msg",  
          "Override": true,  
          "Value": "La comprobación es obligatoria. Haga clic en el botón Enviar."  
        },  
        {  
          "ElementType": "DisplayControl",  
          "ElementId": "emailVerificationControl",  
          "StringId": "success_send_code_msg",  
          "Override": true,  
          "Value": "Se ha enviado el código de verificación a su Bandeja de entrada. Cópielo en el siguiente cuadro de entrada."  
        },  
        {  
          "ElementType": "DisplayControl",  
          "ElementId": "emailVerificationControl",  
          "StringId": "success_verify_code_msg",  
          "Override": true,  
          "Value": "Dirección de correo electrónico verificada. Puede continuar."  
        }  
      ]  
    }  
    

    It gave me the following errors:

    9 Validation errors found in upload overrides for api.phoneSignUp. Please ensure that your uploaded resource matches the template: The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: but_change_claims is not a valid override.The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: but_send_code is not a valid override.The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: but_send_new_code is not a valid override.The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: but_verify_code is not a valid override.The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: failure_send_code_msg is not a valid override.The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: failure_verify_code_msg is not a valid override.The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: intro_msg is not a valid override.The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: success_send_code_msg is not a valid override.The localized string with ElementType: DisplayControl, ElementId: emailVerificationControl and StringId: success_verify_code_msg is not a valid override.

    Only the "Username" overrides were accepted. Please note that the "Email element" I was trying to override, I enabled it in the" user attributes" of my user flow. Perhaps that is the reason, as this element is not part of the default localization resource for the view. Then the question would be, how to translate those "additional" attributes.

    Thanks!

    0 comments No comments