Refer to this article on how to create a custom or one-time code in Apple App Store.
Here are key points to note to know about custom code: (its a vast research and I almost covered every point)Apple:
You can create free or discounted-price offers.
You can create custom or one-time codes.
These codes can be used by a new subscriber or existing or expired subscribers.
You can choose if you would let them use this offer on top of the intro offer.
The code can be redeemed on the redeem page on iOS
To do the promo code campaign using Purchasely - you can use- the promo code link in all the paywall templates, use the Promo code template, or use a custom CTA action.
You can't test the offer code in sand box environment.
You can also do the campaign using deeplink for OTP and custom code- https://apps.apple.com/redeem?ctx=offercodes&id=YOUR_APPLE_ID&code=TON_PROMO_CODE_ICI
You can create a free trial offer only.
You can create a custom or one-time code for this offer.
Custom offers can be used only by the new subscribers
One-time code can be used by new subscribers or existing or expired subscribers
You can’t explicitly choose if the users can enjoy a promo code on top of the intro offer
The custom code can be redeemed only inside the app- which means while
One time code can be redeemed inside the app or on the redeem page
With these Google restrictions in place, for custom code- you can use the custom CTA action to guide the Android users on how to redeem the code from inside the app. One of our clients created a paywall with a custom CTA(Utiliser promo code) and this CTA leads to another paywall explaining the steps to redeem the code with a CTA of the plan this code is linked to.
For a one-time code, you can share this code using the deeplink - https://play.google.com/redeem?code=promo_code