Problem with Apple 2FA SMS
Build/Submit details page URL
No response
Summary
Hi guys,
I've been experiencing an issue uploading a new iOS build for the past week. Every time I try to create a new build, I get this error:
"Received an internal server error from Apple's App Store Connect / Developer Portal servers, please try again later. Apple service errors: Verification codes can't be sent to this phone number at this time. Please try again later. If you encounter persistent issues with Apple 2FA SMS authentication, you can try using these workarounds: https://expo.fyi/apple-2fa-sms-issues-workaround.md. Error: build command failed."
What I've Tried:
- Followed the workaround link and set up my device
- When trying to log in to my Apple account, it doesn't ask for a different authentication method after inputting my email
- Deleted ~/.app-store using rm -rf ~/.app-store, but this only forces me to re-enter my email before failing again
- Updated EAS CLI from 14.2.0 to 15.0.12, but the issue persists
Need Help Has anyone encountered this problem or can suggest a solution? I need to upload an improved build to the App Store as soon as possible.
Managed or bare?
Managed
Environment
npx expo-env-info
expo-env-info 1.2.2 environment info: System: OS: macOS 15.2 Shell: 5.9 - /bin/zsh Binaries: Node: 23.6.0 - /opt/homebrew/bin/node npm: 10.9.2 - /opt/homebrew/bin/npm Managers: CocoaPods: 1.16.2 - /opt/homebrew/bin/pod SDKs: iOS SDK: Platforms: DriverKit 24.1, iOS 18.1, macOS 15.1, tvOS 18.1, visionOS 2.1, watchOS 11.1 IDEs: Android Studio: 2024.2 AI-242.23339.11.2421.12700392 Xcode: 16.1/16B40 - /usr/bin/xcodebuild npmPackages: expo: ^51.0.38 => 51.0.39 expo-router: ~3.5.14 => 3.5.24 react: 18.2.0 => 18.2.0 react-dom: 18.2.0 => 18.2.0 react-native: 0.74.5 => 0.74.5 react-native-web: ~0.19.10 => 0.19.13 npmGlobalPackages: eas-cli: 15.0.12 Expo Workflow: bare
npx expo-doctor 14/14 checks passed. No issues detected!
Error output
No response
Reproducible demo or steps to reproduce from a blank project
Reproducible Steps to Replicate iOS Build Upload Issue
- Set up a React Native/Expo project that requires iOS deployment
- Install EAS CLI (tested with versions 14.2.0 and 15.0.12)
- Configure the project for EAS Build with eas build:configure
- Run eas build --platform ios --profile production
- When prompted, enter Apple Developer account credentials
- Observe the error: "Verification codes can't be sent to this phone number at this time"
Additional Information:
- The issue persists even after following the workaround at https://expo.fyi/apple-2fa-sms-issues-workaround.md
- Deleting authentication cache with rm -rf ~/.app-store does not resolve the issue
- The authentication flow never offers alternative 2FA methods
Looks like it's an outage for "maintenance"
https://developer.apple.com/system-status/
@mphill but its been like this for over a week for me.
On the status page it says they just started working on those things today.
I've been seeing the error for about a week now. It looks like Apple has completed maintenance. I'm seeing the error in the cli on iOS builds. I've see Apple make changes in the past that blocked iOS build pipelines and were sorted out with a cli upgrade. Thanks for any help here.
Still having issue using SMS, authenticate by device works for me now with [email protected]
I don't see a device login option - I did configure a trusted device. Where am I supposed to see this option?
(base) % EXPO_NO_KEYCHAIN=1 eas build -p ios //... ✔ Incremented buildNumber from 43 to 44. ✔ Using remote iOS credentials (Expo server) If you provide your Apple account credentials we will be able to generate all necessary build credentials and fully validate them. This is optional, but without Apple account access you will need to provide all the missing values manually and we can only run minimal validation on them. ✔ Do you want to log in to your Apple account? … yes › Log in to your Apple Developer account to continue ✔ Apple ID: … {REDACTED} › The password is only used to authenticate with Apple and never stored on EAS servers Learn more: https://bit.ly/2VtGWhU ✔ Password ({REDACTED}): … {REDACTED} › Skip storing Apple ID password in the local Keychain. ✔ Logged in, verify your Apple account to continue Internal Server Error: 'h', 'Received an internal server error from Apple's App Store Connect / Developer Portal servers, please try again later. Apple service errors: - Verification codes can’t be sent to this phone number at this time. Please try again later. If you encounter persistent issues with Apple 2FA SMS authentication, you can try using these workarounds: https://expo.fyi/apple-2fa-sms-issues-workaround.md.'. Retrying after 3 seconds (remaining: 3) ✖ Logging in... Authentication with Apple Developer Portal failed! Received an internal server error from Apple's App Store Connect / Developer Portal servers, please try again later. Apple service errors: - Verification codes can’t be sent to this phone number at this time. Please try again later. If you encounter persistent issues with Apple 2FA SMS authentication, you can try using these workarounds: https://expo.fyi/apple-2fa-sms-issues-workaround.md. Error: build command failed.
@aw65 How do you get it to allow you to validate with device?
Even when I try to build with EXPO_NO_KEYCHAIN=1 eas build -p ios after I put my password in, it says logged in and then goes directly to SMS verification and then fails.
✔ Do you want to log in to your Apple account? … yes
› Log in to your Apple Developer account to continue ✔ Apple ID: … xxxxx › Removed Apple ID password from the native Keychain › The password is only used to authenticate with Apple and never stored on EAS servers Learn more: https://bit.ly/2VtGWhU ✔ Password (for [email protected]): … ******* › Skip storing Apple ID password in the local Keychain. ✔ Logged in, verify your Apple account to continue
Internal Server Error: 'h', 'Received an internal server error from Apple's App Store Connect / Developer Portal servers, please try again later. Apple service errors:
- Verification codes can’t be sent to this phone number at this time. Please try again later. If you encounter persistent issues with Apple 2FA SMS authentication, you can try using these workarounds: https://expo.fyi/apple-2fa-sms-issues-workaround.md.'. Retrying after 3 seconds (remaining: 3)
✖ Logging in... Authentication with Apple Developer Portal failed! Received an internal server error from Apple's App Store Connect / Developer Portal servers, please try again later. Apple service errors:
- Verification codes can’t be sent to this phone number at this time. Please try again later. If you encounter persistent issues with Apple 2FA SMS authentication, you can try using these workarounds: https://expo.fyi/apple-2fa-sms-issues-workaround.md. Error: build command failed.
Hello, I am encountering same issue too, did anyone solved this ?
Hey!
i am currently facing the same issue.
I have tried quite a few things , the suggestion above, i tried updating new number to 2FA for apple developer account, i tried changing the versioning to exact version in the post and to the most upto date version.
@lorddegenx https://support.apple.com/en-us/102660 follow the instructions on this doc for apple 2FA, login the apple developer account (iCloud) on your own device (Macbook, iPhone, iPad) once you done this, rebuild the app and the device option should pop up
What fixed this for me was running this in the terminal so it doesnt use KeyChain for the password. EXPO_NO_KEYCHAIN=1
Having same issue. Started suddenly this week with no apparent change to my developer setup.
Verification codes can’t be sent to this phone number at this time. Please try again later.
I tried:
- Upgrading to eas-cli/15.0.14 (eas-cli/15.0.14 darwin-arm64 node-v20.18.0)
- Checking that my phone number exists on the correct profile
- I have logged into the apple developer account via web. I logged out and clicked "log out & trust." I logged back in.
Ran these:
-
rm -rf ~/.app-store/ -
EXPO_NO_KEYCHAIN=1 eas submit -p ios
I am not given any additional options to use device verification. The device option does not pop up.
I have this issue as well. Tried everything in this thread
expo-env-info 1.2.2 environment info: System: OS: Linux 6.8 Ubuntu 22.04.5 LTS 22.04.5 LTS (Jammy Jellyfish) Shell: 5.1.16 - /bin/bash Binaries: Node: 20.12.2 - ~/.nvm/versions/node/v20.12.2/bin/node npm: 10.5.0 - ~/.nvm/versions/node/v20.12.2/bin/npm npmPackages: expo: ^50.0.0 => 50.0.17 react: 18.2.0 => 18.2.0 react-native: 0.73.6 => 0.73.6 npmGlobalPackages: eas-cli: 15.0.15 expo-cli: 6.3.10 Expo Workflow: bare
Internal Server Error: 'h', 'Received an internal server error from Apple's App Store Connect / Developer Portal servers, please try again later. Apple service errors:
- Verification codes can’t be sent to this phone number at this time. Please try again later. If you encounter persistent issues with Apple 2FA SMS authentication, you can try using these workarounds: https://expo.fyi/apple-2fa-sms-issues-workaround.md.'. Retrying after 3 seconds (remaining: 3)
✖ Logging in... Authentication with Apple Developer Portal failed! Failed to set up credentials. Received an internal server error from Apple's App Store Connect / Developer Portal servers, please try again later. Apple service errors:
- Verification codes can’t be sent to this phone number at this time. Please try again later. If you encounter persistent issues with Apple 2FA SMS authentication, you can try using these workarounds: https://expo.fyi/apple-2fa-sms-issues-workaround.md. Error: build command failed.
I have logged into the apple developer account via web. I logged out and clicked "log out & trust." I logged back in. Ran these:
rm -rf ~/.app-store/ EXPO_NO_KEYCHAIN=1 eas build -p ios
I don't have a Mac or apple products generally.
I fixed it for myself by adding my work's testbed iphone to my apple account. https://account.apple.com/account/manage/section/devices
With this test iphone as a trusted device, I was able to use it for 2FA on eas. Running eas build --profile production --platform ios asked me whether I want device or sms 2FA. I chose "device" and then everything worked as normal.
This isn't a solution to SMS 2FA, just posting how I fixed my problem in case that helps someone else. If you don't have apple products generally, like me, I think you're still SOL.
This fix worked for me as well, thanks @xcellsior .
- Signed out of an IPad that was using personal credentials
- Signed in with the account with apple development credentials on IPad
- Logged into https://account.apple.com/account/manage/section/devices and saw that the ipad is listed as a device that can be used for authentication
- Ran the eas submit -p ios (I ran the build without signing in since had previously done certificates and worked fine)
- At this point prompted eas prompted for me to choose device / 2factor and I chose device and was able to verify through the iPad.
Can verify that @xcellsior 's solution worked perfectly!
Very frustrated that this could only be fixed with "buy a new apple product," but +1 on @renkuna and @xcellsior 's workaround working. To be clear, THIS IS A WORKAROUND not a solution. Please address this issue.
I'll never receive the code to my phone. Logging in on developer.apple.com does send the sms. What might be wrong?
We are seeing this also, the CLI doesn't send the code but logging into developer.apple.com does send the code
We are seeing this also, the CLI doesn't send the code but logging into
developer.apple.comdoes send the code
Facing same issue.
Same issue. Is there a solution? (eas-cli/16.6.1 win32-x64 node-v22.14.0)
https://github.com/expo/eas-cli/issues/1725#issuecomment-2902536239
Using the App Store Connect API for authentication resolved the issue.
Easiest workaround, login from other device on Apple Account and write the verification code from there in the terminal.
@rnnyrk @lukebrandonfarrell @mister-conor using the --non-interactive flag completely bypasses this issue when running npx eas-cli build --platform ios --profile production --non-interactive