Setting up a Salesforce Outbound Message in Informatica Cloud Copyright Informatica LLC 2017. Informatica, the Informatica logo, and Informatica Cloud are trademarks or registered trademarks of Informatica LLC in the United States and many jurisdictions throughout the world. A current list of Informatica trademarks is available on the web at https://www.informatica.com/trademarks.html
Abstract You can configure Data Synchronization or Mapping Configuration tasks to start when Informatica Cloud receives a Salesforce outbound message. You can use outbound messages for real-time integration of Salesforce with other interfaces. This article explains how to set up Salesforce outbound messages in Informatica Cloud for a Data synchronization task. Supported Versions Informatica Cloud Table of Contents Overview.... 2 Generate an Endpoint URL in a Data Synchronization Task.... 2 Create a Workflow Rule in Salesforce.... 4 Create an Outbound Message.... 4 Activate the Rule for the Outbound Message in Salesforce.... 5 Rules and Guidelines for Outbound Messages in Salesforce.... 6 Overview You work for an enterprise with a huge customer base. The enterprise uses Salesforce as a CRM. The front desk personnel frequently add new customers and update contact details of the existing customers. You want to automate the process of syncing the Salesforce data to the back-end database based on specific requirements when the contact details are added or updated in Salesforce. You can configure a workflow rule in Salesforce to create outbound messages. The outbound message triggers the Data Synchronization task that updates the target when you add a new record or update a record in Salesforce. To configure a task to run when Salesforce sends an outbound message, perform the following steps: 1. Generate an Endpoint URL in Informatica Cloud. 2. Create a Workflow Rule in Salesforce. 3. Create an Outbound Message in Salesforce. 4. Activate the Rule for the Outbound Message in Salesforce. Generate an Endpoint URL in a Data Synchronization Task You can use outbound messages to run a task in real time. The outbound message is sent to a specified endpoint URL. The message contains fields configured in the outbound message. When the endpoint URL receives the message, the endpoint takes the information from the message and processes the message. Perform the following tasks to generate an endpoint URL in Informatica Cloud: 1. Select Task Wizard on the Informatica Cloud home page. 2. Select Data Synchronization from the menu. The Data Synchronization page appears. 2
3. Select New. The Definition tab appears. 4. Provide the task details such as Task Name, Description, and Task Operation. 5. Select Next. The Source tab appears. 6. Provide the Source details such as Connection, Source Type, Source Object. You must select a single Salesforce source and must not apply row limits or data filters. You can determine when the task times out. The timeout is the length of time that the task can be inactive but still available to receive messages. If a message is received during this period, the time resets. Use Custom Timeout or No Timeout options to increase the timeout length so the task continues to run and is ready to process messages. The default timeout is 60 seconds. You can specify the time in seconds for Custom Timeout. No Timeout sets the indefinite timeout. 7. Select Next. The target tab appears. 8. Provide the target details such as Connection and Target Object. 9. Select Schedule tab. The Schedule tab appears. 10. In the Schedule Details tab, select the Run this task in real time upon receiving an outbound message from Salesforce option. The following image shows a sample Schedule tab: The Informatica task wizard generates an endpoint URL. 11. Save the task. 3
Create a Workflow Rule in Salesforce Salesforce outbound messages are a part of the workflow functionality in Salesforce. Workflow rules keep a track of the field changes and trigger outbound messages to Informatica Cloud. Perform the following tasks to create a workflow rule in Salesforce: 1. Log in to your Salesforce account. 2. Click the Setup menu on the top of the screen. 3. In the App Setup tree, expand Create > Workflow & Approvals and select Workflow Rules. The All Workflow Rules page appears. 4. Select the New Rule button. The Step one of the New Workflow Rule window appears. 5. Select the object from the list that you want your workflow rule to apply to. For example, select the Contact object. 6. Click Next. 7. In the Configure Workflow Rule window, enter the Rule Name, Description, an Evaluation Criteria, and a Rule Criteria. The following image shows a sample Configure Workflow Rule window: In this example, the outbound message will be triggered when a new record is entered or an existing record is updated and Boston is selected as the mailing city. 8. Click Save & Next. Create an Outbound Message You can use outbound messages to trigger a Data Synchronization task. When you configure an outbound message, use the endpoint URL generated by the Data Synchronization task. After you save the workflow, perform the following tasks to create an outbound message in Salesforce: 1. In the Step 3: Specify Workflow Actions window, expand the Add Workflow Action list. 2. Select New Outbound Message and click Go! The New Outbound Message window appears. 4
3. Specify the name, the endpoint URL generated by Informatica Data Synchronization Task wizard, and enable Send Session ID. 4. Select the fields from the Contact object that you want to sync to the back-end database. The following image shows a sample outbound message window: 5. Click Save. Review the outbound message details. An outbound message is sent from the specified user, with the Session ID to the outbound message listener. The outbound message listener calls the Force.com API and updates the same contact record which triggered the outbound message. Activate the Rule for the Outbound Message in Salesforce After you save the outbound message, the workflow rule window opens. Click Activate to apply the workflow rule to the outbound message. The following image shows the workflow rule window: The following image shows the sample activated workflow rule: 5
When you update the value Boston in the Mailing City field in the Contact object, Salesforce sends an outbound message to informatica Cloud. The outbound message contains the session ID and the selected fields that are used in the mapping. The outbound message triggers the Data Synchronization task that saves the records in the back-end database. Rules and Guidelines for Outbound Messages in Salesforce Consider the following rules and guidelines when you configure outbound messages in Salesforce: You can configure more than one workflow for each outbound message. Workflows and outbound messages are associated with the same Salesforce object. If the destination event listener is unavailable, messages remain in a queue until they are sent successfully, or until the messages are 24 hours old. After 24 hours, the messages are dropped from the queue. If you cannot deliver a message, the interval between retries increases exponentially up to a maximum of two hours between the retries. You can retry delivering the messages independent of their order in the queue. This can cause Salesforce to deliver messages out of order. You cannot build an audit trail using outbound messaging. Each message must be delivered at least once. You must deliver the messages within 24 hours. The source object changes after a notification and before delivery. Therefore, the destination listener receives the latest data and not the intermediate changes. Salesforce restricts the outbound ports for security. You can specify the following outbound ports: - 80: This port accepts only HTTP connections. - 443: This port accepts only HTTPS connections. - 1024-66535 (inclusive): These ports accept HTTP or HTTPS connections. Authors Bharath K.R Senior Software Engineer Chanchal Das Lead Technical Writer 6