Online Flow
Note: Match accounts should follow this. Email is preferable, but customer can change his/her amazon email, hence recommendation is to link accounts using amazon user id and rbi user id.
Business Scenarios
Bk account? | Amazon Account? | Prime Account? | Draft of the flow |
---|---|---|---|
Yes | Yes | Yes | Only in the first time, customer gets prompted with the consent amazon page. When sign-in flow, he/she is redirected to the offers page. If he/she is Prime, exclusive offers are shown. |
Yes | Yes | No | When the customer is not Prime, he/she only see regular offers. |
No | No | N/A | When customer doesn’t have any account (BK or Amazon). He can be redirected to Amazon to create an amazon account and BK automatically reuses his/her name and email to prepare BK sign-up flow. |
Yes | No | N/A | When customer only has BK account, he/she can create an Amazon account, and if he/she uses the same email on both, then he/she automatically goes through the BK sign-in flow |
No | Yes | Yes | When customer tries to sign-in using an account that doesn’t exist internally, it throws an error message explaining that he/she should sign-up first. Therefore, we can automatically redirect customer to the sign-up page pre-filling his email and name. If he/she is a Prime, then exclusive offers should show up. |
No | Yes | No | Same of previous flow, but taking into consideration that customer is not Prime, that’s why exclusive offers aren’t shown. |
Amazon Integration References:
APIs to be explored:
Benefit Discovery API - we can find out if the logged the customer is Prime or regular Amazon customer
Account Linking API - we can link account Amazon and BK accounts.
Customer Identity API - we mark customer as pre-verified. The signup experience will skip the verification challenge at Amazon end and allow the customer to directly signup for Prime
https://prime-apis.amazon.eu/explorer/index.html
LWA - Login with Amazon
→ Note that last step describes how to integrate with your account system
integrate with your account system
Make Database Changes
Set up Login with Amazon
Obtain and Secure Amazon Customer Profile Data
Find or Create a Local Account
Mark the User as Authenticated
→ Important to highlight that BK already has the capability to integrate with social accounts such as google, facebook and apple. The solution design should adhere as much as possible the current architecture.
Sequence Diagram
Offer configuration references
- IREQ-122Getting issue details... STATUS - to make it generic, we should follow the Blue Light suggestion:
Customer clicks a button in the app within account settings, something like ‘Memberships’
Customer clicks ‘Blue Light Card Membership’
Customer enters number in field. API verifies the membership.
Offer is sent to offers section once validated
(example of a possible offer page where it’s highlighted the partner offer)
Sanity Configuration
RBI Sanity Studio / Order-Level Content/ Incentives/ Offers/Systemwide Offers/ Systemwide Offer/ Mechanics / Amazon Prime Offer:
FAQ
How we are going to check if a user has lost Prime membership (it should be a reusable process that we can apply for Blue Card and other future partnerships)
Before showing the offers, we should call Amazon (Benefits?) API and validate if the customer is Prime
How are we going to display the current membership status (especially if we end up having multiple partnerships)
N/A
How are we going to show Prime-related offers
Loyalty offers will be configured in Sanity with a new indicator. So, when getting these offers (Get UserLoyaltyOffers), we should apply the proper filter if the customer is Prime.
Will the check we do for status of the membership need to be configurable based on the partner we onboard? How would filters work ?
In Sanity, configure who should see that offer:
If not configured, everyone sees it
If configured, only the people who match filter
For example, “Amazon Prime Discount 10%” only visible to guests who have attribute AmazonPrimeActive = true
Add Comment