Editing checkout contact form labels (e.g., “City”) via API fails when using the Admin GraphQL translationsRegister mutation, which returns: “Locale cannot be the same as the shop’s primary locale.” This indicates the mutation does not allow updating translations in the shop’s primary locale.
Proposed workaround: create a secondary locale and update labels there. (Note: no confirmed method provided for changing primary-locale strings via GraphQL.)
Key challenge raised: Shopify’s “Translate & Adapt” app can edit values in the primary language, suggesting it may use a different API or internal mechanism. Participants ask which API the app uses to modify checkout/theme strings and how to achieve this programmatically.
Next steps and references:
Seek guidance on the Shopify developer forum for an official pathway or endpoint.
Related discussion linked about updating default (primary) locale with translationsRegister.
Status: unresolved. Open questions remain about an official API to edit checkout labels in the primary locale and the mechanism used by Shopify’s own app.
Summarized with AI on December 11.
AI used: gpt-5.
I’m trying to update the labels for some inputs on the checkout page via API (e.g. the “City” field in the contact info form). I can do it via the theme config on my shop settings page, but trying to modify it via Graphql (using translationsRegister) throws me this error:
message: "Locale cannot be the same as the shop's primary locale"
Am I missing a something? Is there a specific endpoint for this? thanks!
For updating labels on the checkout page, you might be encountering the error because the primary locale of your shop is set to the same locale that you’re trying to update. You cannot update these fields in the same locale as your shop’s primary locale. You need to create a separate locale for these changes.
For removing the product category, unfortunately, you cannot directly set it to nil or empty. The GraphQL API does not allow setting a relation to null directly. You would need to create a new category, assign the product to this new category, then delete the old category. However, do note that this might affect other products that might be associated with the old category.
Thanks for the explanation, @Liam .
The “Translate & Adapt” app is able to change values even in the primary language. What API is it using for the theme resource to change the strings for the checkout?