Salesforce integration with Enterprise Open Source Mischa de Vries László van den Hoek SFDC Consultant OS Consultant
Agenda An Introduction to Salesforce Integration: On-Premise vs Cloud Salesforce Integration Strategies Case: Travelcard 11/25/2013 2 2013 CIBER, Inc.
Introduction to Salesforce Gartner Magic Quadrant 11/25/2013 3 2013 CIBER, Inc.
Introduction to Salesforce Cloud Architecture 11/25/2013 4 2013 CIBER, Inc.
Integration: On-Premise vs Cloud Why integrate? Cost Speed & Efficiency Innovation 11/25/2013 5 2013 CIBER, Inc.
Force.com Platform Integration with the Force.com platform 11/25/2013 6 2013 CIBER, Inc.
Salesforce Integration Strategies Integration Levels User Interface Integration Business Logic Integration Data Integration 11/25/2013 7 2013 CIBER, Inc.
Salesforce Integration Strategies 1. User Interface Integration iframes Deeplinks Force.com Canvas 11/25/2013 8 2013 CIBER, Inc.
Salesforce Integration Strategies Integration Levels & Methods User Interface iframes Deeplinks Force.com Canvas Business Logic Inbound Force.com API Email Services (Inbound and Outbound) Outbound Apex Callouts Outbound Messaging Data Open APIs Bulk Data Transfer API Salesforce Mobile Toolkit Cloud-to-Cloud Integration Toolkits (Amazon, Facebook, Google, etc.) User Interface Integration Business Logic Integration Data Integration 11/25/2013 9 2013 CIBER, Inc.
Salesforce Integration Strategies 2. Business Logic Integration 1. Inbound Force.com API 2. Email Services (Inbound and Outbound) 3. Apex Callouts (Outbound) 4. Outbound Messaging 11/25/2013 10 2013 CIBER, Inc.
Salesforce Integration Strategies 2. Business Logic Integration - Inbound Force.com API Direct access to data in your organization Query, create, delete and modify. 11/25/2013 11 2013 CIBER, Inc.
Salesforce Integration Strategies 2. Business Logic Integration - Email Services (Inbound and Outbound) Use Apex to process inbound email Use Salesforce HTML templates 11/25/2013 12 2013 CIBER, Inc.
Salesforce Integration Strategies 2. Business Logic Integration - Apex Callouts (Outbound) Integrate Apex with an external web service 11/25/2013 13 2013 CIBER, Inc.
Salesforce Integration Strategies 2. Business Logic Integration - Outbound Messaging Use Salesforce workflow rules Outbound messages can contain database field values 11/25/2013 14 2013 CIBER, Inc.
Salesforce Integration Strategies Integration Levels & Methods User Interface iframes Deeplinks Force.com Canvas Business Logic Inbound Force.com API Email Services (Inbound and Outbound) Outbound Apex Callouts Outbound Messaging Data Open APIs Bulk Data Transfer API Salesforce Mobile Toolkit Cloud-to-Cloud Integration Toolkits (Amazon, Facebook, Google, etc.) User Interface Integration Business Logic Integration Data Integration 11/25/2013 15 2013 CIBER, Inc.
Salesforce Integration Strategies 3. Data Integration 1. Open APIs 2. Bulk Data Transfer API 3. Salesforce Mobile Toolkit 4. Cloud-to-Cloud Integration Toolkits 11/25/2013 16 2013 CIBER, Inc.
Salesforce Integration Strategies 3. Data Integration - Open APIs All Salesforce platforms have open APIs 11/25/2013 17 2013 CIBER, Inc.
Salesforce Integration Strategies 3. Data Integration Bulk Data Transfer API Quickly load data into your Salesforce organization 11/25/2013 18 2013 CIBER, Inc.
Salesforce Integration Strategies 3. Data Integration Salesforce Mobile Toolkit 11/25/2013 19 2013 CIBER, Inc.
Salesforce Integration Strategies 3. Data Integration Cloud to Cloud Toolkits Google Facebook 11/25/2013 20 2013 CIBER, Inc.
Salesforce Integration Strategies Integration Levels & Methods User Interface iframes Deeplinks Force.com Canvas Business Logic Inbound Force.com API Email Services (Inbound and Outbound) Outbound Apex Callouts Outbound Messaging Data Open APIs Bulk Data Transfer API Salesforce Mobile Toolkit Cloud-to-Cloud Integration Toolkits (Amazon, Facebook, Google, etc.) User Interface Integration Business Logic Integration Data Integration 11/25/2013 21 2013 CIBER, Inc.
Case: Travelcard Fuel Card Innovation Company Services Mobility services for fleet managers & card holders Accepted by all Dutch fuel stations, Europe > 33,000 Fuel economy monitoring Cost savings through incentivation Road side assistance, carwash, parking, public transportation 11/25/2013 22 2013 CIBER, Inc.
Case: Travelcard Fuel Card Innovation Company (2) Application Landscape Legacy applications Replace by standard COTS applications Sales Cloud as CRM component Must integrate with: Remaining (mainframe) legacy New components 11/25/2013 23 2013 CIBER, Inc.
Salesforce Integration Strategies Integration Levels & Methods User Interface Deep links to document store iframe for JasperServer BI report Business Logic Out/Inbound messaging: Legacy integration Inbound Email: snail mail to cases Data Bulk-Loading document references User Interface Integration Business Logic Integration Data Integration 11/25/2013 24 2013 CIBER, Inc.
Salesforce Integration Strategies Integration Levels & Methods User Interface Deep links to document store iframe for BI report Business Logic Out/Inbound messaging: Legacy integration Inbound Email: snail mail to cases Data Loading document references User Interface Integration Business Logic Integration Data Integration 11/25/2013 25 2013 CIBER, Inc.
Strategies for integration Scenario: Business Logic Integration with legacy backend Business requirement Notify the custom contract application with the promotion of a lead to customer Provide contract application with relevant data to compose contract Provide asynchronous confirmation from contract application to Salesforce Environment Custom mainframe app; no remote interfaces; to be replaced soon Use existing integration product: Red Hat JBoss SOA Platform Solution Leverage platform-provided components to compose solution Add abstraction and loose coupling with service mediation and data transformation Use the Salesforce outbound messaging functionality and Force.com API for message exchange 11/25/2013 26 2013 CIBER, Inc.
Integration layer JBoss SOA-P Strategies for integration Scenario: Business Logic Integration with legacy backend Workflow event Sales Cloud New customer notification Outbound messaging Internet Salesforce WSDL implementation (CXF) Split to individual notifications (Camel) Transform to canonical model (Xstream) Contract application Transform to fixed-width (Freemarker) Forward to queue (Camel) 11/25/2013 27 2013 CIBER, Inc.
Integration layer JBoss SOA-P Strategies for integration Scenario: Business Logic Integration with legacy backend Record update Inbound Force.com API Sales Cloud Internet Salesforce Enterprise SOAP call (CXF) Contract application New customer confirmation Aggregate notifications (Camel) Transform from canonical model (Xstream) Unmarshal fixed-width (Smooks) Read from queue (Camel) 11/25/2013 28 2013 CIBER, Inc.
Ciber Knowledge Carrousel 2013 Key Takeaway Points Strategies for Force.com integration depending on use case. Force.com Toolkits Ciber can help on both ends of the integration divide! 11/25/2013 29 2013 CIBER, Inc.
Thank You! Mischa.de.Vries@Ciber.nl Laszlo.van.den.Hoek@Ciber.nl 11/25/2013 30 2013 CIBER, Inc.
Agenda An Introduction to Salesforce Integration: On-Premise vs Cloud Salesforce Integration Strategies Case: Travelcard Additional scenarios 11/25/2013 31 2013 CIBER, Inc.
Strategies for integration Scenario 1: Salesforce integration with 1 custom application Business requirement Notify the custom contract application with the promotion of a lead to customer Provide contract application with relevant data to compose contract Environment Custom Java app. uses Spring based services, no remote interfaces No existing integration platform, SOA or ESB Solution Use a simple integration abstraction framework Add abstraction and loose coupling with service mediation and data transformation Use the Salesforce outbound messaging functionality to call external webservice 11/25/2013 32 2013 CIBER, Inc.
Integration layer Jboss Fuse Strategies for integration Scenario 1: Integration pattern Mediation Workflow event Sales Cloud New customer notification Outbound messaging Internet Salesforce WSDL implementation (CXF) Split to individual notifications (Camel) Transform to canonical model (Xstream) Contract application Transform to contract model (Xstream) Call spring new contract service (Camel) 11/25/2013 33 2013 CIBER, Inc.
Strategies for integration Scenario 1: Some examples of the EAI patterns used Filter and pipes Splitter Translator Canonical model 11/25/2013 34 2013 CIBER, Inc.
Strategies for integration Scenario 2: Multiple applications integrate with each other Business requirement (additional to scenario 1) Notify the finance application with the creation of the contract Provide finance app. with relevant information to create relation and invoice(s) Environment The finance app. provides a Microsoft Message Queue end point Solution Use a integration platform with an ESB Add message routing, unified service endpoints, Service Orchestration 11/25/2013 35 2013 CIBER, Inc.
Strategies for integration Scenario 2: Integration pattern Federation 11/25/2013 36 2013 CIBER, Inc. Source: vitria.com
Strategies for integration Scenario 2: Integration pattern Federation Jboss Enterprise SOA Platform New customer event producer Transform to canonical model Split to individual notifications Salesforce WSDL implementation New contract service Transform to canonical contract model Call Response spring new with contract contact info service New invoice service Transform to finance model Send message to MSMQ Internet Outbound messaging Workflow event MSMQ New customer notification Sales Cloud Contract application New Contract 11/25/2013 37 2013 CIBER, Inc. Finance application
Strategies for integration Scenario 2: Some new EAI patterns used Messaging (JMS, MSMQ) Process manager (Orchestration) Messaging bridge (from JMS to MSMQ) 11/25/2013 38 2013 CIBER, Inc.
Strategies for integration Scenario 3: Data integration and restructuring Business requirement Employees need an actual integrated overview of customer sales activity, contract and invoice information Environment Salesforce provides no direct database access MS Dynamics AX uses Microsoft Message Queue Custom contract application uses MySql Solution Use a data integration product that acts as a virtual database 11/25/2013 39 2013 CIBER, Inc.
Strategies for integration Scenario 3: Data integration and restructuring BI Integrated view Jboss EDS JDBC Jboss EDS JDBC Data Integration layer - Jboss Data Services Platform Authentication Transformation Salesforce Translator Virtual database JDBC Translator Auditing, logging, monitoring Authorization and data filters Custom Translator Enterprise WSDL WS MySql JDBC MSMQ Sales Cloud Contract MySql DB 11/25/2013 40 2013 CIBER, Inc. Finance application