Channable

Channable is a service which integrates with more than 2500 price comparison websites, marketplaces and affiliates – e.g. Amazon, Google Shopping, Facebook, eBay, and many many others. As such, an integration with channable.com saves you from a lot of time and effort spent on creating and maintaining complex integrations to various channels.

An integration to Channable requires:

  • A channable.com account
  • A solution with Dynamicweb PIM

Basically, an integration to Channable means:

  • Creating a product feed which transforms data from Dynamicweb PIM into a format understood by Channable
  • Creating a project in Channable consuming the feed
  • Creating a scheduled task job in Dynamicweb for synchronizing order data between Channable and a Dynamicweb solution

So let’s get started!

The first part of an integration to Channable is to set up a product feed with product data for Channable to consume.

When you connect to Channable, you probably have some sales channels already in mind – and chances are some of these will require specific fields to be present on a product. Of course, in order for this information to be passed on to Channable it needs to exist in Dynamicweb, and it must be included in the product feed.

To make things easier for you we’ve created a QuickSetup procedure which:

  • Creates a product category with ~45 mandatory or recommended fields
  • Creates a feed which included these fields as well as a number of standard fields

You don’t have to follow this procedure, but in most cases it will save you a lot of time.

The QuickSetup tool is based on three files which are updated and maintained by us when new fields are marked as mandatory or recommended by Channable. While these files are included on all new solutions when they are created, they might very well change over time – so to make sure you have the correct files you must:

  1. Go to Files/System/Integration and delete the ChannableFeedSetUp.xml file
  2. Go to Files/System/Integration/Jobs and remove the ChannableFeedQuickSetup.xml file
  3. Go to Files/Templates/Feeds and delete the channable_products_transformer.xslt file
  4. Go to Settings > System > System Information  and rerun the ecom.xml.aspx update script from position 2000

This ensures that you have the latest version of the files – the next step is to create a one-time-only integration job which will create Channable fields and a feed for the solution:

  1. Go to Setting > Integration > Data Integration
  2. Click New activity
  3. Select the XML Provider as the source provider, then:
  4. Use the Source file file selector to browse to /System/Integration and select the ChannableFeedSetup.xml file
  5. Click Next
  6. Select the Dynamicweb Provider as the destination provider
  7. Click Next
  8. Include all source tables
  9. Click Finish and name the job, e.g. Channable Setup
  10. Click Save & Run in the toolbar

After the job has been succesfully executed:

  • Go to Setttings > Ecommerce > Product Catalog > Product categories and verify that you now have a category called ChannableFields. Apply the product category to any group containing products which should be exported to Channable, typically this will be one or more Channel groups, but it depends on your setup.
  • Go to PIM > Feeds and verify that you have a feed called Channable Feed – you may have to recycle the application pool for this to show up

Now, the feed is not completely configured – we can’t know the name of your query nor the context you want to include in the feed:

  1. Right-click the Channable feed and click Edit feed
  2. Select the query containing the products you want to export
  3. Define the context:
    1. Select one or more languages
    2. Select one or more currencies
    3. Select a channel
  4. Save

The context is relevant for determining which context-sensitive properties to publish to the feed, e.g. image patterns, group structures and so on.

Open the feed URL in frontend and verify that the output looks as expected.

Please note: The instructions in this section may not be up to date, since they describe procedures on on a external system over which we have no control. If you encounter any issues, please contact Channable support and also kindly let us know that we need to revise this guide. Thank you.

After you’ve set up the product feed you need to create a project in Channable which consumes the feed.

Login to Channable.com and create a new project:

  1. Under Setup select XML
  2. Name the import
  3. Enter the feed URL as the XML file URL – this URL must be public, of course – and press continue
  4. Review and edit mappings, if necessary
  5. Click Save & Import

The import will now run and you will be able to work with the imported products – items in Channable terms – as per usual.

As of Dynamicweb 9.9, Dynamicweb also supports order synchronization between a Dynamicweb solution and a Channable account - which means:

  • Importing orders from Channable to a Dynamicweb solution
  • Pushing changes made to the order in Dynamicweb to Channable:
    • Order state (CancelledCompleted, etc.)

 To set up order synchronization first ensure that you have the most recent transformation file:

  1. Go to Files/System/Integration and and delete the channableOrders.xslt file
  2. Go to Settings > System > System Information and rerun the ecom.xml.aspx update script from position 2000

Then navigate to Settings > Integration > Scheduled tasks and:

  1. Create a new scheduled task
  2. Select the Channable orders transport add-in
  3. Fill in the parameters with values from your Channable account:
    1. Company id
    2. Project id
    3. Token
  4. Specify a destination folder and file name for file containing order data from Channable
  5. Select an integration job to execute when this scheduled task is run – leave this blank for now.
  6. Select an orders channel – this will be used to name the imported orders and place them in the correct list in Ecommerce > Orders

Run this task manually to create an XML file with orders data. Make sure the file contains correct order data, and then create a new integration job:

  • Go to Settings > Integration > Data Integration
  • Click New activity
  • Select the XML Provider as the source provider, then:
    • Select the source file you generated using the scheduled task
    • Check Delete source file
    • Under XSL file select the channableOrders.xslt file
    • Check Archive source file
    • Click Next
  • Select the Dynamicweb Provider as the destination provider, then:
    • Click Next
  • Include all source tables
  • Click Finish and name the job
  • Click Save and run in the toolbar

After the job has been run you should open Ecommerce > Orders > YourChannelName and verify that you can see the orders imported from Channable. If everything looks fine you should:

  • Go back to the scheduled task and edit it
  • Under Success integration job select the integration job you just created
  • Schedule the task as appropriate
  • Save and close

This chains everything together, so that when the task runs it retrieves order data from Channable and saves them to disk. The import job is then run, and the file with Channable XML is run through the channableOrders.xslt file to transform it into a format understood by Dynamicweb and then imported.