Overview

Document image


Introduction

SparkLayer Ignite is a commerce framework that enables any platform to easily integrate with the power of SparkLayer. From delivering a world-class frontend B2B self-service ordering experience, to connecting to SparkLayer's extensive B2B pricing engine.

Use Cases

The most common use case is to use SparkLayer Ignite alongside a complimentary eCommerce platform or content management system (CMS). For example, an eCommerce platform may have very limited B2B ecommerce functionality and it's not viable to build it natively. By connecting the eCommerce platform to SparkLayer Ignite (e.g. via a custom application), B2B functionality can be rapidly enabled.

Please note: access to SparkLayer Ignite requires completing an application form that our team will review. As part of the approval process, we will evaluate applications to ensure SparkLayer is a good match for the relevant use case, both technically and strategically.

Before starting

Our documentation covers all key principles and concepts required to build an integration via the SparkLayer Ignite framework. This includes how to connect a platform (e.g. an eCommerce platform) and synchronise data, right through to connecting to specific endpoints to allow you to customise as you need to. In order to familiarise yourself with how SparkLayer works, we recommend reviewing the following guides:

Area

Notes

The SparkLayer Frontend is a JavaScript overlay that replaces specific parts of an eCommerce website with wholesale ordering capabilities.

The SparkLayer Dashboard is a web browser-based tool that lets users keep track of all elements of their SparkLayer integration.

Key Principles

Understanding the data flow

Understanding how data flows between SparkLayer and a platform (e.g. an eCommerce platform) is central to building an integration. At a very top level, our diagram below illustrates the key data flows:

Document image


Platform Connection

Platform Connection is the term used for when a platform is connected to SparkLayer (e.g. an eCommerce platform). There are two endpoints:

  1. One to inform of new connection
  2. Another to inform once it's removed

Learn more about Platform Connection.

Data Sync Overview

SparkLayer requires data from the platform in order to operate. When an install initially happens, a full sync will be required to begin the process. For further updates, webhooks should power these incremental changes with the option to run the sync again (in case of any issues). For visibility, data sync issues should also be logged within the SparkLayer Dashboard for easy review. Data should include:

Area

Details

Product Data

SparkLayer needs a basic level of product data to be synced across for the frontend widgets to operate.

Customer Data

SparkLayer needs a basic level of customer data to be synced across for the frontend widgets to operate.

Order Data

SparkLayer needs order data to be synced across for the frontend widgets to show order data within the account section.

Store Settings

SparkLayer needs to know the base currency of the store

Learn more about the Data Sync.

Endpoints

The below are required instantly on a customer request and these endpoints will outline the request body and response body.

Area

Details

Create/update/delete of addresses

Via the frontend, customers can create, update and delete their addresses; we require endpoints to action these.

Fetching shipping and tax for an order

Via the frontend, as the customer proceeds through the checkout; we need to be able to show shipping rates and tax information for an order.

Create/delete customers for sub-accounts

Via the frontend, customers can create and delete the customers which are sub-accounts; we require endpoints to action these.

Create a checkout for upfront orders

Via the frontend when a customer places an order which requires ‘upfront payment’ through the platform (e.g. via credit card), we need to be able to send the user to the checkout to complete payment. This checkout can use the standard platform checkout and does not need to include discounts and giftcards.

Create a order for orders with payment handled offline

Via the frontend when a customer places an order which does not require payment, we need to be able to create an order in the platform.

Learn more about the Endpoints.

Please note the following

Currently, these areas are excluded from this documentation and will be covered in due course or elsewhere.

  • Billing and any SparkLayer dashboard logic
  • SparkLayer currently only supports a single storefront per SparkLayer environment.
  • SparkLayer currently only supports simple option products, i.e. complex bundles are unsupported.