---
schema_version: "1"
id: 23680a9f21fc183a0e68f212767a7e32e06f06b0b7a79093ebe1636268ec313f
title: Sage Intacct Connector Reference
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/composer-salesforce/ms_composer_sage_intacct_reference.md
canonical_url: https://docs.mulesoft.com/composer-salesforce/ms_composer_sage_intacct_reference
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 325fa8cd28b686da87a03872c8c436017139c28a2a929c3211a98acd47f5df0a
description: MuleSoft Documentation Site
latest: true
---
---
product: Composer for Salesforce
---

# Sage Intacct Connector Reference

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

Sage Intacct is a best-in-class enterprise resource planning solution built to create and automate
important financial processes and enable real-time visibility into business performance.

## Prerequisites

To complete the integration of Sage Intacct Connector to Composer, you must first complete the
following actions within Sage Intacct:

- [Enable Web Services subscription](https://developer.intacct.com/web-services/) in the
  **Subscription** section of Sage Intacct. The **Web Services Subscription** is required for
  Composer to interact with the Sage Intacct API.

- [Add your company’s **Sender ID** to the **Web Services Authorizations**](https://developer.intacct.com/web-services/)
  section of Sage Intacct. The **Sender ID** identifies Composer to the Sage Intacct API. You must
  authorize the Mulesoft **Sender ID** for your Sage Intacct instance.

- [Create and assign the permissions required](https://developer.intacct.com/api/company-console/roles/)
  to connect to Sage Intacct. To assure account security, restrict the permissions to only the
  modules that you need Composer to access. In Sage Intacct:

  - If you are using role-based permissions, create a new role, assign the required permissions for
    that role, and then create a Sage Intacct Web Service Account to assign to the role.

  - If you are using subscription-based permissions, create a Web Services Account and assign
    permissions to the role in the **Subscription** section.

    Additionally, for quote to cash, enable permissions for the **Order Entry** module.

## Connections

To connect to a system, whether it is a source of data or the target where you are sending data, you
must create a connection with that system’s required credentials. You typically connect to different
systems within a flow and can reuse each connection every time you need to connect.

This system requires the following credential information for its connections:

Connection Name

Enter a connection name that will help you remember the details of this connection. You can reuse
connections multiple times in a single flow, and in more than one flow, and the credentials are
hidden after you create the connection. Therefore, it’s helpful to provide a name that easily
identifies this connection from others.

Only you can see the connection. Other users in your Composer app must create their own connections.

Company ID

The customer’s company ID. Enter the ID of your Sage Intacct instance. For more information, see the
[Sage Intacct documentation](https://developer.intacct.com/web-services/).

User ID

The user ID that you use to log in to Sage Intacct.

User Password

The password that you use to log in to Sage Intacct.

Entity ID

The Sage Intacct entity to which you want to connect. To connect at the entity level, enter the
**Entity ID**. To connect to the top level of the organization, leave this field blank. For more
information, see the
[Sage Intacct documentation](https://developer.intacct.com/api/company-console/api-sessions/).

## Triggers

Each flow starts with either a _scheduler_ or a _trigger_. Schedulers are set to a default frequency
of 15 minutes. Triggers, such as "each time a new record is created", are defined by you and provide
multiple options related to the data in your system.

Triggers use a polling process to actively check for new updates from an external system. The
polling frequency is 15 seconds.

This system provides the following trigger options:

New Customer

Checks for a new Customer record.

New or Updated Customer

Checks for a new or updated Customer record.

New Order

Checks for a new Order record.

New or Updated Order

Checks for a new or updated Order record.

### Polling Frequency

For triggers in this connector, the **Polling Frequency** field is required. This field enables you
to select how often Composer makes a request to the underling system API to look for changes to
records in active flows. You can select a different polling frequency for each flow in your
organization. With a shorter frequency, the flow executes more often; however, a shorter frequency
consumes more [API calls](https://docs.mulesoft.com/general/automation-credits-usage-and-rates). For example, if you have
an order management flow, you might require nearly real-time updates, which can be achieved with a
15-second polling interval (which equates to 5760 API calls per day). In contrast, if your flow
updates a pricing catalog, you could poll the flow every hour (which equates to 24 API calls per
day).

## Actions

After you connect to a system and define the trigger or configure a scheduler, you define the
actions that the flow performs. For example, you can copy a record between different systems, such
as Workday and Salesforce. The actions you can perform depend on which system you are connected to.

This system provides the following actions:

Create Attachment

Creates a new Attachment record. In Sage Intacct, attachments are entities that contain files. An
attachment object can be empty or can have files. You can add files to an attachment when you create
the record or you can add attachments later. Provide a value for the following:

- **Attachment Name**

- **Folder**

- When adding files to an attachment, use a list as the source of the files, and specify a value in
  the following fields:

  - **File Binary Data**

  - **File Extension**

  - **File Name**

Update Attachment

Updates an Attachment record. When updating an attachment, you can update the attachment properties
or add new files from a list. Provide a value for **Attachment ID**.

Get Attachments

Returns a list of Attachment records. To filter the list, provide a value for **Attachment ID**,
**Attachment Name**, or **Folder Name**. To return the entire list, leave the fields blank.

Create Attachment Folder

Creates a new folder for attachments. Provide a value for **Name**.

Get Attachment Folders

Returns a list of attachment folders. To filter the list, provide a value for **Folder Name** to
filter. To return the entire list, leave the fields blank.

Create Customer

Creates a new Customer record. Provide a value for the following:

- **Customer ID**

- **Primary Contact**

- **Print As**

Update Customer

Update a Customer record. Provide a value for **ID**.

Get Customer

Returns a list of Customer records. To filter the list, provide a value for **Customer ID** or
**Customer Name**. To return the entire list, leave the fields blank.

Delete Customer

Deletes a Customer record. Provide a value for **Customer ID**.

Create Order

Creates a new Order record and returns a value for the **Key** field. Provide a value for the
following:

- **Order Type**

- **Date Created**

- **Transaction Currency**

- **Base Currency**

- **Exchange Rate Type**

- In the **Entries** > **Sotransitem (Order line items)** section, provide a value in the following:

  - **Sotransitem (Order line items) List**

  - **Item ID**

  - **Quantity**

  - **Location ID**  
    Note that the **Location ID** field is determined by the numbers preceding the location
    description. For example, if the location ID is `100-United States`, then enter `100` in the
    **Location ID** field.

  - **Price**

  - **Unit**

  - If your order contains inventory type items or a mix of inventory and non-inventory items,
    provide a value for **Warehouse ID**.

Update Order

Updates an Order record.

Note that when updating or reordering line items for an existing order, the line order can change.
For example, if you drag a line item from the number two position to the number three position in
the Sage Intacct UI, the line order changes. To avoid synchronizing the wrong Sage Intacct line
order item, you must account for possible order line item changes. Prior to executing the **Update
Order** action, identify the current **Line Number** and store it in a custom field within Sage
Intacct. To delete a line item from an existing order, use the **Delete Order Line Item** action.  
Provide a value for the following:

- **Document ID**

  Note that the **Document ID** value is the **Key** value returned by the **Create Order** action.

- For line itmes to be added to an order, in the **Entries** > Sotransitem (Order line items)\*
  section, provide a value for the following:

  - **Sotransitem (Order line items) List**

  - **Line Number**

    Note that if no value or a null value is provided for this field, the item is created. If a
    value is provided, the item is skipped. If the datapill mapped to the **Line Number** field is
    empty for items to be created and has a value for items to be updated, the items containing
    values are created and the rest of the items are ignored.

  - **Item ID**

  - **Quantity**

  - **Location ID**

    Note that the **Location ID** field is determined by the numbers preceding the location
    description. For example, if the location ID is `100-United States` then enter `100` in the
    **Location ID** field.

  - **Price**

  - **Unit**

  - If your order contains inventory type items or a mix of inventory and non-inventory items,
    provide a value for **Warehouse ID**.

- For line itmes to be updated in an order, in the **Entries** > **Updatesotransitem (Order line
  items)** section, provide a value for the following:

  - **Updatesotransitem (Order line items) List**

  - **Line Number**

    Note that if no value or a null value is provided for this field, the item is updated. If a
    value is provided, the item is skipped. If the datapill mapped to the **Line Number** field is
    empty for items to be updated and has a value for items to be created, the items containing
    values are updated and the rest of the items are ignored.

  - **Item ID**

  - **Quantity**

  - **Location ID**

    Note that the **Location ID** field is determined by the numbers preceding the location
    description. For example, if the location ID is `100-United States` then enter `100` in the
    **Location ID** field.

  - **Price**

  - **Unit**

  - If your order contains inventory type items or a mix of inventory and non-inventory items,
    provide a value for **Warehouse ID**.

Delete Order Line Item

Deletes an order line item. Provide a value for **Line Item ID (Record Number)**.

Get Order

Returns a list of Order records. To filter the list, provide a value for **Order ID**, **Customer
ID** or **Document ID**. To return the entire list, leave the fields blank.

Note that the **Document ID** value is the **Key** value returned by the **Create Order** action.

Delete Order

Deletes an Order record. Provide a value for **Order ID**.

Create Product

Create a new product record and returns the **Item ID** and **Record Number**. Provide a value for
the following:

- **Item ID**

- **Name**

- **Item Type**

Update Product

Updates a Product record. Provide a value for **Item ID**.

Get Products

Returns a list of Product records. To filter the list, provide a value for **Item ID**, **Name**, or
**Item Type**. To return the entire list, leave the fields blank.

Delete Product

Deletes a Product record. Provide a value for **Product ID**.

Create Price List

Creates a new Price List record. Provide a value for the following:

- **Type**

- **Price List Name**

Update Price List

Updates a Price List record. Provide a value for the following:

- **Type**

- **Price List Name**

Get Price Lists

Returns a list of Price List records. To filter the list, provide a value for **Type**. To return
the entire list, leave the fields blank.

Delete Price List

Deletes a Price List record. Provide a value for **Price List ID**.

Create Price List Entry

Creates a new Price List Entry record for a price list and returns the **Key** value. Provide a
value for the following:

- **Price List ID**

- **Start Date**

- **End Date**

- **Fixed**

- **Value**

- **Value Type**

Update Price List Entry

Updates a Price List Entry record. Provide a value for **Record Number**.

Get Price List Entries

Returns a list of Price List Entry records. To filter the list, provide a value for **Entry ID**,
**Price List ID**, or **Item ID**. To return the entire list, leave the fields blank.

Delete Price List Entry

Deletes a Price List Entry record. Provide a value for the **Price List Entry ID**.

## Custom Fields

If defined in the Sage Intacct instance, Sage Intacct Connector for Composer supports adding custom
fields. For details on adding Sage Intacct custom fields, see the
[Sage Intacct documentation](https://developer.intacct.com/customization-services/#custom-fields).

## See Also

- [Mulesoft Composer for Salesforce: Overview](https://docs.mulesoft.com/composer-salesforce/ms_composer_overview)

- [MuleSoft Composer for Salesforce: Getting Started](https://docs.mulesoft.com/composer-salesforce/ms_composer_prerequisites)

- [Composer Connector Reference](https://docs.mulesoft.com/composer-salesforce/ms_composer_reference)

- [Knowledge Articles](https://help.salesforce.com/s/)
