Chapter 21. KonaKart ERP Integration

Table of Contents

Introduction
File Transport
XML Message Structure
Messages from ERP to KonaKart
Update Product
Update Product Prices
Update Order
Export Invoice
Export Customer to KonaKart
Match Customer to KonaKart
Payment Capture
Messages from KonaKart to ERP
Export Customer to ERP
Match Customer to ERP
Order Export to ERP
Update Object
Installation and Configuration
Incoming Message Processor
Apache ActiveMQ
ERP Integration - Configuration Parameters
ERP Integration - OrderIntegrationMgr
ERP Integration - Logging

The Business and Enterprise Editions of KonaKart provide features for integration with an ERP system by exchanging XML messages on a message queue (Apache MQ is bundled with KonaKart to support this feature). All of the key integration points are supported between KonaKart and the ERP system and vice versa.

Introduction

ERP Integration is achieved by using the exchange of a set of generic XML messages that are used at the major "touch-points" between KonaKart and ERP systems.

One of the principal requirements is that the interface be flexible enough to support multiple different ERP systems built using a variety of technologies. In order to provide this flexibility it was decided to use a file based protocol consisting of the transfer of XML files. XML was chosen for the following reasons:

  • It has near ubiquitous support in a wide array of languages and frameworks. Whatever ERP system being used, more likely than not there's already a tool available to help extract information from an XML response and / or create an XML message.

  • Schema support. i.e. the ability for party A to specify the format of a document and the ability for party B to check that they are supplying something that matches this format.

  • XML is human readable which can be advantageous in certain situations.

  • Compared to other formats such as CSV it's also far more straightforward to create multi level hierarchical structures. e.g. An order object consists of an array of order product objects, 3 address objects etc.

  • XML allows you to add new attributes whilst retaining backwards compatibility. This should allow specific ERP implementations to easily update to the latest version of the interface adapter with minimal or no code changes.