
Asc Subscription Localization
- 2.1k installs
- 934 repo stars
- Updated July 21, 2026
- rorkai/app-store-connect-cli-skills
This is a copy of asc-subscription-localization by rudrankriyam - installs and ranking accrue to the original listing.
asc-subscription-localization is a Claude Code skill that bulk-creates or updates localized subscription and in-app purchase display names across App Store Connect locales using the asc CLI for developers shipping iOS ap
About
asc-subscription-localization is an app-store-connect-cli-skills entry that uses the asc command-line tool to populate display names and descriptions for subscriptions, subscription groups, and in-app purchases across 37 App Store locales in one workflow. Developers reach for it when the same subscription metadata must appear in every language without opening App Store Connect for each locale. Preconditions include asc auth login or ASC_* environment variables plus existing subscription or IAP records to update. The skill eliminates repetitive manual localization clicks during pre-release App Store Connect housekeeping.
- Bulk-localizes subscriptions, groups, and IAPs in one command
- Supports 37 App Store locales including ar-SA, ja, zh-Hans, fr-FR and en variants
- Eliminates manual clicking through every language in App Store Connect
- Requires only ASC auth and an existing app ID
- Combines with asc CLI commands for full subscription workflow
Asc Subscription Localization by the numbers
- 2,056 all-time installs (skills.sh)
- +237 installs in the week ending Jul 28, 2026 (Skillselion tracking)
- Security screen: LOW risk (skills.sh audit)
- Data as of Jul 28, 2026 (Skillselion catalog sync)
npx skills add https://github.com/rorkai/app-store-connect-cli-skills --skill asc-subscription-localizationAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 2.1k |
|---|---|
| repo stars | ★ 934 |
| Security audit | 3 / 3 scanners passed |
| Last updated | July 21, 2026 |
| Repository | rorkai/app-store-connect-cli-skills ↗ |
How do you localize App Store subscriptions in bulk?
Instantly populate localized display names and descriptions for subscriptions and in-app purchases across 37 App Store locales.
Who is it for?
iOS developers with multiple subscriptions or IAPs who already use asc and need every App Store locale filled before submission.
Skip if: Developers without App Store Connect CLI auth configured or teams localizing only a handful of locales manually in the web UI.
When should I use this skill?
User wants to bulk-localize subscription or in-app purchase names across App Store Connect locales without manual per-language clicks.
What you get
Localized subscription group, subscription, and IAP display names and descriptions applied across all App Store Connect locales via asc.
- Localized subscription display names
- Localized IAP descriptions across locales
By the numbers
- Covers 37 App Store Connect locales for subscription and IAP localization
Files
asc subscription localization
Use this skill to bulk-create or bulk-update display names (and descriptions) for subscriptions, subscription groups, and in-app purchases across all App Store Connect locales. This eliminates the tedious manual process of clicking through each language in App Store Connect to set the same display name.
Preconditions
- Auth configured (
asc auth loginorASC_*env vars). - Know your app ID (
ASC_APP_IDor--app). - Subscription groups and subscriptions already exist.
Supported App Store Locales
These are the locales supported by App Store Connect for subscription and IAP localizations:
ar-SA, ca, cs, da, de-DE, el, en-AU, en-CA, en-GB, en-US,
es-ES, es-MX, fi, fr-CA, fr-FR, he, hi, hr, hu, id, it,
ja, ko, ms, nl-NL, no, pl, pt-BR, pt-PT, ro, ru, sk,
sv, th, tr, uk, vi, zh-Hans, zh-HantWorkflow: Bulk-Localize a Subscription
1. Resolve IDs
# Find subscription groups
asc subscriptions groups list --app "APP_ID" --output table
# Find subscriptions within a group
asc subscriptions list --group-id "GROUP_ID" --output table2. Check existing localizations
asc subscriptions localizations list --subscription-id "SUB_ID" --paginate --output tableThis shows which locales already have a name set. Only create localizations for missing locales.
3. Create localizations for all missing locales
For each locale that does not already have a localization, run:
asc subscriptions localizations create \
--subscription-id "SUB_ID" \
--locale "LOCALE" \
--name "Display Name"For example, to set "Monthly Pro" across all locales:
# One command per locale (skip any that already exist)
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "ar-SA" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "ca" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "cs" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "da" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "de-DE" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "el" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "en-AU" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "en-CA" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "en-GB" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "es-ES" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "es-MX" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "fi" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "fr-CA" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "fr-FR" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "he" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "hi" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "hr" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "hu" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "id" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "it" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "ja" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "ko" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "ms" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "nl-NL" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "no" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "pl" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "pt-BR" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "pt-PT" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "ro" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "ru" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "sk" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "sv" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "th" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "tr" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "uk" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "vi" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "zh-Hans" --name "Monthly Pro"
asc subscriptions localizations create --subscription-id "SUB_ID" --locale "zh-Hant" --name "Monthly Pro"4. Verify
asc subscriptions localizations list --subscription-id "SUB_ID" --paginate --output tableWorkflow: Bulk-Localize a Subscription Group
Subscription groups also have their own display name per locale (this is the "group name" shown to users in the subscription management sheet).
1. Check existing group localizations
asc subscriptions groups localizations list --group-id "GROUP_ID" --paginate --output table2. Create for missing locales
asc subscriptions groups localizations create \
--group-id "GROUP_ID" \
--locale "LOCALE" \
--name "Group Display Name"Optional: set a custom app name for the group:
asc subscriptions groups localizations create \
--group-id "GROUP_ID" \
--locale "LOCALE" \
--name "Group Display Name" \
--custom-app-name "My App"3. Verify
asc subscriptions groups localizations list --group-id "GROUP_ID" --paginate --output tableWorkflow: Bulk-Localize an In-App Purchase
IAPs have their own localization commands with the same pattern.
1. Resolve IAP ID
asc iap list --app "APP_ID" --output table2. Check existing localizations
asc iap localizations list --iap-id "IAP_ID" --paginate --output table3. Create for missing locales
asc iap localizations create \
--iap-id "IAP_ID" \
--locale "LOCALE" \
--name "Display Name"Optional description:
asc iap localizations create \
--iap-id "IAP_ID" \
--locale "LOCALE" \
--name "Unlock All Features" \
--description "One-time purchase to unlock all premium features"4. Verify
asc iap localizations list --iap-id "IAP_ID" --paginate --output tableUpdating Existing Localizations
To change the display name for existing localizations:
Subscriptions
asc subscriptions localizations update --id "LOC_ID" --name "New Name"Subscription Groups
asc subscriptions groups localizations update --id "LOC_ID" --name "New Group Name"In-App Purchases
asc iap localizations update --localization-id "LOC_ID" --name "New Name"To bulk-update, list existing localizations first, extract the IDs, then update each one.
Bulk-Localize All Subscriptions in an App
For a full app with multiple subscription groups and subscriptions:
# 1. List all groups
asc subscriptions groups list --app "APP_ID" --paginate
# 2. For each group, localize the group itself
# (repeat group localization workflow above)
# 3. For each group, list subscriptions
asc subscriptions list --group-id "GROUP_ID" --paginate
# 4. For each subscription, localize it
# (repeat subscription localization workflow above)Agent Behavior
- Always list existing localizations first to avoid duplicate creation errors.
- Skip locales that already have a localization; only create missing ones.
- When the user provides a single display name, use it for all locales (same name everywhere).
- When the user provides translated names per locale, use the locale-specific name for each.
- If a description is provided, pass
--descriptionon create. Otherwise omit it. - Use
--output tablefor verification steps so the user can visually confirm. - Use default JSON output for intermediate automation steps.
- After bulk creation, always run the list command to verify completeness.
- For apps with many subscriptions, process them sequentially per group to keep output readable.
- If a create call fails for a locale, log the locale and error, then continue with the remaining locales. After the batch completes, report all failures together so the user can address them.
Notes
- Subscription display names are what users see on the subscription management sheet and in purchase dialogs.
- Creating a localization for a locale that already exists will fail; always check first.
- There is no bulk API; each locale requires a separate create call.
- Use
--paginateon list commands to ensure all existing localizations are returned. - Use the
asc-id-resolverskill if you only have app names instead of IDs.
Related skills
How it compares
Use asc-subscription-localization for CLI bulk locale fills instead of one-off manual App Store Connect edits or general iOS localization of in-app UI strings.
FAQ
How many locales does asc-subscription-localization cover?
asc-subscription-localization fills subscription and in-app purchase display names and descriptions across 37 App Store Connect locales using bulk asc CLI commands instead of editing each language manually.
What auth does asc-subscription-localization require?
asc-subscription-localization requires App Store Connect CLI authentication via asc auth login or ASC_* environment variables before bulk-creating or updating subscription and IAP localization records.
Is Asc Subscription Localization safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.