Question

resubscribes is not currently working for me

  • 12 January 2022
  • 3 replies
  • 104 views

Badge

Well, I manage to test my app in the sandbox and buy a subscription plan for a month, it work like expected, it auto-renew 3 times and then “Opted-out of renewal” and “Had their subscription expire” after that, I load again the app and it show me that I have not current any active subscription what is great, but here the problem, when I try to renew the subscription, I do the same process using “purchasePackage”, sending the same package that the user previous subscribe, I don’t get any error the call work but the return “purchaserInfo” do not have any new active subscription.

 

the debug info after I call purchasePackage:

 

2022-01-11 20:55:07.209981-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: ℹ️ Vending Offerings from cache
2022-01-11 20:55:07.211967-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: ℹ️ makePurchase
2022-01-11 20:55:07.213718-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: 💰 Purchasing product from package - soberplus_month_1 in Offering Default
2022-01-11 20:55:07.222415-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: ℹ️ PaymentQueue updatedTransaction: soberplus_month_1 1000000946127847 ((null)) 1000000946124911 - 1
2022-01-11 20:55:07.226589-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: ℹ️ Loaded receipt from url file:///private/var/mobile/Containers/Data/Application/E9118895-463F-4B57-A59B-0BA2251C9A60/StoreKit/sandboxReceipt
2022-01-11 20:55:07.226723-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: ℹ️ Found 0 unsynced attributes for App User ID: rafaelpalma50049
2022-01-11 20:55:07.228999-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: ℹ️ There are no requests currently running, starting request POST /receipts
2022-01-11 20:55:07.229063-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: ℹ️ API request started: POST /v1/receipts
2022-01-11 20:55:07.234099-0500 LoosidApp[26462:18278380] 7.11.0 - [Firebase/Analytics][I-ACS023141] Purchase is a duplicate and will not be reported. Product ID: soberplus_month_1
2022-01-11 20:55:08.304258-0500 LoosidApp[26462:18277431] [Purchases] - DEBUG: ℹ️ API request completed with status: POST /v1/receipts 200
2022-01-11 20:55:08.325978-0500 LoosidApp[26462:18277431] [Purchases] - DEBUG: ℹ️ Serial request done: POST /receipts, 0 requests left in the queue
2022-01-11 20:55:08.331943-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: 💰 Finishing transaction soberplus_month_1 1000000946127847 (1000000946124911)
2022-01-11 20:55:09.273919-0500 LoosidApp[26462:18273130] [Purchases] - DEBUG: ℹ️ PaymentQueue removedTransaction: soberplus_month_1 1000000946127847 (1000000946124911 (null)) (null) - 1

and this is the returned purchaserInfo:

 

{
"purchaserInfo": {
"allPurchaseDatesMillis": {
"soberplus_month_1": 1641863229000
},
"firstSeenMillis": 1641849433000,
"requestDate": "2022-01-12T01:55:08Z",
"entitlements": {
"all": {
"soberplus": {
"latestPurchaseDate": "2022-01-11T01:07:09Z",
"latestPurchaseDateMillis": 1641863229000,
"isSandbox": true,
"originalPurchaseDate": "2022-01-11T00:08:14Z",
"expirationDate": "2022-01-11T01:12:09Z",
"expirationDateMillis": 1641863529000,
"billingIssueDetectedAt": null,
"unsubscribeDetectedAtMillis": 1641864817000,
"identifier": "soberplus",
"periodType": "NORMAL",
"unsubscribeDetectedAt": "2022-01-11T01:33:37Z",
"store": "APP_STORE",
"isActive": false,
"willRenew": false,
"ownershipType": "PURCHASED",
"originalPurchaseDateMillis": 1641859694000,
"productIdentifier": "soberplus_month_1",
"billingIssueDetectedAtMillis": null
}
},
"active": {}
},
"latestExpirationDateMillis": 1641863529000,
"originalPurchaseDate": "2013-08-01T07:00:00Z",
"nonSubscriptionTransactions": [],
"managementURL": null,
"allPurchaseDates": {
"soberplus_month_1": "2022-01-11T01:07:09Z"
},
"latestExpirationDate": "2022-01-11T01:12:09Z",
"originalPurchaseDateMillis": 1375340400000,
"requestDateMillis": 1641952508000,
"allExpirationDatesMillis": {
"soberplus_month_1": 1641863529000
},
"activeSubscriptions": [],
"originalApplicationVersion": "1.0",
"allExpirationDates": {
"soberplus_month_1": "2022-01-11T01:12:09Z"
},
"originalAppUserId": "rafaelpalma50049",
"firstSeen": "2022-01-10T21:17:13Z",
"allPurchasedProductIdentifiers": [
"soberplus_month_1"
]
},
"productIdentifier": "soberplus_month_1"
}

Thanks


3 replies

Userlevel 5
Badge +8

Hey @Rafael Palma!

Sounds like you might be running into some issues with the sandbox environment - are you still encountering this issue, and if so are you able to test with a new sandbox account and/or a fresh installation of the app?

I’m seeing the same thing, it works fine with a new sandbox account (until the subscription expires and you try to renew it, then it’s the same thing for that account) but doesn’t work with a reinstall (on the original sandbox account).

We’re using the cordova plugin. Do you know if this is this maybe a somewhat common issue with sandbox/internal TestFlight and something we won’t see in production?

Userlevel 4
Badge +8

@Rafael Palma @Justin8 we’ve had a few reports of this and it seems to be an issue with StoreKit 1.  upgrading to using an SDK version that allows you to use StoreKit 2 under the hood should help. 

The latest version of our iOS, Flutter, React-Native and Unity SDKs support StoreKit 2, by passing an extra parameter when configuring. 

 

Could you give it a shot? Let me know if you need instructions for any particular SDK. 

Reply