You are here:
Designing an External System Integration
To connect any flow to an external system without coding, use MuleSoft for Flow: Integration connectors in the flow. When no connector exists, you can use the HTTP Callout action to make direct API calls to external systems without coding. Run your flow when external system changes occur by selecting the External System Change-Triggered flow type. For legacy systems without APIs, you can use MuleSoft RPA processes published on Anypoint Platform as external services in your flow. For documents and unstructured data, use MuleSoft for Flow: IDP to extract information from PDFs, images, and forms.
Required Editions
| View supported editions. |
| This feature requires the MuleSoft for Flow: Integration add-on. Exceptions are segment-triggered flows, activation-triggered flows, and broadcast flows, which don't require the MuleSoft for Flow: Integration add-on. Professional Edition requires the API access add-on. To purchase an add-on, contact your Salesforce account executive. |
| MuleSoft for Flow: Integration features used with Agentforce require the Foundations or Agentforce 1 edition. To purchase these editions, contact your Salesforce account executive. |
Connect with a MuleSoft for Flow: Integration Connector
MuleSoft for Flow: Integration connectors integrate external systems with flows, enabling communication, interoperability, and data exchange. Integrating siloed data by using connectors improves workflow, enhances efficiency, and provides a more connected experience for users.
You can access pre-built templates for specific MuleSoft for Flow: Integration connectors. Use these templates to setup flows quickly with pre-configured logic and field mappings for your connector. You can use templates and then make your own connections. This approach makes it faster to set up connections while still letting you change the integration to fit your needs.
You can reference a MuleSoft for Flow: Integration connector in two ways within your flow. To initiate a flow based on external system changes, use an External System Change-Triggered flow. This flow type uses the connector to poll the external system for matching triggers at your specified interval. Alternatively, add the connector's action to a new or existing flow to any new or existing flow to push changes to an external system.
MuleSoft for Flow: Integration connectors are designed to maintain their currency through a structured update process. Automatic updates are applied for minor and patch versions, which helps make sure that integrations remain secure and compliant. To maintain control and stability, manually upgrade your major versions. As they become available, new connector versions appear in Show advanced options, where you can select specific action or trigger versions.
For more information about supported triggers and actions, refer to Third-Party Connectors and view the respective connector reference.
For an overview of how to set up MuleSoft for Flow: Integration and to create automated connections between systems, refer to Get Started with MuleSoft for Flow: Integration.
Connect by API Without a MuleSoft for Flow: Integration Connector
If there isn’t a connector available for your external system, and your system has an API, you have several connection options. For simple connections by using HTTP protocols, you can use the HTTP Callout action in your flow for direct API integration. The HTTP Callout action in Flow Builder connects your flow to the outside system directly by using External Services. You don't need to write code, work with a developer, or use a middleware tool. However, you must have the API documentation for the endpoint you’re calling.
For more complex connections, you can build your connection in Setup and then create an action in API Catalog, which makes it available in flows, Agentforce, and other Salesforce products.
Connect to a System Without an API
When external systems don't have APIs or connectors available, you can build MuleSoft RPA processes. These processes interact with desktop and web apps, and then invoke these processes from your flow. With MuleSoft RPA, your flow can:
- Launch and interact with a web browser and web-based apps
- Open and control desktop applications
- Extract data from apps that don't have API access
- Automate form filling and data entry across multiple systems
Unlike MuleSoft for Flow: Integration connectors that use APIs, MuleSoft RPA processes mimic human interactions with apps. The processes make them useful to get data from older systems or apps that don't have modern integration features.
Process Documents with MuleSoft for Flow: IDP
When traditional APIs aren't available or when data lives in documents, use MuleSoft for Flow: IDP for document processing. To customize your document processing settings and extract structured data from unstructured documents, such as PDFs, images, and forms, use document processing features in Flow Builder.
Document processing uses AI models to understand the structure of the document and get important information. Use it for processing invoices, forms, contracts, and other business documents that don't have accessible APIs.
Select Your Integration Method
Select the appropriate integration method based on your external system's capabilities:
- MuleSoft for Flow: Integration Connectors–Use when a connector is available and you need real-time connectivity.
- HTTP Callout Action–Use in a flow for simple connections to APIs that use an HTTP protocol.
- API Catalog–For complicated integrations that you plan to use throughout your Salesforce org, set up your integration one time and then use it in Flow Builder and other Salesforce features.
- External System Change-Triggered Flows–Use when you must poll for changes in systems with APIs
- MuleSoft RPA–Use to interact with desktop or web applications when APIs aren't available.
- Document Processing–Use when your data is in digital or scanned documents (PDFs, images, forms).
Polling Failure and Recovery in External System Change-Triggered Flows
External System Change-Triggered flows use a poller to fetch records on the selected schedule.
Polling Behavior and Deactivation
- Retries: When polling fails, the flow tries again up to 3 consecutive times.
- Automatic Deactivation: Happens after the third consecutive poller failure. This behavior applies to poller-level failures (for example, authentication or connectivity), but doesn't apply to individual record-level failures.
- Reactivation: If poller failure deactivates the flow, resolve the underlying issue and reactivate the flow manually.
Poller Limits and Exceptions
- Pre-execution Failures: If the poller fails before execution starts, no fault path is available at the Start element.
- Payload Limits: A poll response that exceeds 128,000 characters (including data and metadata) exceeds the payload limit.
For more information, see MuleSoft for Flow: Integration Limits & Considerations.
Examples
With a connection to an external system, examples of the tasks your flow can do include:
- Update the related Contact in Salesforce when a contact is updated in NetSuite
- Update the data in QuickBooks Online when an Order is updated in Salesforce
- Create an issue in Jira when a Case is created in Salesforce and escalated to engineering
- Sync a Lead created in one Salesforce org to a Lead in another Salesforce org
- Extract customer data from a legacy desktop application and create Salesforce records
- Automate web form submission on external websites to capture lead information
- Automate data entry across multiple web-based systems
- Extract invoice data from PDFs and automatically create records in Salesforce
- Understand Value Maps in MuleSoft for Flow: Integration
Use value maps to translate source values to target values by using a reusable global resource across flows.
