This page provides Business administrators a user guide for the App Marketplace microservice for the Infosys Equinox platform.

 

Getting Started

Developer Apps

Overview

Apps are any plugins or pluggable components to add features or extend functionalities in the Infosys Equinox Commerce platform that can be developed, hosted outside the platform, and registered as an app in the Infosys Equinox App Marketplace microservice.

The functionalities of Infosys Equinox Commerce are: 

Service Glossary

  • Business – the parent of a store or set of stores. The basic use of a business is to manage common sets of users, catalogs, and other services for the stores associated with the business.
  • Business Admin – a role that manages business settings, creates and manages stores, and enables microservice(s) for a business.
  • Developers – developers are the app owners who are invited by the super admin to the business to register their apps in Developer Apps.
  • Merchant – user who installs the app via the App Marketplace in their stores to enhance the features of their store.
  • Marketplace Admin – user who can approve or reject apps.

Getting Started | App Marketplace

Developer Apps

The developer apps page allows,

  • Business Admin to:
    • create new apps.
    • navigate to any newly created app and submit it for approval.
    • update the app configuration.
  • Marketplace Admin to:
    • create new apps.
    • navigate to any created app and submit it for approval.
    • update the app configuration.
    • approve and/or reject the apps.
    • Publish and/or unpublish the apps.

Prerequisite

Before you start, ensure that:

  • The required business where you need to register the apps is available in the Foundation Admin Console.
    Note: Only the super admins can manage the business. For information, see Managing Business and Managing Teams.
  • You have a valid role, such as business admin or marketplace admin, and the relevant credentials to access the required business in the Foundation Admin Console of the Infosys Equinox Commerce platform.
    Note: For more information, see Managing Teams.
  • You enable the App Marketplace microservice, only after which the Developer Apps option appears in the Foundation Admin Console. See Enabling or Disabling Microservices.

End-to-End Flow for Registering an App

In this section you can view,

App Developer Workflow

The app developer workflow is mentioned below: 

Steps for Registering an App

To successfully register an app in the developer apps and publish it in the App Marketplace, you need to follow the steps given below:

  1. Login to the Infosys Equinox Admin Console
  2. Enable App Marketplace
  3. Create or register an app – as a business admin and/or marketplace admin, you can create an app by uploading the app details and its metadata (configuration details).
  4. Update the metadata (configuration details) if required.
  5. Submit the app for approval.
  6. Approve or reject an app as a marketplace admin.
  7. Publish or unpublish an app as a marketplace admin.

App Review Process

As part of review process an app passes through different states. The sequence of various statuses for an app is:

  1. Created: the app is created and ready to process for approval.
  2. Submitted: the app is submitted for approval.
  3. Approved: the app is approved and can be published in the app marketplace.
  4. Rejected: the app is rejected and cannot be published in the app marketplace.
  5. Published: the app is published in the App Marketplace and ready for installation.
  6. Unpublished: the app is unpublished and not ready for installation in the App Marketplace.

Managing Developer Apps

In the Developer Apps page, you can,

Accessing the Developer Apps

As a business admin and/or marketplace admin, you can access the Developer Apps from the Foundation Admin Console.

To access the Developer Apps,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. In the All Business page, select a business for which the Developer Apps option is enabled.

    Note: For enabling Developer Apps for a business, see Enabling the App Marketplace.
  3. Click Developer Apps in the left navigation panel.

    The Developer Apps landing page appears:

Viewing the Details of an App

You can view the list of all apps created for a business.

To view the app details

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click Developer Apps in the left navigation panel:
  3. The Developer Apps landing page displays the list of apps that are created for a business.
    Note: To create a new app, refer to Creating an App.
  4. In the Developer Apps landing page, click on the required app.

    The selected app’s page appears.
    Note: The selected app’s page displays,
    • app basic details such as image/log, name, app description, and status of the app.
    • app metadata (configuration details) such as app credentials, app configuration, webhooks, and app installs. For more information, refer to the table in the Update the Metadata Details of an App.

Creating an App

As a business admin and marketplace admin, you can register (create) an app by uploading its details via a JSON file.

You can upload,

  • App basic details such as image, logo, app name, app description, etc.
  • App Metadata details such as app information, app credentials, add configuration, webhooks, app installs, and comments.

Note: Before you upload a document, you need to download the sample template (.json) to upload the app data in the predefined format. You can fill in all the required details in the downloaded file and then import the updated file.

To Create an App,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click Developer Apps in the left navigation panel:
    The Developer Apps landing page appears:
  3. Click Create App.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/developerappslandingpage.png
    The Create New App page appears:
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/developerappslandingpage.png
  4. In the Create New App page, click the Download Template button.

    The sample (.json) file is downloaded to your local computer.
  5. Add the required app details to the downloaded file and save it locally.
    Note:
    • The app details and its metadata vary based on the apps. You can update the predefined fields based on the app. See sample detailed metadata.
    • Ensure that you update the app details in the same format as in the template to avoid errors.
  6. In the Create New App page, to import the file, perform one of the following:
    • Drag and drop the updated sample file (.json) from your local computer into the Import Document section.
      (or)
    • Click the Add File button to upload the file from your local computer.
      https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/developerappslandingpage.png
      Note: Once the file is uploaded, the imported history details appear. In the case of an error file, you need to reupload the correct file.
  7. Click Submit.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/developerappslandingpage.png
    The app is created with an autogenerated unique app ID.

    Note: For information on viewing the metadata details of an app, see Viewing the Details of an App.

Sample App Configuration

Below is the sample app configuration. To view the complete sample app configuration data, click Sample App Configuration

Input Details for Creating an App

Attribute

Is Mandatory

Details and Conditions

appName

Yes

Indicates the name of an app. Ensure that you follow the given rules for naming an app:

  1. Minimum length: 3; Maximum length: 30
  2. Only alphanumeric and spaces are allowed.
  3. Name should contain at least 3 alphanumeric characters.

businessType

Yes

Indicates the type of business with which an app is associated. You can select any one of the given values:

  • B2B
  • B2BANDB2C
  • B2C

appShortDescription

Yes

Indicates the “short description” of the app. This field accepts “string”.

appSummary

Yes

Indicates a short summary of the app. This field accepts “string”. 

appCategory

Yes

Indicates the name of the category to which an app is associated. If an app’s functionality is related to a particular service, you can use the below app category names. This field accepts “string”.

  • address
  • auth
  • cartcheckout
  • catalog
  • customer
  • inventory
  • list
  • location
  • loyalty
  • merchandising
  • notification
  • order
  • payment
  • pricing
  • promotion
  • ratingsreviews
  • search
  • shipping
  • subscription
  • tax

pricingType

Yes

Indicates the pricing type of the app. You can provide any of the given values:

  • FREE
  • PAYING

Note: For the 8.15 release, you can provide the value as “FREE”, since paid apps are not supported.

appDisplayType

Yes

Indicates the display type of the app. You can provide any of the given values:

  • DESKTOP
  • MOBILE
  • BOTH

visibilityType

Yes

Indicates whether the app is Public or Private.

  • Public: is available in the app marketplace after being published and is accessible across any business and stores.
  • Private: is available only for a few businesses, and it is not available across the app marketplace store.

The value should be either Public or Private.

Note: In the 8.15 release, only public apps are supported.

developerOrg

Yes

Indicates the app developer or development team details, like name. This field accepts “string”.

appVersion

Yes

Indicates the value of an app version number. Using this parameter, you can access different versions of the app. The version format is major.minor.patch. For example, 1.0.0

appGoal

Yes

Displays the goal of the app, or you can provide the reason why the app has been developed. This field accepts “string”.

tags

optional

If required, you can provide the tag for the app.

appSupport: email

optional

Indicates the “email” for the merchants to contact for app support.

appSupport: phoneNumber

optional

Indicates the “phone number” for the merchants to contact for app support.

appImages

Yes

Holds the list of image details (URL, type, and remarks) for an app.
Note: Each element in an array contains an element with a property such as:

  • URL: holds a valid URL address for the image.
  • type: holds the type of image to display.
  • remarks: holds any remark for the image.

properties

Optional

Holds a list of properties for an app.
Note: Each element in an array contains an element with a property such as:

  • name: holds the name of the property.
  • value: holds the value of property.
  • locale: holds the locale of the property.

Metadata Configuration Details for an App

API Configuration 

Attribute

Is Mandatory

Details and Conditions

apiConfig : action

No

Provide the value for this field as “baseurl”.

apiConfig : url

No

Provide the valid base URL of the app.

App Scopes and Roles

Attribute

Is Mandatory

Details and Conditions

appScopes : Services

No

Indicates the scope of an app.

Note: It is mandatory to provide the scopes for an app (services to which the app can make a callback to update data). 

appScopes : roles

No

Indicates the roles based on scope.

Note: It is mandatory to provide roles based on the scope of an app. Based on the roles provided, the privileges for the apps to access the microservices are defined.

Webhooks Configuration

Attribute

Is Mandatory

Details and Conditions

webhooksConfig : entity

No

Indicates the “service” name associated with the webhook event.

webhooksConfig : url

 No

Indicates the destination URL to which the webhook subscription sends the POST request when an event occurs.

webhooksConfig : events

 No

See Asynchronous Webhooks 

App Description

Attribute

Is Mandatory

Details and Conditions

AppDescription : ataGlance

No

Indicates a very short description of the app. This field accepts “string”. 

readMoreDescription

No

Indicates the app description or additional details in the “section” node. This field accepts “string”. 

characteristics: category

No

Indicates the app category. This field accepts “string”.

characteristics: goal

No

 Indicates the app goal. This field accepts “string”.

characteristics:  helpCenterUrl

No

Indicates the URL for the merchants to access the app support. This field accepts “string”.

characteristics: developedBy

No

Indicates the developer organization name. This field accepts “string”.

characteristics: displayArea

No

This field accepts “string”.

characteristics: activity

No

Provide any one of the given values (business type) from the list:

  • B2B
  • B2BANDB2C
  • B2C 

Input Data for App Activation

The configuration details are to be provided by the merchant or the user installing the app. You need to provide these details in the app activation input data section of the template.

Attribute

Is Mandatory

Details and Conditions

title

No

Indicates the title of an app. This is displayed on the app installation configuration page in the admin screen. This field accepts “string”. 

uiElement

No

Indicates the value for the UI (User Interface) element. You can provide any one of the given values.

  • textbox
  • dropdown
  • checkbox

label

No

Indicates the name of the attribute that needs to be displayed in the installation configuration page in the admin screen. This field accepts “string”.

required

No

Indicates whether the value is mandatory or not. Values should be “true” or “false”. 

default

No

Indicates the default value that needs to be populated for the attribute. This field accepts “string”. 

minLength

No

Indicates the textbox Ui element for the minimum length condition.

pattern

No

Indicates the pattern for validation.

key

No

Indicates the attribute name that needs to be stored in database.

Updating the Metadata of an App

As a business admin and/or a marketplace admin, you can update the existing metadata configuration details of an app.

Note: You can update the configuration details only until the app is in the Submit state.

To update the configuration details of an app,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click Developer Apps in the left navigation panel.
    The Developer Apps landing page displays the list of apps that are created for a business:

    Note: To create a new app, refer to Creating an App.
  3. In the Developer Apps landing page, click on the required app.

    The app details screen displays the app details, such as the image, name, app details, the status of the selected app, and the metadata details.
     
  4. Click Update Configuration.

    Note: The Update Configuration button appears only until the app is in Submit status.
  5. In the Configure app with metadata page, click the Download Template.

    Note: This template has predefined fields only for the metadata (configuration details). You cannot modify the app’s basic details, such as its name, image, etc.
  6. To import the updated file, perform one of the following:
    • Drag and drop the updated sample file (.json) from your local computer into the Import Document section.
      (or)
    • Click the Add File button to upload the file from your local computer.
  7. After a successful upload, click Submit.
  8. Click on each tab to view the updated configuration details.
    The following table describes the configuration details of the app:

    Tab

    Description

    APP INFORMATION

    The following app details are created:

    • App ID: Indicates a unique ID that is auto generated while creating an app.
    • App Version: Indicates the version of the app.
    • App Status: Displays the status of the app.
    • Visibility Type: Indicate the type of the app.
    • Public: Indicates that the app is visible for all businesses.
    • Private: Indicates that the app appears only for the business in which the app was created.

    APP CREDENTIALS

    API KEY AND SECERET KEY are generated for the app.

    • Generate key: this key appears if the API KEY AND SECRET KEY are not available for the app. Click this key to generate the API KEY AND SECRET KEY for the app.
    • Regenerate Key: this key appears if the API KEY AND SECRET KEY are already available for the app. Click this key to regenerate the API KEY AND SECRET KEY for the app.

    APP CONFIGURATION

    • Base URL: Displays the base URL to which the app is configured.
    • App Scopes: Displays the scopes of the app.

    WEBHOOKS

    Displays the A synchronous webhook configurations.

    COMMENTS

    Displays the comments of the apps with respect to the status and version.

     
  9. Click the Submit button once the configuration details are updated.
    Note: The updated configuration details appear in the App Marketplace for the published apps.

Submitting an App for Approval

As a business admin and/or a marketplace admin, you can submit the app for approval.

To submit an app for approval,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click Developer Apps in the left navigation panel.
    The Developer Apps landing page displays the list of apps that are created for a business:

    Note: To create a new app, refer to Create an App.
  3. In the Developer Apps landing page, click on the required app.
  4. In the selected app’s page, click the Submit button for approval.

    Note: The app status changes to Submitted.

Approving an app

Only the Marketplace admin can approve an app.

To approve an app,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click Developer Apps in the left navigation panel.
    The Developer Apps landing page displays the list of apps that are created for a business:

    Note: To create a new app, refer to Create an App.
  3. In the Developer Apps landing page, click on the required app.
  4. In the selected app’s page, click the Approve button to approve an app.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/developerappslandingpage.png
    Note: The app is approved, and the status is changed to Publish. Refer to Publishing an App.

Rejecting an app

Only the Marketplace admin can reject an app.

To reject an app,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click Developer Apps in the left navigation panel.
    The Developer Apps landing page displays the list of apps that are created for a business:

    Note: To create a new app, refer to Creating an App.
  3. In the Developer Apps landing page, click on the required app.
  4. In the selected app’s page, click the Reject button to reject the app.
  5. In the Reason to Reject page, provide valid comments for rejecting the app.
  6. Click Submit.
    The app status changes to Rejected.
    Note: An app that is rejected is changed as Created for the user to update the configuration details. See Creating an App.

Publishing an app

As a business admin or a marketplace admin, you can publish an app to the app marketplace.

The apps are categorised as:

  • Public: once an app is published for a business, it is associated with all the businesses and stores. Public apps are visible in all stores for user installation.
  • Private: once an app is published for a business, it is associated only with that business and the stores associated with that business.

To publish an app,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click Developer Apps in the left navigation panel.
    The Developer Apps landing page displays the list of apps that are created for a business.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/developerappslandingpage.png
    Note: To create a new app, refer to Creating an App.
  3. In the Developer Apps landing page, click on the required app.

    Note: You can publish only the approved apps that are in publish status. To approve an app, refer to Approving an App.
  4. In the selected app’s page, click the Publish button to publish the app.

    The app is published.

    Note: The published apps are moved to the App Marketplace for installation. Refer to Installing an App.

Unpublishing an app

The business admin or a marketplace admin can unpublish an app in the Developer Apps page, which removes the app from the Apps Manager page of the App Marketplace.

To unpublish an app,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click Developer Apps in the left navigation panel.
    The Developer Apps landing page displays the list of apps that are created for a business:
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/developerappslandingpage.png
    Note: To create a new app, refer to Create an App.
  3. In the Developer Apps landing page, click on the required app.

    Note: You can publish only the approved apps that are in publish status. To approve an app, refer to Approving an App.
  4. In the selected app’s page, click Unpublish to unpublish the app.

    Note
    : An app that is unpublished is changed as Publish for the user to verify the configuration details.

App Marketplace

Developer Apps | Asynchronous Webhooks

In the App Marketplace apps page, you can,

Prerequisite

Before you start, ensure that you,

  • have a valid role, such as business admin or merchant, and the relevant credentials to access the required business in the Foundation Admin Console of the Infosys Equinox Commerce platform.
  • have the required business within which you need to access the App Marketplace microservice is available in the Foundation Admin Console.

Note: Only the super admins can manage the business. For information, refer to the sections Managing Business and Managing Teams.

End-to-End Flow for Installing an App

In this section you can,

Merchant Workflow for the App Marketplace

The merchant workflow for the app marketplace is mentioned below:

 

Steps for Installing an App in the App Marketplace

To successfully install an app, you need to follow the steps given below:

  1. Enable App Marketplace
  2. Access the App Marketplace service via the Store Ops page.
  3. View the list of published apps and/or the list of unpublished apps.
  4. View the list of Installed apps.

Enabling the App Marketplace

Before you start, you need to associate the App Marketplace microservice to the required business in the Foundation Admin Console. Refer to the section Enabling or Disabling Microservices in the Foundation Admin User Guide.

Note: If required, you can create a new business and associate the roles within. For more information, refer to the section Managing Teams in the Foundation Admin User Guide.

Accessing the App Marketplace Console

Infosys Equinox Commerce platform allows a merchant or a business admin to access the App Marketplace admin console to install the required apps.

To access the App Marketplace console,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click App Marketplace on the StoreOps page.

    The Apps Manager landing page appears:

Managing App Marketplace

In the App Marketplace, you can,

Configuring Search Parameters

Searching for App(s)

You can search for apps based on the App Category and App Name.

To search for an app based on app category and app name,

  1. Click the App Category and App Name option in the header to open an entry field to provide search criteria.
    Note: For displaying a predefined number of apps per screen, see Selecting Predefined Rows.
  2. Enter the desired search criteria in the search field, and then click the Go button.  
    The apps that match the search criteria appear.

Modifying Searchable Fields

To modify the searchable fields,

  1. Click the vertical ellipse available at the beginning of the search field.
  2. Select or deselect the items to add or remove the searchable fields in the header:

    The selected searchable fields appear in the header:

Selecting Predefined Rows

By default, 10 apps per screen will appear, but the number of apps per screen can be modified as follows:

  1. Click the vertical ellipse available at the beginning of the search field.
  2. Select Row Select. The Row Select appears as part of the search criteria.
  3. Select 10 Rows25 Rows, or 50 Rows from the drop-down option.
  4. Click the Go button. The selected rows of apps appear on the screen.
    Note: To reset the search field in the header, click the Reset button.

Apps Manager

The Apps Manager is the app store that lists all apps that are published, from which any business and store can install the apps.

Viewing the Published Apps

You can view the list of published apps in the Apps Manager page, which is the landing page.

To view the published apps,

  1. Log in to the Foundation service for your business (URL provided by Infosys Equinox).
  2. Click App Marketplace on the StoreOps page.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
  3. Navigate to the Apps Manager page.

    The Apps Manager page displays the list of published apps.

Installing an App

You can install an app in the Apps Manager page. Once the installation is successful, the app is installed at the store level.

To install an app,

  1. Navigate to the Apps Manager page.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
    The list of published apps appears.
  2. Click on an app that you want to install.
  3. In the selected app’s page, click Install.
  4. In the confirmation pop-up screen, click Proceed.

    The app is successfully installed, and the selected app’s configuration detail page appears.
    Note: The installed apps are moved to the Installed Apps. For information on configuring an app, refer to the Adding Configuration Details for an App section.

Installed Apps

Installed Apps page lists all the apps that are installed in a store.

Viewing the Installed Apps

You can view the list of installed apps in the Installed Apps page.

To view the installed apps,

  1. Navigate to the Apps Manager page.
  2. Click the Installed Apps tab in the left navigation panel.

    The Installed Apps page appears.

Activating an Installed App

You can activate an app that is in an installed state.

To activate an installed app,

  1. Navigate to the Apps Manager page.
  2. Click Installed Apps tab in the left navigation panel.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
    The Installed Apps page displays the list of installed apps.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
  3. Click the INSTALLED app.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/login.png
  4. In the selected app’s page, click Configuration Details.

    The selected app’s Configurations page appears:
  5. In the selected app’s Configurations page, perform the following:
    • Under Activation, select Activate.
    • In the Merchant ID field, enter the valid merchant ID.
    • In the Environment field, click the drop-down and select the required environment.
    • Check the Enable 3D Secure Payments
  1. Click Save.

    The app is activated successfully.

Adding Configuration Details of an App

You can add the configuration details for an app that is installed successfully.

Note: The configuration details vary based on the app.

To add configuration details for an app,

  1. Navigate to the Apps Manager page.

  2. Click the Installed Apps tab in the left navigation panel.

    The Installed Apps page appears.
  3. Click on an app that is INSTALLED.
  4. In the selected app’s page, click Configuration Details.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
    The selected app’s Configurations page appears:
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
  5. In the selected app’s Configurations page, under Activation, select Activate.
  6. Configure the following:
    • In the Merchant ID field, enter the valid merchant ID.
    • In the Environment field, click the drop-down and select the required environment.
    • Check the Enable 3D Secure Payments
      Note: The above configuration details vary based on the app. The configuration details for an app are uploaded in JSON format while creating an app. Refer to Creating an App and Updating the Configuration Details of an App.
  7. Click Save.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
    The app is activated successfully.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png

Deactivating an Activated App

You can deactivate an active app.

To deactivate an installed app,

  1. Navigate to the Apps Manager page.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
  2. Click the Installed Apps tab in the left navigation panel.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
    The Installed Apps page appears.
  3. Click on an app that is ACTIVATED.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
  4. In the selected app’s page, click Configuration Details.
    The selected app’s Configurations page appears.  
  5. In the selected app’s Configurations page, select Deactivate and click Save.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
    The app is deactivated.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png

Uninstalling an App

You can uninstall an app from the store.

To uninstall an app,

  1. Navigate to the Apps Manager page.
  2. Click on the Installed Apps tab in the left navigation panel.

    The Installed Apps page appears.
  3. Click on an app that you want to uninstall.
  4. In the selected app’s page, click Configuration Details.
    The selected app’s Configurations page appears.  
  5. In the selected app’s Configurations page, select Uninstall.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
  6. In the confirmation page, click Uninstall.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
    The app is uninstalled and removed from the Installed Apps.

Unpublished Apps

Unpublished apps are those that are created only for the business that you have logged into. This page displays the apps that are not published by a business admin or a marketplace admin in the Developer Apps page.

The Unpublished Apps page helps users to test the registered apps by installation the apps.

Prerequisite:

Before you start, ensure that the app is successfully registered in the Developer Apps page. For information, refer to the “Creating an App” section in the Foundation Admin User Guide.

Viewing the Unpublished Apps

You can view the list of unpublished apps in the Unpublished Apps page.

To view the unpublished apps,

  1. Navigate to the Apps Manager page.
  2. Click on the Unpublished Apps tab in the left navigation panel.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
    The Unpublished Apps page appears: 
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png 

Validating an Unpublished App

To validate an unpublished app,

  1. Navigate to the Apps Manager page.
    The list of published apps appears.
  2. Click the Unpublished Apps tab in the left navigation panel.
    The list of Unpublished Apps page appears:
  3. Click on the app that you want to validate.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
  4. In the selected app’s page, click Install.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
  5. In the confirmation screen, click Proceed.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png
    The status of the app appears.
    https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png

Asynchronous Webhooks

App Marketplace | App Scopes and Roles

Infosys Equinox App Marketplace allows apps to register for async webhooks for pre-defined events and actions.

Asynchronous Webhooks Workflow

The asynchronous webhooks workflow is mentioned below: 

https://duseqpxtuo98y.cloudfront.net/guide-appmarketplace8150/enableappmarketplace.png

Webhooks Payload Verification

A signature is a response generated when the payload body is encoded with the App Secret Key.

Prerequisite

Serverless apps should store their app secret, generated when the app is created in the Infosys Equinox app marketplace.

Action

  1. Receive the Signature: Check if you received a signature in the header section or not. The non-availability of the signature means the App Secret is not present for that app.

  2. Extract Signature and Data: If the signature is present, when the receiver receives the webhook data, extract both the data from the body and the received signature from the headers.

  3. Calculate the Signature: Use the calculate HMACSHA256 function to calculate the signature based on the received data and the app secret key.

  4. Compare the Signature: Compare the received signature with the calculated signature. If they match, the data is not tampered with, and the sender is verified.

The following table describes the sample payload and code snippet:

FieldDescription
payload {
version: '2.0',
routeKey: 'POST /target',
rawPath: '/target',
rawQueryString: '',
headers: {
accept: '*/*',
'accept-encoding': 'gzip, deflate, br',
'content-length': '2898',
'content-type': 'application/json',
host: '8jr9vvcqgi.execute-api.us-east-1.amazonaws.com',
signature: '76a82c4751c7716d6a8c56c3d4013a43d9923e1a8fdc42883f7b48d6ddaf5776',
'user-agent': 'node-fetch',
'x-amzn-trace-id': 'Root=1-651bcf81-66dd86aa0d0202845330e51a',
'x-forwarded-for': '54.226.21.201',
'x-forwarded-port': '443',
'x-forwarded-proto': 'https'
},
requestContext: {
accountId: '277827593990',
apiId: '8jr9vvcqgi',
domainName: '8jr9vvcqgi.execute-api.us-east-1.amazonaws.com',
domainPrefix: '8jr9vvcqgi',
http: {
method: 'POST',
path: '/target',
protocol: 'HTTP/1.1',
sourceIp: '54.226.21.201',
userAgent: 'node-fetch'
},
requestId: 'MN1cVgmhoAMEMSA=',
routeKey: 'POST /target',



stage: '$default',
time: '03/Oct/2023:08:23:29 +0000',
timeEpoch: 1696321409814
},
body: '{"webhookDetails":{"appId":"651bce9d5d4dea0a83931083","appVersion":"1.0.0","storeId":"11","serviceCollectionId":"11","serviceName":"appmarketplace","subscriptionId":"651bcf085d4dea0a83931089","webhookId":"appmarketplaceservices.apps.updateinstallation","webhookName":"appmarketplaceservices/apps/updateinstallation","webhookType":"ASYNC","webhookUrl":"https://8jr9vvcqgi.execute-api.us-east-1.amazonaws.com/target","webhookTestUrl":"https://8jr9vvcqgi.execute-api.us-east-1.amazonaws.com/target","priority":"25","active":true,"createdOn":"2023-10-03T08:21:28.508","createdBy":0,"updatedOn":"2023-10-03T08:21:28.508","updatedBy":0},"event":{"version":"0","id":"72ebee61-6d96-7906-01c9-49f4d9c9411e","detail-type":"appmarketplaceservices/apps/updateinstallation","source":"appmarketplaceservices","account":"277827593990","time":"2023-10-03T08:23:28Z","region":"us-east-1","resources":[],"detail":{"id":"651bce9d5d4dea0a83931083","timestamp":1696321408767,"payload":{"patchResponseList":[{"createdBy":0,"createdOn":[2023,10,3,8,21,28,303000000],"updatedBy":0,"updatedOn":[2023,10,3,8,23,28,762325000],"id":"651bcf085d4dea0a83931085","appId":"651bce9d5d4dea0a83931083","appVersion":"1.0.0","merchantId":"1234","storeId":"11","collectionId":null,"clientId":"tarb86dd127749a","visibilityType":"PUBLIC","storeName":"T-Giant B2C Store","status":"ACTIVATED","category":"string","appName":"targetTest10","installationComplete":true,"installationStatus":"FULL","active":true,"appDisplayType":"DESKTOP","appConfigData":{"uiConfig":null,"feed":null,"installationConfig":null,"collectionConfig":[{"serviceName":"auth","serviceCollectionId":"10"},{"serviceName":"catalog","serviceCollectionId":"10"},{"serviceName":"inventory","serviceCollectionId":"10"},{"serviceName":"pricing","serviceCollectionId":"10"},{"serviceName":"order","serviceCollectionId":"1538405371250445"}]},"reason":null,"businessId":"3","businessEmail":null,"merchantEmailId":null,"businessType":"B2BANDB2C","processType":null,"locale":"en_US","storeLogo":"null"}]},"eventType":"appmarketplaceservices/apps/updateinstallation","userId":"45","actOnBehalfOfUser":0,"roles":["ROLE_SUPER_ADMIN"]}},"appConfigData":{"collectionConfig":[{"serviceName":"auth","serviceCollectionId":"10"},{"serviceName":"catalog","serviceCollectionId":"10"},{"serviceName":"inventory","serviceCollectionId":"10"},{"serviceName":"pricing","serviceCollectionId":"10"},{"serviceName":"order","serviceCollectionId":"1538405371250445"}],"uiConfig":null,"feed":null,"installationConfig":null},"businessId":"3","clientId":"tarb86dd127749a","authToken":"eyJhbGciOiJIUzUxMiJ9.eyJjcmVhdGVkIjoxNjk2MzIxNDA5NzYxLCJhY3Rpbmd1c2VybmFtZSI6IjIwMjMiLCJleHAiOjE2OTY0MDc4MDksImhhc2giOiJhYzRmMWE3NmRkNWJhMGVlMTViOTg4ZTVjZWEzNmM0MiIsImF1dGhvcml0aWVzIjoiW3t9XSIsInVzZXJuYW1lIjoidGFyYjg2ZGQxMjc3NDlhIn0.HcC_M7_DJkHDX3k2L365Cw9dQGeokg2pgKkl1ot-bCxPWE86JnSKP7yqs4ALXcd_dlN1M0nNdCH5jL5J9Ttwdg"}',
isBase64Encoded: false
}
code snippetimport CryptoJS from 'crypto-js';



let signatureReceived = event.headers.signature;

let bodyReceived = event.body;

let apiSecret = getValuesFromParameterStore;



var signature = calculateHMACSHA256(bodyReceived, apiSecret)

if (signatureReceived == signature) {

console.log("Authentication Successfull")

} else {

console.log("Authentication Failed")

return {

statusCode: 400,

body: "Authentication Failed"

};

}



function calculateHMACSHA256(event, secretKey) {

var hmac = CryptoJS.HmacSHA256(event, secretKey);

return hmac.toString(CryptoJS.enc.Hex);

}

App Scopes and Roles

Asynchronous Webhooks | Revision History

There are various scopes and roles for the apps to call the Infosys Equinox microservices. 

The following table describes the list of app scopes and roles that can be used for the app configuration:

SCOPEROLES
CatalogCATALOG_ADMIN
ROLE_CATALOG_ADMIN
ROLE_ACCOUNT_ADMIN
ROLE_ACCOUNT_REP
ROLE_MERCHANDISE_ADMIN
ROLE_MERCHANDISE_EDITOR
ROLE_PROMOTION_ADMIN
ROLE_PROMOTION_EDITOR
ROLE_CUSTOMER_ADMIN
ROLE_CATALOG_EDITOR
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_GUEST
ROLE_REG_USER
ROLE_SELLER_USER
AccountsROLE_ACCOUNT_ADMIN
ROLE_ACCOUNT_REP
ROLE_STORE_OPERATOR
ROLE_ACCOUNT_BUYER_ADMIN
ROLE_ACCOUNT_BUYER
ROLE_GUEST
AddressROLE_ADDRESS_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_REG_USER
ROLE_GUEST
Cart and checkoutROLE_CART_ADMIN
ROLE_CUSTOMER_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_REG_USER
ROLE_GUEST
Customers (user)ROLE_CUSTOMER_ADMIN
ROLE_ACCOUNT_BUYER_ADMIN
ROLE_ACCOUNT_ADMIN
ROLE_ACCOUNT_REP
ROLE_MERCHANDISE_ADMIN
ROLE_MERCHANDISE_EDITOR
ROLE_CATALOG_ADMIN
ROLE_PROMOTION_ADMIN
ROLE_PROMOTION_EDITOR
ROLE_ORDER_ADMIN
ROLE_PRICE_ADMIN
ROLE_PRICE_EDITOR
ROLE_CATALOG_EDITOR
ROLE_LOYALTY_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_GUEST
ROLE_REG_USER
ROLE_CSR_ADMIN
MerchandisingROLE_MERCHANDISE_ADMIN
ROLE_MERCHANDISE_EDITOR
ROLE_ACCOUNT_ADMIN
ROLE_ACCOUNT_REP
ROLE_STORE_OPERATOR
ListsROLE_LIST_ADMIN
ROLE_REG_USER
ROLE_GUEST
LocationLOCATION_ADMIN
ROLE_CSR_ADMIN
ROLE_STORE_OPERATOR
ROLE_LOCATION_ADMIN
ROLE_GUEST
ROLE_REG_USER
LoyaltyROLE_LOYALTY_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_SUPER_ADMIN
ROLE_BUSINESS_ADMIN
ROLE_REG_USER
ROLE_GUEST
NotificationROLE_MARKETING_MANAGER
ROLE_STORE_OPERATOR
PromotionsROLE_PROMOTION_ADMIN
ROLE_CUSTOMER_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_GUEST
ROLE_REG_USER
ROLE_PROMOTION_EDITOR
PaymentROLE_PAYMENT_ADMIN
ROLE_ACCOUNT_ADMIN
ROLE_ACCOUNT_BUYER_ADMIN
ROLE_ACCOUNT_REP
ROLE_CUSTOMER_ADMIN
ROLE_ORDER_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_ACCOUNT_BUYER
ROLE_GUEST
ROLE_REG_USER
SearchROLE_SEARCH_ADMIN
ROLE_ACCOUNT_ADMIN
ROLE_ACCOUNT_REP
ROLE_MERCHANDISE_ADMIN
ROLE_MERCHANDISE_EDITOR
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_REG_USER
ROLE_GUEST
ROLE_ACCOUNT_BUYER_ADMIN
ROLE_ACCOUNT_BUYER
ShippingROLE_SHIPPING_ADMIN
ROLE_CUSTOMER_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_REG_USER
ROLE_GUEST
SubscriptionROLE_SUBSCRIPTION_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_REG_USER
ROLE_SUPER_ADMIN
ROLE_BUSINESS_ADMIN
TaxROLE_TAX_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_REG_USER
ROLE_GUEST
PricingPRICE_ADMIN
ROLE_PRICE_ADMIN
ROLE_ACCOUNT_ADMIN
ROLE_ACCOUNT_BUYER_ADMIN
ROLE_ACCOUNT_REP
ROLE_CUSTOMER_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_PRICE_EDITOR
ROLE_GUEST
ROLE_REG_USER
App MarketplaceROLE_BUSINESS_ADMIN
ROLE_MARKETPLACE_ADMIN
ROLE_PAYMENT_ADMIN
ROLE_CATALOG_ADMIN
ROLE_SHIPPING_ADMIN
ROLE_MARKETPLACE_USER
ROLE_GUEST
ROLE_REG_USER
ROLE_RULESMANAGER_ADMIN
Rules ManagerROLE_RULESMANAGER_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_SUPER_ADMIN
ROLE_BUSINESS_ADMIN
ROLE_REG_USER
ROLE_GUEST
Ratings and ReviewsROLE_RATINGSREVIEWS_ADMIN
ROLE_REG_USER
ROLE_RATINGSANDREVIEWS_ADMIN
ROLE_RATINGSANDREVIEWS_MODERATOR
ROLE_RATINGSANDREVIEWS_VIEWER
ROLE_GUEST
ROLE_STORE_OPERATOR
InventoryROLE_CUSTOMER_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_SELLER_USER
ROLE_ACCOUNT_BUYER_ADMIN
OrderROLE_ORDER_ADMIN
ROLE_ACCOUNT_ADMIN
ROLE_ACCOUNT_REP
ROLE_CUSTOMER_ADMIN
ROLE_CSR_ADMIN
ROLE_CSR_ASSOCIATE
ROLE_STORE_OPERATOR
ROLE_REG_USER
ROLE_GUEST
ROLEFRAUDAPPROVAL
ROLECANCELAPPROVAL
UPDATESHIPMENT
ROLE_FRAUDAPPROVAL
ROLE_CANCWL_APPROVAL
ROLE_UPDATESHIPMENT
ROLE_ACCOUNT_BUYER_ADMN
ROLE_ACCOUNT_BUYER

 

 

Revision History | top
 

 

Revision History
2023-10-10 | SW – Created the document for the release 8.15.0