Quick Subscribe Overview
Quick Subscribe reduces the number of clicks needed to purchase subscriptions on Fire devices and on your app's retail web page. With Quick Subscribe, your customers enjoy a streamlined experience with app download, subscription purchase, and one-click account information sharing.
In a typical account creation process on a Fire TV, a customer must type their account information using the remote. With Quick Subscribe, it takes only one click for a customer to share their first name, last name, zip code, and email address with your app, which reduces customer friction for creating an account and signing in.
- Subscription requirements
- User flow comparison
- Customer experience
- How does Quick Subscribe work?
- Quick Subscribe FAQ
- Next steps
Subscription requirements
To use Quick Subscribe, your app must adhere to the following requirements.
- After Appstore presents an offer to a customer and they purchase and confirm the transaction, you must honor the terms of the offer, regardless if the customer is actually eligible for the offer.
- Any subscriptions presented in Quick Subscribe must be available through the app.
- After a customer purchases a subscription, they should not be allowed to purchase it again in the app.
User flow comparison
The following image shows a typical customer experience when signing up for a subscription on a Fire TV without Quick Subscribe.
With Quick Subscribe, customers can subscribe in the first step, directly from the app detail page. The following image shows the flow when signing up for a subscription on Fire TV with Quick Subscribe.
With one-click account information sharing, Apptore shows the customer a consent screen that allows them to agree to share their details with your app. If a customer provides their consent, after the app downloads and launches, the app can retrieve the customer's details from Amazon and create an account. Your app can then automatically sign in the customer, bypassing the step for entering credentials.
Customer experience
The following images show the customer experience for Quick Subscribe on Fire TV, Fire tablet, and the Amazon retail website.
How does Quick Subscribe work?
The following steps describe how Quick Subscribe works with Fire devices.
Step 1: The customer initiates a subscription purchase from the app detail page on a Fire device.
Step 2: Amazon shows a consent screen that asks the customer permission to share their name, zip code, and email with your app.
Step 3: Amazon informs the customer their purchase is complete.
Step 4: The app automatically downloads and opens on the customer's device.
Step 5: On launch, the app determines whether the customer has signed in to the app. If the customer hasn't signed in, the app calls the getUserData()
method from Amazon In-App Purchasing (IAP), and Amazon returns the customer's consent status.
If the consent status is CONSENTED
, the app follows step 5a. If the consent status is UNAVAILABLE
, the app follows step 5b
Step 5a - consent status is CONSENTED
:
-
The app calls the
requestUserProfileAccess()
method to get an authorization code for user profile access. -
Your server uses the authorization code to fetch an access token by calling the Get Access Token REST API.
-
Your server uses the access token from the previous step to fetch the customer's details by calling the Get User Profile REST API. Customer details include name, zip code, and email.
-
The app uses the customer's details to create a new account or map to an existing account and then automatically signs in the customer.
Step 5b - consent status is UNAVAILABLE
: The app shows the default account sign-in and account creation experience.
Step 6: After the customer has signed in, your app calls the getPurchaseUpdates()
method from Amazon IAP in the onResume()
method to retrieve the receipt for the purchase.
Step 7: The app updates your server with the purchase data and verifies it with the Receipt Verification Service for Appstore SDK IAP by calling the verifyReceiptId
REST API.
Step 8: The app calls the notifyFulfillment()
method from IAP to acknowledge the receipt for the purchase and to confirm that the customer has access to the content*.
* If you have previously integrated with the Acknowledge Receipt API and not notifyFulfillment()
, the app calls the acknowledgeReceipt
REST API to confirm the customer has accessed the content in this step.
Step 9: The app allows the customer access to the content.
Step 10: The app uses Real Time Notifications (RTN) to receive notifications about the status of the user's in-app purchase.
Quick Subscribe FAQ
The following are frequently asked questions (FAQ) about Quick Subscribe.
- Q: If I integrate with Quick Subscribe, do I need to add support for account information sharing?
-
Yes, to help you with account creation and sign-in, Amazon passes the customer details (email, first name, last name, and zip code) to you.
- Q: Can I offer Quick Subscribe if I also offer a free trial?
- Yes, you can offer both Quick Subscribe and a free trial on the same subscription product. However, Quick Subscribe doesn't support 60-day free trials.
- Q: What if my customer used a free trial previously?
-
Quick Subscribe can detect a free trial created previously on the Amazon Appstore and does not allow the customer to enter into an additional trial period. However, if the customer started a trial outside of Amazon, Quick Subscribe cannot detect this information and the customer may enter into an additional free trial.
- Q: What happens if a customer purchases a subscription through Quick Subscribe and wants to download the app on a second device?
-
The subscription is added to the customer's account after they subscribe through Quick Subscribe. Customers can use the "app only" option to download the app on additional devices. Customers can then access their subscription on those devices.
- Q: Can I offer Quick Subscribe if I also offer promotional pricing?
-
Yes, you can offer both Quick Subscribe and promotional pricing on the same subscription product. However, Quick Subscribe doesn't support promotional pricing at weekly or biweekly intervals.
- Q: What version of Amazon Appstore supports Quick Subscribe?
- To properly test Quick Subscribe, you must use Appstore version release-8.5026 or later. If you are seeing intermittent sync issues with
getPurchaseUpdates()
, verify you are using a supported version of Amazon Appstore. - Q: What marketplaces are Quick Subscribe available in?
- Quick Subscribe is available in all marketplaces except India.
One-click account information sharing FAQ
- Q: What is the difference between the Acknowledge Receipt API and the
notifyFulfillment()
method? Do I need to integrate with both? - The
notifyFulfillment()
method is included in the Appstore SDK on the client-side, and confirms fulfillment of an item by sending a fulfillment result to Amazon. The Acknowledge Receipt API achieves the same objective but through a server-to-server call using theacknowledgeReceipt
operation. -
You must use at least one of these methods in your app to communicate the fulfillment result to Amazon. If you've already integrated with the Acknowledge Receipt API, you can continue to use it, however using
notifyFulfillment()
is the preferred method. You can also choose to use both the Acknowledge Receipt API andnotifyFulfillment()
in your app. - Q: What if I need information in addition to email, name, and zip code to create an account?
- If you need additional information, your app must request the required information from customer.
- Q: Do legacy SDKs support one-click account information sharing?
- No. You must integrate with the Appstore SDK to use one-click account information sharing. If your app uses Quick Subscribe with IAP SDK v2.0, you must upgrade to the Appstore SDK. One-click account information sharing is supported in the Appstore SDK v3.0.5 and higher.
- Q: Can I test one-click account information sharing with Live App Testing (LAT)? Can I reset consent of LAT testers to restart testing?
- Yes, you can test one-click account information sharing with LAT. To reset consent, the LAT tester must go to Manage Login with Amazon and click Remove in the Manage Connection column. There isn't an option to revoke consent status in bulk.
- Q: Can I test one-click account information sharing using App Tester?
- You can use App Tester to mock the consent status attribute of the
getUserData()
method. To test your integration, set the response for consent status toCONSENTED
orUNAVAILABLE
. If the returned status isCONSENTED
, your app should callrequestUserProfileAccess()
to fetch the authorization code. Then, make calls to the Appstore SDK REST APIs to get the customer data and automatically sign them in. If the returned status isUNAVAILABLE
, your app should fall back to the default sign-in experience.
Next steps
To get started, see Set Up Quick Subscribe.
Last updated: Dec 18, 2024