How to set up your first iPMC extension in 5 minutes

This time I will show you how to set up your first iPMC extension in 5 minutes. We will start a new VS project using pre-defined templates found at inRiver’s community ( After deployment we will trigger the Test() method (all inRiver extension have this method). Let’s get started!

Pre-requirements: Go to and follow the guide on how to set up inRiver Visual Studio templates.


1.       Create a new project. I will call mine “Sigma.iPMC.Demo” and I will create a “Scheduled Extension”

iPMC Visual Studio extension templates

2.       Right click the project and go to “Manage NuGet Packages…” Restore packages and go to “Updates” tab and update the “inRiver” package to the latest stable version.

Manage Nuget Packages

Update inRiver Remoting iPMC package

3.       (Optional) Change name of the predefined “MyScheduledExtension.cs” and “MyExtension” class name. I will use “DemoScheduledExtension” for both.

Change Class name

4.       Add a return message to the Test() method. I will also add a log message so that we can confirm that logging is working. A tip is to log out your “ExtensionId” when logging. It makes it easier to see what extension that does what in the “ants war” of log messages in Control Centers log.

Edit Test() Method

5.       It’s time to build your extension and then create the zip package that we will upload to Control Center. Rename the zip file to something meaningful. The zip file name will be used as an ID for your package in ControlCenter. (“.pdb” files does not need to be included).

Build package and zip it

6.       Go to Connect -> Packages and upload the package to your ControlCenter. Don’t forget to press “Upload” button after dropping the file in the drop area.

Upload your package to iPMC ControlCenter

7.       Go to Connect -> Extensions and press “Add Extension”. Fill in the form to set up your extension.

My extension settings:

Extension Id: SigmaDemoExtension


Assembly Name: Sigma.iPMC.Demo.dll

Assembly Type: Sigma.iPMC.Demo.DemoScheduledExtension

Extension Type: ScheduledExtension

Tip: Assembly Name is your extension class namespace + extension class name

Get AssemblyName

Press “Save” when finished.

Save your Extension 

8.       Now everything is set up! Let’s press Test and confirm that everything is working! Now a small alert box should show up in the lower right corner containing your return message. Don’t forget to check your log message also!

Run Test

Check Log


Daniel Jansson

Daniel Jansson
inRiver PIM Developer


Unified Commerce