iOS Standard SDK Integration - FAQs
Following are the list of frequently asked questions while integrating our iOS SDK. If none of the below mentioned question resolves your problem, you can contact the Support team for any queries.
I am getting an error "Razorpay contains unsupported Architecture x86_64" while submitting the archive to the app store. What should I do?
When a framework is distributed, it contains architectures of the simulators so that the consumer of the framework can build it on a simulator. However, when you are uploading the archive on iTunes, you have to strip these architectures. If you would have been using cocoapods, it strips the simulator architectures on its own. Since you are not using it, please follow the below mentioned steps:
- Download the script.
- Locate the directory in which Razorpay.framework is present in the archive that you are trying to upload.
- Move the attached script in the above directory and run it.
- Remove the script file.
I am seeing a message on the screen to update my SDK. Will my customers also see the message?
No. You are seeing the update SDK alert because a newer version of our SDK is available. It is highly recommended that you always use the latest SDK. You would see this message only when you are running the app on a simulator or using a test key to initialize the SDK.
I am getting an error
Image not loaded: .dyld. What should I do?
Please ensure that Razorpay.framework is present in both the
Linked Frameworksin your project settings. Also ensure that
Always Embed Swift Librariesis set to "yes" in the project settings. Please note, this issue might also arise because of incompatibility of the Swift version with which Razorpay.framework is developed and the Swift version of your project. We highly recommend you to use the framework compiled with the required Swift language from our iOS documentation.
Razorpay's framework is bitcode enabled. Do I also have to enable bitcode in my project?
You can use our bitcode enabled framework whether or not your project is bitcode enabled. There will be no issue and our bitcode enabled framework will work for both the cases.
I am getting an error
Module compiled with Swift X version cannot be imported in Swift Y version.What should I do?
There are multiple Swift versions available but unfortunately Apple does not make all the versions compatible with each other. This is why we release frameworks compiled in multiple Swift versions. Download the framework that is compatible with your project. If you run into a compatibility issue, ensure that you try both the frameworks.
I am getting an error saying "Could not find module RazorpayCommonCrypto".
To begin with, a module map is used to define the header files that should be converted into modules and used by your project. Razorpay handles this internally. The reason you are facing this issue is because we have made an assumption that your default Xcode's name is
Xcode.appwhich might not be the case always, for example, your default Xcode might be named
To resolve this issue, simply insert this script in the directory that contains
Razorpay.frameworkfile and run it from your terminal and you are good to go!
I have integrated with the Razorpay Payment Gateway to accept payments on my mobile app. However, when I try to publish my app on the Apple App Store, it is getting rejected. The following message is displayed, "We noticed that your app offers a subscription with a mechanism other than the in-app purchase API." How to resolve this?
As per Apple's policy, if you are using a subscription model in your iOS app, you must use Apple's in-app purchase APIs. Apple does not allow to redirect out of the app for digital product purchase.