Amazon Mobile Associates API allows you to offer physical and digital products sold by Amazon within your app experience. Apps integrated with the Mobile Associates API can be distributed through any Android store as long as the same app is offered through Amazon. It is a new monetization mechanism for your app. You present the product offer in a manner appropriate for your app, the API handles the complexities related to customer management, purchase flow, and payment processing, and Amazon handles the physical goods fulfillment and any potential customer service issues.
With it, you can present to the user contextualized shopping experience. You can choose from millions of products available on Amazon, and you can promote specific items or classes of items as they relate to your app and brand. You monetize based on a percentage of the sale price of the item a customer purchases through your app. See the Associates Program Advertising Fee Schedule for more information.
For example, let's say you have a fitness app, and track your users' progress towards their fitness goal. You can present to the user specific fitness-related products that relate to a specific goal (e.g. a heart rate monitor so the user knows they are in their target range for an activity) or a class of products that relate to an overall objective (e.g. an offer of new running shoes once they have logged 500 miles with your app). If you app is distributed through Amazon, you can even unlock functionality or make available a virtual digital item within the app (e.g. unlocking fitness monitor integration with the purchase of the corresponding physical product).
You can implement four basic features with the API:
- Direct Linking to Amazon: Direct users to Amazon mobile-optimized home page, product page or search result page. Users will have to the option to discover and purchase related items.
- In-App Product Detail and In-App Preview: Present product offer to users through In-App product detail page or In-App product preview popover. To complete the purchase, users will be directed to the Amazon mobile-optimized product page. They will have the option to discover and purchase related items.
- In-App Shopping Experience: Provide a complete In-App purchase experience. You can present product offer in your app's native look and feel. Users will complete the purchase without leaving your app through the In-App product detail page.
- Digital Bundling: Reward customers by granting a virtual digital item in your app with the purchase of a physical product.
Android Apps integrated with the Mobile Associates API can be distributed through Amazon or non-Amazon Android distribution channels (e.g Google Play Store). The API features available through Amazon and non-Amazon distribution channels are listed in the following table:
|App Distribution Channel|
|Feature||Product Categories||Amazon Appstore for Android||General Android (Google Play etc.)|
|Direct Linking to Amazon||Physical and Digital||YES||YES|
|In-App Product Detail Page||Physical and Digital||YES||YES|
|In-App Product Preview Popover||Physical and Digital||YES||YES|
|In-App Shopping Experience||Physical Only||YES||NO|
|Digital Bundling (Available with In-App Shopping Experience)||Physical Only||YES||NO|
The Mobile Associates API has three main classes
AssociatesAPIUsed for initializing the API. The class is also used for retrieving LinkService and ShoppingService singleton objects. The AssociatesAPI class has the following methods:
LinkServiceUsed for Direct Linking to Amazon. LinkService has the following methods:
ShoppingServiceUsed for providing In-App product detail page, In-App product preview, and In-App Shopping experiences. This class is also used for implementing Digital Bundling feature. ShoppingService has the following methods:
|initialize(..)||Used for initializing the API|
|getLinkService()||Used for retrieving LinkService singleton object|
|getShoppingService(..)||Used for retrieving Shopping Service singleton object|
|openRetailPage(..)||Used for directing users to an Amazon retail page. You can make one of the following requests through openRetailPage: OpenHomePageRequest, OpenProductPageRequest, or OpenSearchPageRequest|
|getServiceStatus()||Used to retrieve the available capabilities of ShoppingService|
|setListener(..)||Used for registering the ShoppingListener to receive callbacks|
|searchById(..)||Used for checking product availability and retrieving product information that includes title, description, price, image url, and rating by specifying product ID. Available for physical products and if the app is distributed through Amazon|
|search(..)||Used for searching for product using keyword and category in the Amazon product catalog. Retrieves search results with product information that includes product ID, title, description, price, image url, and rating. Available for physical products and if the app is distributed through Amazon|
|purchase(..)||Used for initiating the purchase sequence by launching product detail page or product preview popover|
|getReceipts(..)||Retrieves receipts for successful purchases. Available for physical products and if the app is distributed through Amazon|
For more information
- Direct Linking to Amazon
- In-App Product Detail and In-App Preview
- In-App Shopping Experience
- Digital Bundling
- API Reference Guide
- Testing In-App Shopping Experience
- Amazon Mobile Associates Forum