damarna85 / commercetools-instore-center

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

InStore

Build Status

Synopsis

The Commercetools in store app allows customers to manage order reservations from the Sunrise mobile app, reviewing customer insights and checking inventory entries for different channels.

Motivation

The motivation of this app is to allow sales force to engage customers and improving the shopping experience by using the information already existing in the Commercetools platform and machine learning features. and machine learning features.

Its current incarnation targets the staff of a physical store that is part of a 'click and collect' fulfilment offering.

Installation

Install local dependencies of the implementation:

npm install

In addition you need a commercetools platform project with suitable data structures:

  • There need to be channels set up that have the ProductDistribution and the InventorySupply roles set.
  • The in-store UI only shows orders that have
    1. a custom Boolean field isReservation set.
    2. the correct store set as the supplyChannel of the order line items to be picked up.

This is the type of data generated by the SUNRISE demo storefront, so you can use the SUNRISE example data and the SUNRISE Java Storefront to set up the data and a storefront to easily create the reservation orders.

Launch and Configuration

Configuration files for the commercetools API and client credentials can be found in the src/config/env/ folder. They override the data in default.json. API defaults to the EU CTP at api.sphere.io.

You need to set your project's credentials there.
The best way is to create a specific client ID for this app.

The 'default' build command launches a local server with the development configuration:

npm run-script gulp

The production configuration can be launched as:

npm run-script production

The local address of both is http://localhost:3000

Usage

Dashboard

dashboard

Allows you to briefly display the sales, orders, customers and stocks for the selected store. The dashboard also allows the user to filter by dates in order to get the required info based on a desired period of time.

inventories

In the inventories section, products of the selected store are displayed indicating the available quantity. You can access the product details from this list by clicking on the row and also check the availability of the product in any other store sorted by distance.

When clicking on the check button, a new window will be shown displaying the availability of the selected product in the different channels and sorting the results by distance from the store (from nearest to farthest).

availability

The following image shows how the product details page is displayed when clicking on the product row from the inventory list where the user cat get some details from the product and some related products that can be recommended to the customer.

inventoriesdetail

orders

This section shows the list of orders that has been processed by the Sunrise mobile app. In this section the user can confirm the order and process it whenever a customer comes to the store to pick up the items. The user can also cancel an order if needed. This actions can be performed directly on the list by clicking on the Process button or in the order details page which is detailed in the following screenshot:

orderdetail

customers

List of customers related to the store. Provides quick access to common store customers. The user can also access to the customer details page where can see the customer insights, for instance latests items the customer purchased and some recommendations based on the latest orders or preferences.

The following image shows how the customer details page looks like:

customerinsights

customerrecomended

About

License:MIT License


Languages

Language:JavaScript 66.2%Language:HTML 25.3%Language:CSS 7.9%Language:Shell 0.5%