What SDK, version, and platform are you using? Cancelled purchases do show up as errors but I would expect the catch statement to catch it. I’ll forward this to our mobile engineers once you share that extra info.
Hello Sharif, thank you for looking into this issue.
Yes, indeed. I was excepting the same scenario to catch this error by catch statement.
With respect to your question, I am currently testing on an android device, which is based on Flutter.
For the app itself, minSdkVersion is 21 and compileSdkVersion is 30.
Please let me know if you need any additional information from my end.
Thanks!
Hello @sharif , forgot to link your name and as I couldn’t edit my reply, please find my below copied response from previous reply.
Hello Sharif, thank you for looking into this issue.
Yes, indeed. I was excepting the same scenario to catch this error by catch statement.
With respect to your question, I am currently testing on an android device, which is based on Flutter.
For the app itself, minSdkVersion is 21 and compileSdkVersion is 30.
Please let me know if you need any additional information from my end.
Thanks!
Hello,
I also have the same problem but with React Native and iOS. The error is not caught on catch.
Any news on this ?
Thanks in advance,
Telmo Dias
More info :
"expo": "~49.0.13",
"react-native-purchases": "^7.24.0",
DEBUG: ℹ️ StoreKit1Wrapper (0x00000003002e9620) removedTransaction: app_full_access (The operation couldn’t be completed. (SKErrorDomain error 2.)) o"NSUnderlyingError": Error Domain=ASDErrorDomain Code=907 "(null)" UserInfo={NSUnderlyingError=0x3028e77b0 {Error Domain=AMSErrorDomain Code=6 "Payment Sheet Failed" UserInfo={NSLocalizedDescription=Payment Sheet Failed, AMSURL=https://sandbox.itunes.apple.com/WebObjects/MZBuy.woa/wa/inAppBuy?guid=00008110-001204181AEB801E, AMSStatusCode=200, AMSServerPayload={
"cancel-purchase-batch" = 1;
customerMessage = "Sign in with Apple ID";
dialog = {
cancelButtonString = Cancel;
defaultButton = Buy;
explanation = "Enter the password for %%appleId%% to authorise this transaction.\n\niEnvironment: Sandbox]";
initialCheckboxValue = 1;
kind = authorization;
"m-allowed" = 0;
message = "Sign in with Apple ID";
okButtonAction = {
buyParams = "hasFailedTouchIDChallenge=true&offrd-free-trial=false&salableAdamId=6478834706&showIAPExtraDialog=false&applicationUsername=%24RCAnonymousID%3A025955c7d5bc44c28f2fac502ee3f511&offerName=app_full_access&productType=A&hasBeenAuthedForBuy=true&quantity=1&price=19990&ageCheck=true&pricingParameters=STDQ&vid=21115114-A5F6-48C3-86A7-207076F92088&bvrs=1&pg=default&hasConfirmedPaymentSheet=true&bid=xxx.xxx.xxx&hasWebOptIn=false";
itemName = "app_full_access";
kind = Buy;
};
okButtonString = Buy;
paymentSheetInfo = {
caseControl = true;
confirmationTitle = Pay;
countryCode = DE;
currency = EUR;
designVersion = 2;
flexList = (
{
value = (
{
style = priceMain;
value = "19,99\U00a0\U20ac";
},
{
style = priceSub;
value = "One-time charge";
}
);
},
{
header = DETAILS;
value = "For testing purposes only. You will not be charged for confirming this purchase.";
},
{
style = account;
value = "Account: %%appleId%%";
}
);
images = (
{
type = itunesgames;
value = Unrated;
}
);
price = "19.99";
requestor = AppStore;
salableIcon = "https://is4-ssl.mzstatic.com/image/thumb/Features113/v4/b3/f6/f5/b3f6f530-6b2f-df22-9618-6fbb0a9e2ca2/mza_7020272080795277011.png/144x144bb.png";
salableIconType = app;
salableInfo = (
"Lifetime Full Access",
"AAA %%image_0%%",
"In-App Purchase"
);
styles = (
{
bold = true;
name = priceMain;
size = large;
},
{
color = gray;
name = priceSub;
},
{
color = gray;
name = account;
}
);
suppressPrice = true;
title = {
type = text;
value = Sandbox;
};
};
};
failureType = "";
"m-allowed" = 0;
metrics = {
actionUrl = "sandbox.itunes.apple.com/WebObjects/MZBuy.woa/wa/inAppBuy";
dialogId = "MZCommerceInAppBuy.ConfirmationNeededForBuyOneItem.CPS.Auth";
eventType = dialog;
message = "Sign in with Apple ID";
mtEventTime = "2024-03-21 16:28:03 Etc/GMT";
mtTopic = "xp_its_main";
osloTitleType = text;
osloTitleValue = "AbstractSalableInfoModule.SandboxTitle";
topic = "xp_its_main";
};
pings = (
"https://xp.apple.com/report/2/xp_its_main?code=MZCommerceInAppBuy.ConfirmationNeededForBuyOneItem.CPS.Auth&buttons=Buy%3ACancel&baseVersion=1&dsId=21603461045&eventVersion=1&storeFrontHeader=143443-2%2C29&eventTime=1711038484445&eventType=dialog&message=Sign%20in%20with%20Apple%20ID"
);
}, NSLocalizedFailureReason=Payment sheet dismissed with neither an error nor a result}}}] 2
Type: Debug | Timestamp: 2024-03-21 16:28:07.572059Z | Process: AAA | Library: AAA | Subsystem: xxx.xxx.xxx | Category: purchases | TID: 0x8698a1
I am facing the same issue in React Native Android
Hi @naturelle @sharif , Can you please help resolve this issue?
my package version is
"react-native-purchases": "^7.26.1"