Endpoints Overview

Introduction

This section covers the endpoints that must be implemented by the Ignite integration. Please consult the Endpoints Reference documentation for the implementation details of each endpoint, as well as the relevant overview pages for each area.

The rest of this document provides an overview of the endpoints that must be implemented by the Ignite integration for various areas:

Platform Connection

Add a platform connection: the endpoint is called when a platform is connected to SparkLayer. This is done either when a connection is initialized though the SparkLayer Dashboard or when a connection is initialized externally (e.g. though the eCommerce platform SparkLayer app) and is now complete. The data provided will contain the SparkLayer site environment, ID as well as the API credentials.

Remove a platform connection: the endpoint is called when a platform is disconnected from SparkLayer. The integration should ensure any data syncs are cancelled and the connection data is cleaned up from the integration.

You can view the in-depth Platform Connection requirements here.

Data Sync

Allow the triggering of the sync process from the SparkLayer Dashboard. This is only available to internal staff and used when data needs manual refreshing.

You can view the detailed requirements here.

Customer sub-account

Customer sub-accounts require customer accounts on the eCommerce platform providing a layer of authentication for SparkLayer to use similar to other accounts. These endpoints allow creation and deletion of customers for sub-accounts which can be actioned via the frontend widgets.

Customer addresses

These endpoints allow creation, updates and deletion of customers addresses which can be done via the frontend widgets.

Checkout

These endpoints are for calculating checkout tax, collecting available shipping methods and allowing a checkout to be created and completed (an order to be created on the platform). The checkout for upfront payment can use the standard platform checkout and does not need to include discounts and giftcards.

Important considerations:

  • If the platform may at any point require the checkout prices to be supplied with the tax included, this needs to be handled by adding this tax to the prices that come from SparkLayer in the checkout endpoints. This is because SparkLayer prices are always tax exclusive.
  • Similar to the point above, if the calculated shipping prices that come back from the platform contain tax this should also be accounted for, keeping in mind SparkLayer operates on tax-exclusive pricing.
  • Carts, checkouts and orders created or updated by SparkLayer Ignite integration should be tagged that they originated from SparkLayer. For example an external_id or source parameters might need to be set, or a metafield might need to be added. This should then be used by the Order Sync logic to know which orders should be syned to SparkLayer.
  • All data supplied by SparkLayer to the Ignite integration's checkout endpoints should be stored on the relevant platform cart, checkout or order objects. Where possible this data should be mapped to the native fields (e.g. customer id, order additional info etc) however in many cases metafields and attributes will need to be utilised to store some of the data that does not have a native field match.