I'm trying to test my app's in-app purchases but when I try to log in as my sandbox tester it tries to send me to the settings screen to sign in there. however as I understand it, wouldn't that invalidate the tester.
Steps in order as I did them:
1: Create sandbox tester account on iTunes connect
2: sign out of itunes and app store as well as iCloud
3: opened the app and tried to purchase something. was prompted, telling me to sign into an account.
4: Signed in using the test users credentials and still got redirected to the settings screen. What am I doing wrong?
According to some people on the apple developer forums, regarding this particular issue, of course, you need only to verify the account and it seems to have done the trick for me.
Related
I'm having some issues with sandbox users. According to Apple's docs
Important: If you mistakenly use a sandbox tester account to sign in to a production environment, like iTunes, on your test device instead of your test environment, the sandbox account becomes invalid and can’t be used again. If this happens, create a new sandbox tester account with a new email address.
In my case I haven't tried to login to the production environment with these accounts, but am still getting the invalidated somehow. It seems they will be good for a day or two, and for the first couple purchases and then stop working.
I'm getting back SKErrorDomain Code: 0 NSLocalizedDescription: Cannot connect to iTunes Storemost times when I try to purchase.
Most recently I even got "You are not authorized to make purchases of this InApp Purchase in Sandbox at this time. [Environment: Sandbox]"
I'm very flustered by these errors because it seems that it will work fine and then intermittently stop working. Has anyone found a way to successfully verify if an account is invalid, or found a way to get past these issues?
Each time I run into this problem, these steps typically clear it:
Make sure phone is signed out of all services (iCloud, App Store, everything)
Restart the phone.
Remove the app from phone and re-install via Xcode
When the app prompts for credentials during in-app purchase, enter sandbox credentials.
There is the very off chance that the sandbox account must accept some new terms from Apple. Log-into developer.apple.com and make sure you don't have any lingering alerts for that account.
Best of luck!
I'm not able to login into my new iPhone 6s(iOS 10.0.1) with this sandbox account for testing apple way. While able to login into web icloud, itunes and tested on my old iPhone 6+(iOS 10 beta 5).
Everytime try to login into iPhone 6s(iOS 10.0.1) I got this error message.
iTunes account creation not allowed
This apple ID cannot be used with the iTunes Stores at this time. Please try again.
Help me what to do, is this bug from Apple side
I have tried this many time. And getting same thing as you described. At last i were able to add test credit card for testing apple pay by following these steps:
Log out from your itunes and app store
Log out from iCloud
Change your region(Settings->general->Language and Region) to country which supports Apple pay
Now open Wallet app
You will be asked to login to iCloud account.
Login with your Sandbox Tester account
Now add Test credit cards to your account.
To get test credit cards details: You can check the cards details shown in this document: https://developer.apple.com/support/apple-pay-sandbox/
Note: When you add test credit cards, some credit cards detail might get failed in verification, then you have to try another one, Luckily you will be able to add after 3-4 tries.
You can't login to iTunes with a Sandbox account.
If you mistakenly use a sandbox tester account to log in to a production environment, like iTunes, on your test device instead of your test environment, the sandbox account becomes invalid and can’t be used again. If this happens, create a new sandbox tester account with a new email address.
I have an app in the App Store and I want to test in-app purchases. I followed the steps described on the Apple website but I'm facing some problems.
When I try to log in in the iTunes in my application or in Settings/iTunes & App Stores, I receive the error:
iTunes account creation not allowed.
This Apple ID cannot be used with the iTunes Store at this time. Please try again later
I searched the internet but I found nothing about this. It seems like I am the first to encounter this kind of error.
Looks like Apple has this poorly documented. Basically, you shouldn't log in with your sandbox user from that screen. Log in when actually prompted by your test IAP.
Source: Unable to log in with sandbox test users on device
I just had the same problem. Here's how I solved it:
Don't try to sign in Settings > iTunes & App Stores
Log out of iTunes & App Stores (make sure you're not logged into any account)
Just open the app you're trying to test
Your app will promt you to sign in
Enter your credentials for your sandbox test account
Et voilà! You're done. Worked for me. I hope it works for you.
For those who are still facing an issue, here is the solution:
From settings main screen, select "iTunes & App Store", as seen in the picture
now scroll to bottom and you will find your previous apple is still there, sign out of that, see picture for reference, and now when doing in app purchase, it will ask for both apple id and password, use your sandbox tester apple id and password there.
I had this issue. I tried changing existing Sandbox tester account password and tried to login on device...but didn't worked.
Even iPhone device restart didn't worked [last option that most developer follows ;-) ]
I thought it takes time to update this newly created Sandbox testing on DB. So left the login option as it is on device
Now, after launching app that contains In App purchase. Press on button that is responsible for In App purchase. This will prompt for Apple credentials. Enter the Sandbox tester credentials here.
Voila this worked for me!
This has changed... again. Here's how to fix it in 2020:
0) On your test device, go to Settings.
1) Click your account name at the the top, the one with "Apple ID, iCloud, iTunes & App Store" under it.
2) Click "iTunes & App Store"
3) Scroll all the way to the bottom and find the option: "SANDBOX ACCOUNT". It will have defaulted to your AppleID. Tap it and sign out.
4) Tap "Sign In" under SANDBOX ACCOUNT.
5) Add your Sand Box Account credentials. You will probably have to have verified your email address before this will work.
The top answer is correct, but if you're still having the issue:
Make sure that the app you're trying to log into is a development app installed with Xcode. You'll get the same error if your version was installed from the App Store.
(I got confused because I have 5 versions of almost the same app.)
I developed a Phonegap iOS app that implements In app purchase. As suggested here, I used a sandbox user in order to test the IAP during the development process in iOS, but i can not find a way to switch back to my personal account to authenticate the application.
At the start of the development process, i signed out with my personal account, i didn't login with my sandbox user in General > iTunes & App Store, i started the application and i logged in with my sandbox user from that.
It is time now to pass to production and i can not figure out how to logout the sand box user from my app. If i start the application a Sign In popup is displayed and the sandbox email is there. It simply ask for the password but now chance to change the account. When i login within the application the sandbox user account is logged in General > iTunes & App Store, but if i log out from there the application is stuck with the sandbox email. In other words, it is like if the app is now linked to that email account and it does not give me the chance to change it.
I tried to remove the application (tapping on it and pressing the X button and from General > Manage storage), install it again, to soft reset the iPhone, log out from iTunes & App Store, rebuild the application in debug mode or not, including the plugin or not, in many combination but with no success.
Does anybody experienced something like this? How did you logout your sandbox user when you switched back to your personal iTunes Connect account?
I'm not sure how it looks like on previous iOS versions, but on iOS 12.0 you can open:
Settings > Your Name (Apple ID, iCloud & App Store) > iTunes & App Store
There you will find a section called "SANDBOX ACCOUNT" where you can sign out of the sandbox account you've been using.
On iOS 14 & 15:
Go to Settings > App Store
Scroll down until the end and you'll find the title "SANDBOX ACCOUNT", there you'll see the sandbox account you are currently logged in to, tap over it and it will let you change it.
I have found 2 ways to avoid the problem but first be sure to use a "fresh" testing account.
Change the Bundle Identifier in Xcode and iTunes Connect
Restore the iPhone
I go for the first one because my Testing device is also my personal iPhone and I can't afford restoring every week.
I spent so much time on that so I hope my answer can help you.
I'm trying to make in-app (non-consumable) in my app.
I'm trying to buy the package but I can't...
Of course, I've looked here for answer, but I have one actual account everywhere - at developer.apple.com - also I've created provisioning profiles, at itunesconnect.apple.com and in Xcode as well...
My bundle identifier is the same across the all websites and application.
The Application finds my package and show me the price of it. When I click on BUY the alert view show the text:
You are not authorized to make purchases of this InApp in Sandbox at this time.
[Environment: Sandbox]
Any ideas please?
You can use In-App purchase test users, to test In-App purchase in sandbox mode.
Create test users in the "Users and Access" section of appstoreconnect.apple.com
Before testing In-App purchase, Using the Settings app, logout your actual Apple ID and login the test user account directly via your app. (DON'T login the test user via Settings app or AppStore.)
They used to have the real iTunes login and the Sandbox iTunes login grouped back in 2017. So you would sign in to your Sandbox account while testing purchases in the app, and then it would change your iTunes login as well. Then you'd have to sign out of your iTunes through settings. Now they have a separate field on the bottom of the Settings --> Itunes & App Stores screen (called "Sandbox Account"). You have to sign in there with a provisioned Sandbox account which is added in "Users & Access" in App Store Connect. (You have to also verify that email address, and it can not use a +postfix on the email address, IF that email is used as one of your non-sandbox main accounts... Sigh...) So you have to actually create new unique emails now that are not used as part of your main accounts. (From my understanding you can still use +postfixes on your emails which are only used for sandbox accounts though :)
Now, there's still a bug with purchases where If you are not signed in with your main Itunes account, OR your sandbox account, and you try to test purchases by typing in a sandbox account (in the app), it will keep asking you for your Sandbox Email / Password over and over again, Until you type in your REAL iTunes account as well (????). That works (typing in both the sandbox account and the real itunes account). Then the sandbox purchase goes through. I'm as surprised as you are...
If your apple account has a sandbox account user, after logging in with your account, follow these steps
Step 1 : Go to settings.
Step 2 : Select iTunes & Settings
Step 3 : Scroll to the bottom. There is a section for SANDBOX ACCOUNT
Step 4 : Sign in there using your Sandbox account
Now test your app & it will work fine.
First create a new account on sandbox which is on iTunes -> Users and access -> on left hand side click on sandbox and add account on it.
And then go to your testing device
Sign out previous id from Sandbox Account and click to add a new sandbox id which have added on Sandbox tester.
Thank you!
I have multiple Apple development organizations associated to my account on App Store Connect. The reason I was getting this error was because my Sandbox Tester was created in an organization that wasn't associated with the app I was testing.
I swear the organization was right when I was adding the Sandbox user, but I can't be sure. It never hurts to refresh App Store Connect an extra time and double check the Sandbox Tester is in the correct organization.
I had this issue as well when I accidentally tried to make an in app purchase on our TestFlight app using sandbox account credentials created in the App Store connect Sandbox Testers section. So if you are experiencing this issue just make sure you are using sandbox account credentials for your dev or staging apps. With the TestFlight app version you should use your real Apple ID credentials (you won't be charged of course as TestFlight still uses the Sandbox environment for in-app purchases).
For more information checkout https://developer.apple.com/documentation/storekit/original_api_for_in-app_purchase/testing_at_all_stages_of_development_with_xcode_and_sandbox
https://developer.apple.com/documentation/storekit/in-app_purchase/testing_in-app_purchases_with_sandbox
Try this check-list
Create test user #App Store Connect > "Users and Access" section. (Apple Doc - https://help.apple.com/app-store-connect/#/dev8b997bee1)
Logout older sandbox id from App Store & login new sandbox id, here is the steps for iOS & macOS
iOS: Open "Settings" > "App Store" > "SANDBOX ACCOUNT" (will be at bottom of screen)
macOS: Open "App Store" app > "Preferences.." > "Sandbox Account" section will be at bottom
First,make sure the account of your in test app is right.
Second,when you are working in the app,click the recharge button,and input the right account for testing.