Outbound calls

An outbound call is a service provided by an external system (for example an ERP or PIM), being called from Litium Studio.

An outbound call is a service provided by an external system (for example an ERP or PIM), being called from Litium Studio.

The implementation does not need to be built inside Litium Studio which makes the outbound service very extensible.

For code samples on how to build services using Litium Studio API, open the code behind files (.cs) in the sample project.


Since the  Integration Kit uses the IoC engine no configuration is necessary. Read more about IoC.

Get outbound service implementation

To get the outbound service you will get the instance from the plugin factory. The plugin factory is found in namespace Litium.Foundation.Modules.Ecommerce.Plugins and the class name is PluginFactory.

Example to get the outbound service for the IOutboundService-contract:


Asynchronous events

As standard, Litium Studio event handlers are called immediately when an event occurs. These are called synchronous events. However, some events should be called shortly after the event occurs and are called asynchronous events. Asynchronous events uses outbound calls for calling external systems based upon an event that is raised inside Litium Studio.

For example: When a customer updates his public profile on your e-commerce site, you also want to update customer information in your CRM system. In this case you want the updated information to be sent and the customer to be able to continue shopping, without errors, even if the CRM system is down.

Internally, Microsoft Message Queue (MSMQ) is used to ensure that all events are raised in correct order. If an event throws an exception the service will try to raise the event until it succeeds. In the above example: If the CRM should be down the customer information will be sent repeatedly until the CRM system has been updated.


To use the asynchronous events included in the package you need to install the following services:


The asynchronous events are self-configured and ready to use. When the Microsoft IIS application starts, the MSMQ will create the necessary message queue. If you already have a message queue that you want to use you can configure this in the Web.config as follows.

Specify MSMQ name (optional):

  • Open the Web.config
  • In the appSettings-section you should add the setting IntegrationMQPath;
    • IntegrationMQPath should contain the full path for the queue that will be used.

Overview on how to use asynchronous events

  • Create an event handler that extends the Litium.Studio.Integration.Events.EventHandler.
  • Register your transactional event handlers.
  • Register your events subscription.
  • Create a new instance of the event handler when the application starts, e.g. in the Global.asax.


Is this page helpful?
Thank you for your feedback!