Flows¶
For all flows, the following Actors have been used:
- SERVER
- Expressly API server;
- STORE
- The store Expressly is being configured with;
- CUSTOMER
- The customer interacting with the store.
Merchant Registration¶
Pre-conditions:
- Expressly plugin has been integrated, ticking all boxes of Checklist.
- API key exists, and has been created on the Portal (see <https://buyexpressly.com/#/install>).
Main Flow:
- STORE calls Register Merchant with appropriate body, and header.
- SERVER pings store to make sure you have the plugin installed correctly.
- SERVER returns response successfully to STORE
Alternate Flows:
3-1. SERVER cannot ping STORE, returns error message.
2-2. SERVER received invalid credentials, returns error message.
User Campaign Migration¶
Pre-conditions:
- Merchant Registration.
- Campaign has been created on the Portal.
Main Flow:
- CUSTOMER navigates to provided link with unique uuid attached (Show Popup).
- STORE requests popup for unique uuid (Get Campaign Migration Popup).
- SERVER returns popup html rendered for the given campaign, and CUSTOMER.
- STORE renders html atop any given store page (e.g. homepage).
- CUSTOMER accepts terms & conditions, and privacy policy provided by pressing ‘ok’.
- STORE navigates to Migrate User, and requests information.
- SERVER returns information associated with CUSTOMER.
- STORE adds customer to their store; adds product, and coupon (if provided, and supported) to cart.
- STORE tells SERVER that CUSTOMER has been migrated correctly (Migration Success).
- STORE logs user in, and navigates to homepage.
Alternate Flows:
7-1. CUSTOMER already exists, STORE tells SERVER that customer has been migrated previously (Migration Success). 8-1. STORE adds product, and coupon (if provided, and supported) to cart. 9-1. STORE shows CUSTOMER message that they already exist, asking if they want to go to the login page. 10-1. CUSTOMER accepts confirm message, and is redirected to the STORE login page.
Check Purchases¶
Pre-conditions:
Main Flow:
- SERVER requests endpoint (Invoices for Customer Purchases) with JSON of emails, and date period to STORE.
- STORE compares emails, and period to gather purchase information for given CUSTOMERs’.
- STORE returns compiled data to SERVER.
Check Customer Migration¶
Pre-conditions:
Main Flow:
- SERVER requests endpoint (Customers on Store) with JSON of emails to STORE.
- STORE compares emails to determine whether CUSTOMER has been migrated.
- STORE returns compiled data to SERVER.
Campaign Banner¶
Pre-conditions:
- Merchant Registration.
- Campaign for serving banners has been created on the Portal.
- CUSTOMER is logged in.
Main Flow:
- STORE requests banner from SERVER (Get Campaign Banner).
- SERVER returns image, and url.
- STORE displays banner on page (in the location it was called from) on page render.
- Banner clicked on, redirecting to associated route starting flow-migration off-site.
[Portal] | Expressly management Portal: https://buyexpressly.com/#/portal/login |