eas-cli icon indicating copy to clipboard operation
eas-cli copied to clipboard

Problem with Apple 2FA SMS

Open lorddegenx opened this issue 1 year ago • 22 comments

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

  1. Set up a React Native/Expo project that requires iOS deployment
  2. Install EAS CLI (tested with versions 14.2.0 and 15.0.12)
  3. Configure the project for EAS Build with eas build:configure
  4. Run eas build --platform ios --profile production
  5. When prompted, enter Apple Developer account credentials
  6. 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

lorddegenx avatar Mar 01 '25 16:03 lorddegenx

Looks like it's an outage for "maintenance"

Image

https://developer.apple.com/system-status/

mphill avatar Mar 01 '25 17:03 mphill

@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.

lorddegenx avatar Mar 01 '25 20:03 lorddegenx

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.

jzizzo avatar Mar 02 '25 15:03 jzizzo

Still having issue using SMS, authenticate by device works for me now with [email protected]

aw65 avatar Mar 03 '25 04:03 aw65

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.

Image

aw65 avatar Mar 03 '25 05:03 aw65

@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.

lorddegenx avatar Mar 04 '25 01:03 lorddegenx

Hello, I am encountering same issue too, did anyone solved this ?

sobbey99 avatar Mar 07 '25 05:03 sobbey99

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.

Earnout avatar Mar 08 '25 23:03 Earnout

@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

aw65 avatar Mar 08 '25 23:03 aw65

What fixed this for me was running this in the terminal so it doesnt use KeyChain for the password. EXPO_NO_KEYCHAIN=1

HassaznAzmi avatar Mar 10 '25 04:03 HassaznAzmi

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.

allxie avatar Mar 11 '25 18:03 allxie

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.

xcellsior avatar Mar 13 '25 21:03 xcellsior

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.

xcellsior avatar Mar 14 '25 14:03 xcellsior

This fix worked for me as well, thanks @xcellsior .

  1. Signed out of an IPad that was using personal credentials
  2. Signed in with the account with apple development credentials on IPad
  3. 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
  4. Ran the eas submit -p ios (I ran the build without signing in since had previously done certificates and worked fine)
  5. At this point prompted eas prompted for me to choose device / 2factor and I chose device and was able to verify through the iPad.

renkuna avatar Mar 18 '25 05:03 renkuna

Can verify that @xcellsior 's solution worked perfectly!

yerffejytnac avatar Mar 18 '25 17:03 yerffejytnac

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.

allxie avatar Mar 27 '25 21:03 allxie

I'll never receive the code to my phone. Logging in on developer.apple.com does send the sms. What might be wrong?

rnnyrk avatar Apr 02 '25 19:04 rnnyrk

We are seeing this also, the CLI doesn't send the code but logging into developer.apple.com does send the code

lukebrandonfarrell avatar Apr 09 '25 15:04 lukebrandonfarrell

We are seeing this also, the CLI doesn't send the code but logging into developer.apple.com does send the code

Facing same issue.

metehandemir avatar Apr 09 '25 23:04 metehandemir

Same issue. Is there a solution? (eas-cli/16.6.1 win32-x64 node-v22.14.0)

mister-conor avatar May 19 '25 12:05 mister-conor

https://github.com/expo/eas-cli/issues/1725#issuecomment-2902536239

Using the App Store Connect API for authentication resolved the issue.

jamie0xgitc0decat avatar May 22 '25 20:05 jamie0xgitc0decat

Easiest workaround, login from other device on Apple Account and write the verification code from there in the terminal.

dijanasazdevskaz avatar Nov 24 '25 12:11 dijanasazdevskaz

@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

elizhabiboullah avatar Dec 31 '25 11:12 elizhabiboullah