From blogs to case studies to news, we love sharing our tips and tricks for asset management, cloud, IoT and smarter operations.

by | Sep 26, 2019

Fundamentals of Maximo Integration

The Need for Maximo Integration

The capabilities of Maximo in the asset management space are well known for decades now. In fact, it is getting even smarter by the day, from preventive and reactive maintenance, with the advent of IoT, we have moved towards predictive maintenance. Similarly, the introduction of AHI (Asset Health Insights) and work centres have only helped Maximo leap further as the leader in the asset management space. So, we have a powerful tool that increases asset life thus improving ROI and reducing operational costs. However, it is highly likely for the asset intensive organizations to be running enterprise finance application (ERP) such as Oracle Peoplesoft, JD Edwards, SAP Financials or Dynamics Navision to manage their accounts and ledgers. There arises the need to keep the financial transaction data from Maximo in sync with the finance application through Maximo integration. This helps businesses to have clarity over operation and performance of assets by tracking maintenance costs.

Maximo Integration

~ Enterprise Finance Applications ~

Three Ways to Integrate IBM Maximo

There are endless possibilities considering what objects and data can sync between Maximo and other applications. However, limiting our scope to ERP systems, let’s take a look at the most common options considered for Integration.
Scenario 1 – Maximo is used for asset and work management while the ERP is used for Inventory and Purchasing. This option is not recommended as it discards Maximo inventory functionality.
Scenario 2 – Maximo is tracking Inventory and the ERP System is used for maintaining Purchasing and Accounts.
Scenario 3 – Maximo manages all the Maintenance, Inventory and Purchasing. Only accounts are managed in the ERP system. This option leverages the maximum functionality of Maximo and is highly recommended if the finance system is not apt for handling other things but accounts.

~ Three ways to integrate IBM Maximo ~

The choice will rely on various factors including the ERP to be in place however, the bare minimum should be to keep track of Inventory in Maximo to leverage excellent supply chain functionality.

Integration is no longer tedious

The integration of Maximo with any ERP application is no longer a tedious task. Maximo Integration Framework (MIF) offers flexibility in terms of options and ways to connect to any application and that too with minimum fuss.
Depending on the business processes, there are various ways of implementing the interface to and from Maximo. The events can be user-initiated actions or automatically triggered. There is also a launch in context feature to integrate with operational management products. This allows the capability to open a window externally and provide data to include in the context of that window. For example, when creating a purchase requisition in Maximo, we can open external application such as Ariba, create a requisition record and return with the reference data.
MIF allows both asynchronous and synchronous data exchange. Synchronous transactions require a direct connection between the MIF and the external application as the sender expects a response at the same time. Asynchronous messages are sent to the JMS (Java messaging engine) queues, which are polled at regular intervals and processed
MIF supports various communication modes such as:

  • HTTP
  • Java Message Service (JMS) – queues to exchange data with an external system. Data is stored in the queues until consumed by external systems for outbound transactions or processed in Maximo for inbound transactions.
  • Interface tables- uses database tables to exchange data and is always processed asynchronously, utilizing JMS queues.
  • Web services – provides the use of SOAP headers and envelope

Then, there are Representational State Transfer (REST) application programming interface (API) which exposes Maximo business objects for external applications and provides means to query and update application data in Maximo.
The data payload can be XML, comma separated files, or JSON depending on the type of integration approach, and the capabilities of external application.

~ The integration process ~


As the two systems integrated are bound to have their own structures and formats including different field names, sizes and other business rules. There is a need of data mapping and transformation required at either end. For large scale implementations, middleware such as Websphere Message Broker, Oracle Fusion, TIBCO can be deployed as they provide more options and flexibility.
MIF provides various options, such as custom Java classes, XSL mapping and processing rules, to apply transformation logic on outbound messages to achieve business rules on integration requirements. Starting with version 7.6, automation scripts using python of Javascript have been introduced for integration as well. Like java classes, these can be applied at any stage of the transaction for both the Maximo outbound and inbound transactions.

To Wrap Up…

Whatever technical approach you choose to integrate Maximo with your external financial applications it will turn out to be an asset to the organization. Finance managers will have more visibility and control over capital and operational expenses of assets throughout their life cycle from purchasing to salvage running through to routine maintenance cycles.

Jitesh Kalyan

Jitesh Kalyan

Jitesh is an enthusiastic IT professional working in the Maximo space for over 7 years and has delivered a range of projects including new implementations, integrations and upgrades. He is also involved in developing mobility solutions using IBM Anywhere and Datasplice. His analytical skills and critical thinking prowess empowers him to solve complex problems with ease. Outside work, he loves playing tennis and cricket, and follows AFL with great interest.


Custom servlet in Maximo

Custom servlet in Maximo

What is a servlet? Servlets are Java classes which service HTTP requests and implement the ‘javax. servlet. HttpServlet’, an abstract class that implements the servlet interface and is specially designed to handle HTTP requests. A  servlet accepts the request,...

9 Recommendations For A Successful SAP & IBM Maximo EAM Interface

9 Recommendations For A Successful SAP & IBM Maximo EAM Interface

Integration is often a key component for getting the most out of your critical IT applications. Modern Enterprise Asset Management systems such as IBM Maximo are designed for integration which can expand their capabilities and allow the flexibility that the industry...

Reinvent the Wheel with BPD Zenith’s Maximo Accelerators

Reinvent the Wheel with BPD Zenith’s Maximo Accelerators

I was recently involved in preparing a business case for a Maximo implementation, and as a part of process I spent considerable time analyzing and evaluating the best approach. In essence, I was trying to find the optimum balance between minimizing the length of the...

Defence Seaworthiness – A session from AMPEAK 2021

Defence Seaworthiness – A session from AMPEAK 2021

I recently got the opportunity to attend Asset Management Council of Australia’s AMPEAK conference. It has been a great experience interacting directly with the true practitioners of Asset Management, and understanding some of the technology challenges that they are...

Sign up to our free newsletter to explore emerging technologies, industry events and Maximo best practice.

Come with BPD Zenith to the future of Asset Management

Partner Ecosystem

BPD Zenith partners with a diverse array of the world’s top Technology, Business and Solution Integration leaders.