Purchasely
4.4
4.4
  • Welcome page
  • General
    • Presentation
    • Release notes
  • Quick start
    • Console Configuration
    • SDK Implementation
    • Testing
    • Sample
  • Basic configuration
    • Console Configuration
      • Creating a new application
      • Creating your Products
        • App Store
        • Play Store
        • Huawei App Gallery
        • Amazon App Store
        • Products & Plans
      • Design your Paywalls
      • Design your Paywalls-Latest
        • Carousel
        • Carousel Flow
        • Features List
        • Features List & Plan Picker with 2 & 3 columns
        • Feature list overlay
        • Plan picker horizontal
        • Plan picker with 2 and 3 Column
    • SDK installation
      • iOS SDK
      • Android SDK
      • React Native SDK
      • Cordova SDK
      • Flutter SDK
      • Unity SDK
    • SDK configurations
      • Paywall observer mode
      • Full mode
      • StoreKit 2
      • Appendices
        • Start the SDK
        • Set User Id
        • Notify when the app is ready
        • Present paywalls
        • Unlock content / service
        • Close SDK (Android only)
    • Stripe
    • Purchasely with RevenueCat
  • S2S notifications
    • Server-to-server notifications ?
    • Apple App Store
    • Google Play Store
    • Huawei App Gallery
  • Analytics
    • Dashboards
      • Introduction
      • Live
      • Subscriptions
      • Cohorts
      • Trials
      • Events
    • Events
      • Webhook events
        • Subscription events
        • Subscription events attributes
      • SDK events
        • UI events
        • UI attributes
  • Integrations
    • Webhook
      • Receiving and understanding messages
      • Managing entitlements
      • Detailed sequence diagrams
    • Airship
    • Amplitude
    • AppsFlyer
    • Adjust
    • Piano analytics(ex AT Internet)
    • Batch
    • Branch
    • Braze
    • Clevertap
    • Customer.io
    • Firebase
    • Iterable
    • Mixpanel
    • MoEngage
    • OneSignal
    • Segment
    • Brevo(ex Sendinblue)
  • Advanced Features
    • Asynchronous paywalls
    • NEW: Promotional offers
    • Anonymous user
    • Associating content
    • Audiences
    • Customising UI
      • Errors & alerts
      • Controllers (iOS) / Fragments (Android)
    • Deeplinks automations
    • Disable placements
    • Displaying users subscriptions
    • Localization
    • Lottie animations
    • Non-subscription products
    • Paywall action interceptor
    • Promoting your products
      • Self-promotion
      • Promoting In-App Purchases
    • Purchase manually
    • Subscription status
    • Use your own paywall
  • Others
    • Frequently Asked Questions
    • Migration guides
      • Migrate to Purchasely
      • Webhook
        • Migrate to Webhook v3.0
      • SDK
        • Migrate to SDK v3.0
          • v2.2.0
          • v2.1.3
        • Migrate to SDK v3.1
        • Migrate to SDK v3.2
        • Migrate to SDK v4.0.0
  • TESTING
    • Testing Cycle Durations
Powered by GitBook

© Purchasely 2020-2023

On this page
  • 🍏 Why do I have some receipts coming up on app launch?
  • 🍏 I receive the following errors in the console "Couldn't fetch products. No App Store product could be found. You will not be able to perform purchases. Error: productNotFound."
  • 🤖 When I try to purchase on my android I get an error "The item you were attempting to purchase could not be found"
  • 🍏 What should I do to make sure PSD2 regulation changes will work?
  • Is it possible to have double purchases of the same product?
  • What happens when an anonymous user signs in?
  • 🍏 How can I cancel a sandbox subscription on iOS ?

Was this helpful?

Edit on GitHub
  1. Others

Frequently Asked Questions

🍏 Why do I have some receipts coming up on app launch?

Each time a subscription is renewed, Apple presents the renewal receipts to the app. As our servers are linked to Apple by Server-to-Server notifications, we will already know about that renewal but in some cases that receipt is necessary:

  • Ask-to-buy confirmation

  • PDS2 confirmation

In these cases Apple presents the original receipt validated outside of the app while the app starts (or immidiately if the app was in background). We use it to associate the purchase to the user.

🍏 I receive the following errors in the console "Couldn't fetch products. No App Store product could be found. You will not be able to perform purchases. Error: productNotFound."

This error means the the application couldn't grab the products from Apple's servers. This error might occur on iOS14 simulator but shouldn't on your device. Here are some elements to check to solve that issue:

  • In App Store Connect, check that your "Paid Applications contract" was signed and didn't expire

  • Check that the requested product has the same id in App Store Connect and Purchasely

  • Check that you defined a price for the product and that this product was made available in the storefront / country where your user is.

  • Check that your app bundle identifier is the one you associated your In-App Purchases to in App Store Connect

  • Check that you associated the In-App Purchase capability in Xcode

🤖 When I try to purchase on my android I get an error "The item you were attempting to purchase could not be found"

Some questions and things to test:

  • Is your app published?

  • Are you a registered tester of your app in Google Play Store?

  • Is the product available in the country of the user?

If your app is not published, only testers will be able to make purchases.

🍏 What should I do to make sure PSD2 regulation changes will work?

You might need to see it to believe it, in that case you can test the same kind of workflow by doing a ask-to-buy purchase on your app. This is the same kind of workflow with a purchase being validated from outside the app.

Is it possible to have double purchases of the same product?

If your customer purchased a product on another system (like your own Web site), we won't be able to do anything. You should remove the purchase buttons and inhibit the presentation of paywalls.

For every purchase made on mobile with Purchasely we protect you from unwanted double purchase.

If you attempt to purchase the same plan (monthly) of the same product on the same platform (App Store, Play Store …) the store will notify you that you already purchased and you won't be charged.

If you try to purchase a plan of the same product on a different platform our SDK will protect unwanted double purchase by displaying an alert to validate the purchase. If the user validates, he will have the same subscription twice so when the purchase is validated we explain him how to cancel the subscription.

What happens when an anonymous user signs in?

When an anonymous user signs in (when you call the setUserId method in the SDK), all the purchases and history are transfered to the provided user.

If priori to the authentication, the provided user already had subscriptions he will gather the new ones even if this causes duplicates.

If the users disconnects, the device will be anonymous again and the anonymous user won't have any active subscriptions as they were transfered. The user can get them back by making a restore of its transactions.

🍏 How can I cancel a sandbox subscription on iOS ?

If you want to cancel a subscription in the sandbox environment you can do thta from the App Store settings.

PreviousUse your own paywallNextMigration guides

Last updated 1 year ago

Was this helpful?

Apple announced the regulation to In-App Purchases and Subscriptions. The impact can be massive and lead to purchases not beaing handled

The good news is that if you use Purchasely you already are supporting PSD2. If you in the didFinishLaunchingWithOptions you are ready. Easy right? If you need to refresh anything in your app when the purchase is made, listen to the events inAppRenewed and inAppPurchased to get notified when the transaction was processed.

If you try to purchase a different plan of the same product on the same platform, you will be upgraded or downgraded to the new plan as long as your products are in the same . Subscription groups don't exist on the Google Play Store but Purchasely SDK will be cancelling the previous one and starting the new one respecting the .

This is how Purchasely protects your users from unwanted double subscriptions.
deployment of PSD2
Subscription group
initialize the SDK correctly
migration policies