Integration

Broadly speaking, Integration in Dynamicweb consists of two main tools:

  • The basic Data Integration module which allows you to import and export data in various formats like XML, CSV or even directly to and from Microsoft SQL server databases.
  • The extended Integration Framework which is a collection of components which can be used as an advanced starting point for developing custom integrations, live integration of dynamic data (e.g. prices, stock) from an ERP system.

Read a very short introduction to them below - or use the left-side menu to access more in-depth information.

Dynamicweb also integrates with a large number of payment and shipping providers – read more under Payment and Shipping in the Ecommerce documentation.

The Data Integration module lets you import and export data to and from Dynamicweb, and is modeled after the import/export tool in Microsoft SQL Server Management Studio.

In general terms, the module works by pairing a data source with a source provider, then selecting a destination provider appropriate to the intended data destination –see Figure 2.1.

If you want to export your users to an XML-file, for instance, you select the User provider as the source provider and the XML provider as the destination provider.

Figure 2.1 The Data Integration module provides you with a lot of flexibility regarding input and output formats

Dynamicweb ships with a number of built-in providers, most of which function as both source and destination provider. Additionally, you can create custom providers. This means that you have a large degree of freedom right out of the box when importing or exporting data to and from Dynamicweb.

The Integration Framework is a really cool piece of software which lets you integrate with external systems, like Dynamics AX & NAV or Perfion, directly – either in real-time (live integration based on actions like showing a product in frontend or updating a shopping cart) or at pre-defined intervals (batch integration, i.e. scheduled integration activities).

This means that you can let each system do what it does best – e.g. let your ERP system handle product details (like stock, descriptions, IDs, prices, etc.) and product cart calculations (like quantity discounts, customer specific prices, shipping fees, etc.), users or orders while Dynamicweb handles the rest (Figure 3.1), all of course depending on your setup and your needs.

Figure 3.1 The integration framework allows you to quickly develop integrations to almost anything

Broadly speaking, the Integration Framework has three components:

  • A code unit which is installed on the ERP System. It acts as a translator between ERP data and the XML format accepted by the Dynamicweb Connector.
  • The Dynamicweb Connector, which receives and transmits data to and from the ERP system and Dynamicweb.
  • The Batch and Live Integration Modules which receive and transmit data on the Dynamicweb end of the integration. 

You can read more about the Integration Framework in this section.

Technically, Batch Integration is an extension of the Data Integration module – under the hood, the Data Integration module is still doing its thing – with added options, components and extensibility points, and Live Integration is a Visual Studio Project with most of the groundwork already done for you, so you only need to tailor the details to suit your setup.

We provide examples of code units for the following ERP systems:

  • NAV: 2009 R2, 2013, 2013 R2, 2015, 2016
  • AX: 2009, 2012, 2012 R2, 2012 R3

Of course, in principle Dynamicweb can integrate with any external system out there, as long as you, your partner or we do the necessary customization. For instance, we also deliver all the components for integrating with Perfion and SkyPIM.

There is no significant technical overhead when running the Integration Framework – it has been built for speed, security and robustness after all – so if you can run a Dynamicweb application you can use the Integration Framework.

However:

  • You must be able to install the DynamicwebConnector in the environment where the remote system resides
  • The web service exposed by the DynamicwebConnector must be reachable from the Dynamicweb solution
  • You must ensure that the relevant ports on the remote system environment can be reached

Additionally, some knowledge of XML is useful for debugging purposes.