Hi there,
I'm Tarek from RevenueCat Developer Support, thanks for reaching out.
I'm very sorry you're hitting this right at launch. I know the timing is the worst when your funnel is already sending people to the app.
I took a look at your app specifically, and I can confirm it's affected by the ongoing issue. Since around July 23rd, Apple's App Store Server API has been rejecting recently registered Bundle IDs, so newly created apps fail credential validation even when the key and configuration are completely fine. From what I can see, your setup is correct, nothing on your side caused this.
Is there a workaround for this?
There's no workaround on your side, unfortunately. Regenerating the key or recreating the app doesn't help. We've reported it to Apple, and their engineering team is investigating. I can't promise an ETA yet, but it's being actively worked on. You can follow updates here: status page incident.
One thing worth knowing: this isn't specific to RevenueCat. The same Apple backend also serves StoreKit product requests on the device, so a brand-new app would hit the same problem even without our SDK.
can I launch the app using RevenueCat's billing and paywalls while this issue is ongoing?
Partly. Our Web Billing and Web Purchase Links run on our own infrastructure and are not affected, so you can start selling on the web today. For example, you could point your acquisition funnel at a web checkout now and unlock access in the app when users sign in with the same account.
What I can't recommend is shipping the iOS app itself with web payments instead of In-App Purchases. Our understanding is that Apple still requires In-App Purchases to be available alongside any web payment offers (more on that in our FAQ), and In-App Purchases are exactly what's affected right now.
App Review would also likely hit the same product-loading failure, so I'd hold off on submitting until this is resolved.
Once Apple fixes this, your current setup will start working without any changes. You can re-run the credential check from the dashboard using the refresh icon next to the key.
Let me know if that makes sense and if there's anything else I can help with!
Have an excellent day.
Best regards,