---
schema_version: "1"
id: fca0076d125331dec6ae960b479c863a136e3dd1bc4a83de5f98d761ca7b47aa
title: Integrating with Third Party Fulfillment Systems
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/ind/264-0-0/comms_t_integrating_with_third_party_fulfillment_systems_235362.md
canonical_url: https://help.salesforce.com/s/articleView?id=ind.comms_t_integrating_with_third_party_fulfillment_systems_235362.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 21ae50d12fd361a428611ddfcc042a555e676b903d8524bea5b7a553883fa1c0
description: When fulfilling orders, Industries Order Management often communicates with external (third-party) systems. The method for communicating with those systems is through an orchestration item called a callout.
products:
  - Industry Solutions
  - Cross Cloud
release: "264"
---
# Integrating with Third Party Fulfillment Systems

When fulfilling orders, Industries Order Management often communicates with external (third-party) systems. The method for communicating with those systems is through an orchestration item called a **callout**.

After decomposing an order, Order Management can use callouts to exchange data with third-party fulfillment systems. For example, the workflow might include exchanging data with systems such as shipping, billing, inventory, or activation systems. You define the callout, including the system interface that it uses to "talk" to the external system.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-order_management-264-0-0-production-enus/c2040b01-aade-4ba7-8a7d-d7cd745d5c8c/images/icon_note.png)

Note

Depending on how you set it up, a callout can work synchronously or asynchronously. That is, it can send and receive data as one (almost) synchronous action, or it can send data, and then wait for a response to come some time in the future.

- **[Example: A DSL Order](https://help.salesforce.com/s/articleView?id=ind.comms_t_examplea_dsl_order_235370.htm&release=264.0.0&type=5)**  
    Let's say that there's an order to activate a DSL service. Doing so requires an inventory system to reserve a port. Later, the port value must be sent to an activation system.
- **[Integration Configuration Workflow](https://help.salesforce.com/s/articleView?id=ind.comms_t_integration_configuration_workflow_235389.htm&release=264.0.0&type=5)**  
    Assuming you've already created an orchestration plan definition, here's the general flow for integrating with an external system:
- **[Integration Adapters That Are Included with Order Management](https://help.salesforce.com/s/articleView?id=ind.comms_t_integration_adapters_that_are_included_with_order_management_235404.htm&release=264.0.0&type=5)**  
    Industries Order Management offers two integration adapters (plus a legacy adapter) to help integrate with external systems without a lot of customization. Although these adapters can be extended and customized, they can also be used as-is.
- **[Create and Configure an Integration Adapter](https://help.salesforce.com/s/articleView?id=ind.comms_t_create_and_configure_an_integration_adapter_235769.htm&release=264.0.0&type=5)**  
    An integration adapter is a collection of objects and settings that Order Management uses to communicate with external systems. For example, one that reserves a port, or activates an account.
- **[System Interface Offline and Online Status](https://help.salesforce.com/s/articleView?id=ind.comms_t_system_interface_offline_and_online_status_235977.htm&release=264.0.0&type=5)**  
    If a fulfillment system is unresponsive, you can set the relevant system interface to **Offline**. Any callout that would otherwise try to communicate with that system is moved to the **On Hold** status instead.
- **[View or Edit a System Interface](https://help.salesforce.com/s/articleView?id=ind.comms_t_view_or_edit_a_system_interface_236070.htm&release=264.0.0&type=5)**  
    You can view a system interface record from its related system record.
- **[Overview of Industry Order Management Callouts](https://help.salesforce.com/s/articleView?id=ind.comms_t_overview_of_industry_order_management_callouts_236108.htm&release=264.0.0&type=5)**  
    Callouts (also called callout tasks) are orchestration items that allow Order Management to automate integration with external systems during orchestration. There are some out of the box callouts that require less setup than creating your own.
- **[Authentication for Integration Adapters](https://help.salesforce.com/s/articleView?id=ind.comms_t_authentication_for_integration_adapters_236359.htm&release=264.0.0&type=5)**  
    Often, an external system requires an authentication mechanism for Order Management integration adapters.
- **[Default Auto Task to Support Integration Procedures](https://help.salesforce.com/s/articleView?id=ind.comms_t_default_auto_task_to_support_integration_procedures_236370.htm&release=264.0.0&type=5)**  
    Omnistudio offers integration procedures (IPs) for working with external systems. Order Management provides a way to send data about your order item or fulfillment request line to an IP with no coding required. Do so by adding an auto task with the `XOMAutoTaskInvokeIntegrationProcedure` implementation.
- **[Asynchronous Integration with a Downstream System](https://help.salesforce.com/s/articleView?id=ind.comms_t_asynchronous_integration_with_a_downstream_system_236468.htm&release=264.0.0&type=5)**  
    Use asynchronous integration with a downstream system to send a request to that system with the expectation of getting a response sometime in the future, but not immediately.
- **[Integrating with a Downstream System Using DataRaptor](https://help.salesforce.com/s/articleView?id=ind.comms_t_integrating_with_a_downstream_system_using_dataraptor_236634.htm&release=264.0.0&type=5)**  
    Use DataRaptors to transform the JSON payload from an external system to Vlocity’s system, and vice versa.
- **[Passing Pricing Information to Fulfillment Systems](https://help.salesforce.com/s/articleView?id=ind.comms_t_passing_pricing_information_to_fulfillment_systems_236795.htm&release=264.0.0&type=5)**  
    Vlocity Communications, Media, and Energy provides support for advanced pricing that may require additional pricing-related constructs to communicate from SFDC to Vlocity Order Management.
- **[Connection Retry Rules](https://help.salesforce.com/s/articleView?id=ind.comms_t_connection_retry_rules_236799.htm&release=264.0.0&type=5)**  
    You can create rules that control how Order Management retries failed callouts to fulfillment systems.
- **[OM Plus: Managing System Instances](https://help.salesforce.com/s/articleView?id=ind.comms_t_om_plusmanaging_system_instances_237208.htm&release=264.0.0&type=5)**  
    As a Fulfillment Operator, you can manually place a fulfillment system in maintenance mode when the system is not functioning as expected, or when you need to perform maintenance on the fulfillment system.
- **[OM Plus: Set the State for a System Instance](https://help.salesforce.com/s/articleView?id=ind.comms_t_om_plusset_the_state_for_a_system_instance_237224.htm&release=264.0.0&type=5)**  
    You can manually place a fulfillment system in maintenance mode. You can set the state to either Up or Down.
- **[Configure the On-Hold Orchestration Items Tab](https://help.salesforce.com/s/articleView?id=ind.comms_t_configure_on_hold_orchestration_items_tab.htm&release=264.0.0&type=5)**  
    View orchestration items that are on hold on the On-Hold Orchestration Items tab. This tab is available by default in out-of-the-box (OOTB) System Instance Objects, such as System Instance and HTTP System Instance. In addition, you can configure this tab in Custom System Instances.
- **[Creating a Callout Orchestration Item for Asynchronous Integration](https://help.salesforce.com/s/articleView?id=ind.comms_t_creating_a_callout_orchestration_item_for_asynchronous_integration_237255.htm&release=264.0.0&type=5)**  
    To create a callout orchestration item definition for asynchronous integration: