In-App Purchase

RSS for tag

Offer extra content, digital goods, and features directly within your app using in-app purchases.

In-App Purchase Documentation

Posts under In-App Purchase tag

554 Posts
Sort by:
Post not yet marked as solved
2 Replies
338 Views
Hi When we add IAP for our app a few years ago, we setup our server to visit https://sandbox.itunes.apple.com/verifyReceipt, to verify our customer's receipt after the purchase the IAP. Everything goes well for the past few years. But since March 22, 2024, our server cannot visit the URL above any more, and the returned failure is "SSLException: Received fatal alert: protocol_version"(from JAVA). From this we guess that Apple have made some changes about the SSL/TLS protocol requirement of your server api. Could you guys tell us which SSL/TLS is required to visit this URL? We need these information to make a plan of our server code upgrade or something like that, and continue the receipt verification. Thank you. Hope to hear from you soon.
Posted
by neuswcjr.
Last updated
.
Post not yet marked as solved
0 Replies
165 Views
Hey there, I'm experiencing an issue where the in-app-purchase popup isn't displaying the correct icon in sandbox mode. I've configured the default icon in Unity 2021.3.22f and made sure the app icon image sets are properly set up in Xcode. However, even after changing the app icon, it still doesn't appear correctly in the in-app-purchase popup. Could you please assist me with resolving this issue? Your help would be greatly appreciated.
Posted Last updated
.
Post not yet marked as solved
0 Replies
149 Views
Hey there, I've configured the default icon in Unity 2021.3.22f and made sure the app icon image sets are properly set up in Xcode. However, even after changing the app icon, it still doesn't appear correctly in the in-app-purchase popup. Could you please assist me with resolving this issue? Your help would be greatly appreciated.
Posted Last updated
.
Post not yet marked as solved
0 Replies
186 Views
iOS 开发,消耗型应用内购买。用户购买商品之后比如充值了金币,把金币用了之后又申请了退款,这种情况我们如何预防
Posted
by kuwogv.
Last updated
.
Post not yet marked as solved
0 Replies
219 Views
Hello, I have an education application and I want to sell trial exams in this application, or I want people to create exams in exchange for money. Can I use a different payment provider other than Apple's app purchase for this? If I can't use it, is Apple's cut rate 30%? I also want to add this. In my application, users already purchase premium membership packages through Apple's in app purchase service. Can anyone with knowledge help? Thanks
Posted Last updated
.
Post not yet marked as solved
0 Replies
288 Views
I'm trying to test payments on an iOS app. I have a sandbox account and its worked previously. When I try and add a test credit card I get the error "Your Issuer Does Not Yet Offer Support For This Card" I'm using the cards here https://developer.apple.com/apple-pay/sandbox-testing/" What I have tried: Checking my Region is the UK Checking the card details Tried several cards Tried signing out of my iCloud completely I'm testing on an iPhone 12 mini using iOS 16.5.1
Posted
by itierney.
Last updated
.
Post not yet marked as solved
0 Replies
309 Views
I want to test the in-app purchase in visionOS Simulator. I logged in to the Sandbox account in Simulator and was prompted to send the verification code to the phone number I wrote in the previous step. I entered the verification code accurately, but I couldn't log in normally. It was wet many times.
Posted
by lijiaxu.
Last updated
.
Post not yet marked as solved
1 Replies
388 Views
StoreKit don't work with iOS 17.4. After updating to iOS 17.4 our users can't make any purchases in App. Its very critical bug that affected our App. <SKPaymentQueue: 0x302bb4670>: Error in remote proxy while checking server queue: Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named com.apple.storekitd" UserInfo={NSDebugDescription=connection to service named com.apple.storekitd} [df94_SK2] Failed in XPC product request products(IDs: ["report"]): Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named com.apple.storekitd" UserInfo={NSDebugDescription=connection to service named com.apple.storekitd} Does anyone know what to do?
Posted
by trori.
Last updated
.
Post not yet marked as solved
3 Replies
317 Views
Hi, I'm working on in-app purchases, and I've created a webhook to receive data sent by the app store whenever there's user subscription activity (CANCEL, DID_RENEW, DID_CHANGE_RENEWAL_STATUS, EXPIRED). Below is the full path of the webhook URL: Webhook URL: https://api.envelopegenerator.live/api/subscription/subscriptionnotification I've set up the webhook to retrieve the status of user subscriptions, but it's not receiving any calls from the app store.
Posted
by Armia_Dev.
Last updated
.
Post not yet marked as solved
3 Replies
453 Views
So all of my iAPs stopped working all of a sudden. Upon investigation I found out that my Paid App Agreement had expired. So under appstore connect business tab I tried to renew the contract, but it doesn't renew! I tried everything but the status is stuck at expiry. This is is causing us financial loss every minute. Here is the detailed video of the issue: https://www.dropbox.com/scl/fi/ydlgc583kt8dlawru04dh/demonstration.mov?rlkey=r5itzirnv65yynmp633dddh8w&dl=0 I have tried safari, chrome, edge on both windows and mac. Any help on this issue would be highily appreciated. Thankyou
Posted Last updated
.
Post not yet marked as solved
1 Replies
285 Views
I received a version 1 server notification. auto_renew_status is true and another pending_renewal_info.auto_renew_status is 0. So did the user turn the subscription on or off? What does this mean and which field I should use to identify user action? Could anyone help me with that? The contents are as follows: { "environment": "PROD", "unified_receipt": { "status": 0, "environment": "Production", "latest_receipt_info": [ { "quantity": "1", "product_id": "com.protect.adpatrol.weekly2", "expires_date": "2023-03-19 18:12:56 Etc/GMT", "purchase_date": "2023-03-12 18:12:56 Etc/GMT", "transaction_id": "700001139057782", "expires_date_ms": "1679249576000", "is_trial_period": "false", "expires_date_pst": "2023-03-19 11:12:56 America/Los_Angeles", "purchase_date_ms": "1678644776000", "purchase_date_pst": "2023-03-12 11:12:56 America/Los_Angeles", "in_app_ownership_type": "PURCHASED", "original_purchase_date": "2023-02-28 06:18:59 Etc/GMT", "web_order_line_item_id": "700000519235393", "original_transaction_id": "700001128802427", "is_in_intro_offer_period": "false", "original_purchase_date_ms": "1677565139000", "original_purchase_date_pst": "2023-02-27 22:18:59 America/Los_Angeles", "subscription_group_identifier": "20900376" }, { "quantity": "1", "product_id": "com.protect.adpatrol.weekly2", "expires_date": "2023-03-03 06:18:57 Etc/GMT", "purchase_date": "2023-02-28 06:18:57 Etc/GMT", "transaction_id": "700001128802427", "expires_date_ms": "1677824337000", "is_trial_period": "true", "expires_date_pst": "2023-03-02 22:18:57 America/Los_Angeles", "purchase_date_ms": "1677565137000", "purchase_date_pst": "2023-02-27 22:18:57 America/Los_Angeles", "in_app_ownership_type": "PURCHASED", "original_purchase_date": "2023-02-28 06:18:59 Etc/GMT", "web_order_line_item_id": "700000519235392", "original_transaction_id": "700001128802427", "is_in_intro_offer_period": "false", "original_purchase_date_ms": "1677565139000", "original_purchase_date_pst": "2023-02-27 22:18:59 America/Los_Angeles", "subscription_group_identifier": "20900376" } ], "pending_renewal_info": [ { "product_id": "com.protect.adpatrol.weekly2", "auto_renew_status": "0", "auto_renew_product_id": "com.protect.adpatrol.weekly2", "original_transaction_id": "700001128802427" } ] }, "auto_renew_status": "true", "notification_type": "DID_CHANGE_RENEWAL_STATUS", "auto_renew_product_id": "com.protect.adpatrol.weekly2", "original_transaction_id": 700001128802427, "auto_renew_status_change_date": "2023-03-12 18:12:58 Etc/GMT", "auto_renew_status_change_date_ms": "1678644778000", "auto_renew_status_change_date_pst": "2023-03-12 11:12:58 America/Los_Angeles" }
Posted
by chasel_h.
Last updated
.
Post not yet marked as solved
5 Replies
507 Views
ERROR: 💰 Product purchase for '***' failed with error: Error Domain=RevenueCat.ErrorCode Code=2 "There was a problem with the App Store." UserInfo={source_file=RevenueCat/SKError+Extensions.swift:64, NSUnderlyingError=0x600000c91890 {Error Domain=SKErrorDomain Code=0 "An unknown error occurred" UserInfo={NSLocalizedDescription=An unknown error occurred, NSUnderlyingError=0x600000c68570 {Error Domain=ASDServerErrorDomain Code=1003 "No Token Available When Expected." UserInfo={NSLocalizedFailureReason=No Token Available When Expected.}}}}, readable_error_code=STORE_PROBLEM, NSLocalizedDescription=There was a problem with the App Store., source_function=asPurchasesError} And, I have also tested with SwiftyStoreKit and encountered the same issue.
Posted Last updated
.
Post not yet marked as solved
0 Replies
228 Views
Our service has an IOS and Android app and a backend server. I have a question about handling refunds for simultaneous payments on Android and IOS. Is there any way to cancel and refund the IOS subscription payment in the backend when Google is paid first and IOS is paid almost simultaneously? For Android, unlike IOS IAP, the backend server can confirm the purchase with a purchase confirmation (ack), so even if IOS is paid first at almost the same time, it is possible to cancel it by checking the payment data in the backend and not sending an ack to Google's server if the IOS payment is already made.
Posted
by hoomin.
Last updated
.
Post not yet marked as solved
0 Replies
139 Views
I have a website and both iOS and Android apps where users can access to watch digital content. Can I direct users to my website to make the payments instead of using Apple/ Google In-app purchases? I want users to have a consistent experience throughout all the platforms. Users can pay and get credits to unlock videos which are uploaded by other users.
Posted Last updated
.
Post not yet marked as solved
0 Replies
208 Views
{NSLocalizedDescription=Reached max retry count, AMSURL=https://amp-api.sandbox.apple.com/v1/catalog/us/in-apps?extend=hostedContent&amp;filter%5BappBundleId%5D=com.dazn.staging&amp;filter%5BofferName%5D=BR.AP.HO.01.STAG,BR.MP.HO.01.STAG,BR.NFL.APPLE.SPP.HO.01.STAG&amp;l=en-US&amp;omit%5Bresource%5D=autos&amp;platform=iphone&amp;with=adHocOffers, AMSStatusCode=401, NSLocalizedFailureReason=Task reached max retry count (0 / 0);}
Posted Last updated
.
Post not yet marked as solved
2 Replies
460 Views
Hello, We are a mobile game company, We have encountered an issue concerning the refunds of consumable products purchased through our app. The issue arises when some Apple users request refunds after purchasing these products, and Apple approves these refund requests even if our users have already consumed it. This situation leads to financial losses and creates an unfair experience among users. We are using App Store Server Notifications V2. So how can we prevent Refunding if user used already our product
Posted Last updated
.
Post not yet marked as solved
2 Replies
247 Views
Hello, My app was just approved and it is a marketplace app for self-guided tours. The tours are digital products and hence we use in-app purchases. We are allowing people to buy worldwide because it is a travel-related product but I’m struggling to figure out how to set the price. The tour creators have a price in mind and we have a commission. We are able to calculate what price to set in US keeping in mind the 15% Apple fee and tax. However, once I set a price on the App Store in USD, there is a large variation in the amount I will be paid from other countries and currencies as each country levies its own tax. Managing 100+ countries manually is not feasible. Any workarounds or ways in which I can tell the App Store what I want to be paid after taxes so that prices are adjusted in each country accordingly???
Posted Last updated
.
Post not yet marked as solved
1 Replies
254 Views
I am working on an iOS app. I have created an annual offer code which is only eligible to new users and expired subscribers. May I know what will happen if an existing subscriber tries to redeem the offer using the offer code url? Then they would finish the whole process through the App Store. There are no ways for my app to block it. Would Apple not allow them to do this? If yes, would the existing subscribers have to cancel their subscription in order to redeem this annual offer code? If yes, will they then immediately see the offer? Or will they have to wait until their entitlement expires? Thanks.
Posted
by yorkchan.
Last updated
.
Post not yet marked as solved
0 Replies
316 Views
On March 8, multiple users reported invalid status codes when using our app to make payments. By night, it was back to normal. Has anyone encountered the same problem? Error Domain=SKErrorDomain Code=0 "发生未知错误" UserInfo={NSLocalizedDescription=发生未知错误, NSUnderlyingError=0x283f71740 {Error Domain=ASDErrorDomain Code=500 "Unhandled exception" UserInfo={NSUnderlyingError=0x283f71d10 {Error Domain=AMSErrorDomain Code=100 "Authentication Failed" UserInfo={NSLocalizedDescription=Authentication Failed, NSMultipleUnderlyingErrorsKey=( "Error Domain=AMSErrorDomain Code=301 "Invalid Status Code" UserInfo={NSLocalizedFailureReason=The response has an invalid status code, AMSURL=https://auth.itunes.apple.com/auth/v1/native, AMSStatusCode=403, NSLocalizedDescription=Invalid Status Code}", "Error Domain=AMSErrorDomain Code=301 "Invalid Status Code" UserInfo={NSLocalizedFailureReason=The response has an invalid status code, AMSURL=https://auth.itunes.apple.com/auth/v1/native, AMSStatusCode=403, NSLocalizedDescription=Invalid Status Code}"), AMSURL=https://p42-buy.itunes.apple.com/WebObjects/MZBuy.woa/wa/inAppBuy?guid=00008120-001E64823A0BC01E, AMSStatusCode=200, AMSServerPayload={ "cancel-purchase-batch" = 1; customerMessage = "使用 Apple ID 登录"; dialog = { cancelButtonString = "取消"; defaultButton = Buy; explanation = "输入 %%appleId%% 的密码以授权此交易。"; initialCheckboxValue = 1; kind = authorization; "m-allowed" = 0; message = "使用 Apple ID 登录"; okButtonAction = {.........
Posted
by wenruo.
Last updated
.