Category Archives: Inside Scoop

Wedid: Marketo and Infor (Formerly known as Saleslogix) Integration


Customer uses Marketo to track incoming leads that would need to be converted to accounts and contacts respectively in their Infor CRM system. The customer would also like to track all field changes and/or activities that occur in Marketo into Infor as the contact related activities, as well as other custom records being tracked in Marketo at the moment.


Purpose To ensure leads and their respective related records from Marketo are in-sync between Contact in their Infor system.
Applications Marketo
Tool Boomi
Information Marketo Lead > Infor Account/Contact
Infor Account/Contact > Marketo Lead
Marketo Activities > Infor Activities (Custom)
Infor Notes Histories (Custom) > Marketo Notes History (Custom)
Data Formats JSON
Volumes ~100 – 300/day
Process When a new lead is registered in Marketo, the lead record will be in return synced into Infor as Contact with the lead’s company being the Infor account record.
However, when a new contact is created or a contact record is updated in Infor, the information would need to be synced to Marketo as well.
For every change in Marketo Lead (Activities), these trails will need to be synced into Infor as well. Some additional information tracked in Infor (custom object records), needs to be created and tracked in Marketo too.
Schedule ~ 5 minutes
Complexity Medium

Wedid: ActionHRM and Kallidus Integration


Customer is tracking employees information through ActionHRM (A Human Resource Management System). These employees need to be tracked as a student record in their Kallidus system (being a student and learning management system) too.


Purpose To ensure student records in Kallidus system is up to date from the ActionHRM employee records
Applications Sharefile (FTP)
Versions Sharefile (FTP)
Tool Boomi
Information Sharefile (CSV) > (Query) ActionHRM Employees > (CSV) Kallidus
Data Formats CSV and JSON
Volumes ~10/day
Process A set of qualified employees Id will be listed in csv format and to be uploaded to an FTP server. The integration process in return query for the employees details using ActionHRM API to produce student information in csv format for Kallidus to process.
Schedule Daily
Complexity Medium

Boomi: Debugging low latency mode processes

You may have processes (especially web service listener type processes) that are configured with low latency mode plus the option “Only Generate Process Log on Error” enabled. This would make it difficult sometimes to troubleshoot or review the Boomi process logs as it would not show up in the process log not unless it is an error process.

One way to debug/troubleshoot your process is to add the parameter _boomi_debug=true on the endpoint URL while executing the specific process and the specific request will be printed on Boomi logs.

For example:

For further details please see:

Boomi: Handling Additional Parameters when extending OAuth 2 details

Boomi allows extending OAuth 2 details for example in a HTTP Client Connector.


When defining the connection details in the development mode, you are allow to build the Authorization and Access Token URL with additional parameters via the “Add Authorization Parameter” and “Add Access Token Parameter” section:


There is no way to extend the additional parameters portion as of today.

An alternative approach is to consider building the parameters directly through the “Authorization Token URL” and “Access Token URL” directly instead.

For example: ${the_authorization_url}?response_type=code&resource=……

In this case, you can then overwrite the parameters through the “OAuth2 Authorization Token URL” and “OAuth2 Access Token URL” in the extension.

This is something to be considered when you are planning to extend the OAuth 2 details for a connector.

Boomi: SAP Integration Tips

This guide is not to help you to build a brilliant integration, but it gives you an important head start if you are integrating to SAP by using the Boomi SAP Connector.


  1. Before the installation, please make sure that you have installed the Java JDK (not JRE) in the server although Boomi Atom installer will download the Java JRE into the Atom installation directory (e.g, C:/Boomi Atomsphere/Atom – WDCi Atom/jre) if you do not have one in the server. Unfortunately, the Java JRE is not sufficient to run the SAP connector.
  2. You need to create a JAVA_HOME environment variable to point to the Java JDK directory and also include the JAVA_HOME/bin into the global path environment variable.
  3. After the installation, you will need to download the additional SAP library from the official site ( > SAP Java Connector > Tools & Services) and extract the content into the <Boomi atom installation folder>/userlib/sapjco folder (e.g, C:/Boomi Atomsphere/Atom – WDCi Atom/userlib/sapjco).
  4. Once the above is done, please restart the Atom service in order for the changes to take effect.

Notes: If you would like to use SAP IDoc Listener (for real time integration), Boomi SAP connector requires a database (for tracking purpose) and you will need to download the required JDBC driver and place in the userlib/ folder.

Operation Profile

After importing the operation, please make sure that the date data type field has the correct date format in both Request and Response profile. The format used by the connector is:

  • Date = yyyy-MM-dd
  • Time = HH:mm:ss

Failing to configure the date in the Request profile would cause the connector to always returns all data from SAP.

Get Operation

Mostly, you will query the data by using last updated date time. The date/time format for the query operation is:

  • Date = yyyy-MM-dd (this is different from the format being used in SAP BAPI Tester, dd.MM.yyyy)
  • Time = HH:mm:ss

Send Operation

If you are sending information to SAP via a BAPI operation, it is best to double check with the SAP developer to see if they require Boomi SAP Connector to send “Commit Transaction” as part of the BAPI call. If yes, please make sure that the “Commit Transaction” option is checked in the SAP operation.

Salesforce Tips: Filter Opportunity Product Dynamically During Selection

We came accross a requirement to display only certain list of products dynamically for user to select when adding a new opportunity line item.

First thought was to use different Pricebook, however, this is not possible as the customer has an integration to sync all the product price into Standard Price Book.

The workaround is to create a new list button for Opportunity Product object that redirect the user to the Salesforce standard “add opportunity product” screen but with some predefined filter value. For example:


The new button will need to be added to the Opportunity page layout in the Opportunity Product related list.


Boomi Connector: Using JSON Schema

In the latest Boomi connector SDK, you can now write a custom connector to work with JSON profile instead of using the convention XML profile. So how to do this?

Let’s take the following JSON schema as an example:

   "title":"Product set",
            "description":"The unique identifier for a product",

The main object element in the JSON schema is “item”. In the connector browser, we just need to declare “item” as the element name (or they call in pointer in the connector) and specify the input and output type as below:

ObjectDefinition objDef = new ObjectDefinition();
objDef.setElementName("/" + elementName);


That’s all! Happy coding 😀

Boomi Tips: Retrying Error Document for Sub Process

In Boomi, we often design the integration process to run in a serial mode by having a Parent process that invokes Sub process.

Parent Process

This is really helpful if we have a business flow which we need to make sure that the parent record (e.g, Customer) is synced into the target system before the related record (e.g, Sales Order) is being synced. However, this design is not that handy when it comes to retrying error document. As you all know that Boomi allows you to retry an error document in the Process Monitoring console. This only works for the document that is related to the Boomi process that is attached to an environment directly and deployed.

As a workaround, you will need to attach and deploy the related Sub process to an environment and just let it sit there without having any scheduler.

Boomi: Query Marketo Leads by Static List

In Boomi Marketo connector, you can query a list of leads by using the static list which gives you the option of either using:

1. Static List Name
2. Static List Id


Static List Name
You can do this by simply providing the name of the List that you have created in Marketo. However, if the list is created under a campaign, you have to provide the name of the campaign and the list. For example:


if you have the setup as shown in the screenshot above, the name that you should provide is “Campaigns for Activity Extract.Leads with Web Visits”.

Static List id
If you would like to use the list Id, you can retrieve the Id:
– click on the list
– look at the URL in browser
– retrieve the number between ST and A1

For example:, the Id for the list would be 1234.

Boomi Tips: HTTP Operation Response Header

In the latest release, Boomi has included a very important feature in the HTTP connector. The HTTP operation can now capture the value of the response header and store it into a dynamic document properties. This is very useful as some of the applications require a certain cookie value returned in the first call to be used in the subsequent call.

To use this feature, you just need to:
1. edit a HTTP operation
2. scroll to Response Headers Mapping
3. add the specific response header that you want to capture


For more information, please refer to the official documentation.