[BUG] Claude Pro subscription purchased via iOS App Store not recognized by Claude Code (subscriptionType: null)
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Claude Code returns 403 "Request not allowed" for users who purchased Claude Pro via iOS App Store. The credentials.json shows "subscriptionType": null, meaning Claude Code cannot verify the subscription. This affects all users in regions where direct credit card payment is difficult and iOS App Store is the primary payment method (e.g. China).
What Should Happen?
Claude Code should recognize subscriptions purchased via iOS App Store, or provide clear documentation that App Store subscriptions are not supported and direct users to purchase via claude.ai instead.
Error Messages/Logs
API Error: 403 {"error":{"type":"forbidden","message":"Request not allowed"}}
credentials.json: {"claudeAiOauth":{"subscriptionType": null, "rateLimitTier": null}}
Steps to Reproduce
"Purchase Claude Pro via iOS App Store → Install Claude Code on Windows → Run /login → Select option 1 → 403 error appears"
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.74
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
Use a third-party Anthropic-compatible API (e.g. Kimi/Moonshot) with the following settings in ~/.claude/settings.json:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.moonshot.cn/anthropic",
"ANTHROPIC_AUTH_TOKEN": "your-kimi-api-key"
}
}
Note: Use ANTHROPIC_AUTH_TOKEN (not ANTHROPIC_API_KEY), and the base URL must end with /anthropic (not /v1).
Keep auth.json and .credentials.json as empty {}.
Do NOT log in to any Anthropic account when using this workaround.
This issue has 9 comments on GitHub. Read the full discussion on GitHub ↗