Skip to main content

How Channels Works

Overview

This document is written to give you insights on how Despatch Cloud's industry leading channel integration software works in the background.

Channels Flow

image.png

Channels imports orders and product data from integrated sales channels. It also sends any fulfillment data and stock updates that might have occurred back to the sales channel that the orders were imported from. This allows you to seamlessly manage all your products from one place, ensuring that the stock levels of a product you're selling on different marketplaces to always be synchronized, preventing problems like overselling.

 

Order Flow

image.png

The flowchart above shows the entire lifecycle of an order that is imported into Channels from a sales channel. First, the order gets created and processed by the sales channel in question. Afterwards, the sales channel sends the order to Channels, where it gets processed by us. Orders and order updates are imported every 3 minutes, and by default, we only import paid and unfulfilled orders (if you'd like to import other types of orders as well, you can set that up on a channel-by-channel basis). Afterwards, Channels will update the products stock levels according to how many of the item was in the order and send the information to the sales channel.

 

Order Fulfillment Flow

image.png

The flowchart above shows the entire lifecycle of fulfillment actions on Channels. First, an Order Fulfillment is created through an API call and gets processed in Channels. Afterwards, Channels takes the fulfillment information for the order and sends it to the sales channel. After the sales channel receives it and sends back a success response, it marks the fulfillment status of the order as "Synced".

Plugin Flow:

Screenshot 2024-04-15 at 13.53.36.png

Channels allows you to integrate plugins, like fulfillment centers, to control order fulfillments and stock updates. Channels takes the orders it receives from your sales channels and sends them to any plugins you might have added to your store. The plugin then takes the order and creates fulfillment data for it, updates the products stock, and sends this information to Channels. Channels takes the fulfillment information and the updated stock levels and sends them back to the sales channels.

Plugin Order Flow

image.png

The flowchart above shows the lifecycle of orders that get processed and fulfilled through plugins. First, an order is created in a sales channel. Afterwards, said order is sent to Channels, where it's directly sent to the plugin. The order gets processed and fulfilled by the plugin platform, and product stock levels are dropped according to the items in the order. Next, the plugin sends the updated stock levels and fulfillment information back to Channels, and Channels sends this data back to the sales channel.

Plugin Fulfillment Flow

image.png

The flowchart above shows the entire lifecycle of an order fulfilled by a plugin. First, the fulfillment data is created on the plugin platform when they finish fulfilling the order. The plugin platform sends this data over to Channels, which then creates a fulfillment and sends it over to the sales channel where the order originated from. After the sales channel receives this fulfillment, its status is set as synced.

Webhook Flow

image.png

The flowchart above shows what kind of information Channels sends to sales channels and 3rd party systems through its webhook capabilities. Channels keeps Order, Product, Channel Product and fulfillment information and sends it over through webhook when events are triggered.

image.png

The flowchart above shows how webhooks transmit data to and from Channels. First off, a customer creates a webhook for one of their stores. The webhook transmits data that Channels has regarding stock updates, order updates, product updates and any other changes that might happen to your account. For a webhook to transmit this data to a sales channel or a 3rd party, it must be triggered. The triggers Channels accepts are "Created", "Updated", "Excluded" and "On Hold". These can be tweaked in the webhook settings page. Any time a product or order goes through one of the states above, a webhook is triggered. When the webhook is triggered, it sends data to the receiver URL. These receiver URLs can be warehouse management systems, order management systems, and any other 3rd party platform you're using, including Despatch Cloud's suite of products like Orders, Shipping and Fulfilment.

Product Data Flow

image.png

Channels keeps 2 different sets of information - inbound products and inbound inventory. Inbound Products are also seperated into two different categories: Product data and Channel Product data. For Product Data, we keep the products SKU, and for Channel Product data, we keep the products SKU, image, price, dimensions, weight and customs info. This information is delivered to Channels via API calls and Sales Channels and sent back when any updates occur. Inbound Inventory data is imported from API calls and Plugins. API quantity and Plugin quantity are kept seperate, but a total quantity number is sent to the sales channels or the 3rd party platforms whenever updates occur.