Sage Intacct v2
Sage Intacct is a cloud financial management platform used to work with accounting and operational business objects through the Sage Intacct REST API.
The Flowgear Sage Intacct Node lets you run the current query and mutation surface through template-driven operations, OAuth-backed connections, and the embedded OpenAPI definition in a Workflow. Query responses stay business-payload-only, while mutation responses use the Flowgear object for default success or failure metadata.
Warning: API access and usage may incur additional charges from your Sage Intacct provider. Before using this Node, confirm any applicable licensing requirements, usage limits, and charges with your provider or implementation partner.
Revision History
0.1.1.6 - Restored complete Order Entry line-item fields in designer templates and safely handled recursive allOf schemas.
0.1.1.4 - Corrected method templates and single-record return types.
0.1.1.2 - Split query and mutation actions into dedicated methods.
0.1.1.0 - Published the current Runtime overhaul release.
0.1.0.0 - Completed the Runtime overhaul with eager first-page or first-batch startup and lazy continuation.
0.1.0.37 - Aligned the connector contract and public help article.
0.1.0.2 - Initial release.
0.1.0.9 - Improved OAuth connection handling.
0.1.0.10 - Improved error messages.
0.1.0.13 - Updated templates for the 13 February 2026 API release.
0.1.0.21 - Improved error messages.
0.1.0.23 - Corrected the Node name.
0.1.0.36 - Returned all fields for single-record queries and improved Query Service error messages.
0.1.1.10 - Improve token refresh error messages.
0.2.0.0 - Creates records individually, validates query continuation and write outcomes, and adds per-request timeouts with bounded read recovery.
Connection
The Connection uses OAuth 2.0 to authenticate requests to Sage Intacct.
| Property | Type | Description |
|---|---|---|
Client Id |
String | Client ID for your Sage Intacct developer application. |
Client Secret |
Masked | Client secret for your Sage Intacct developer application. |
Access Token |
Masked | OAuth access token used to authorize API requests. This is populated when you connect your account. |
Refresh Token |
Masked | OAuth refresh token used to renew the access token. This is populated when you connect your account. |
Setup Notes
- Create a Sage Intacct developer application to obtain a client ID and client secret. Ensure that the application permits the
offline_accessscope so that Sage Intacct issues a refresh token. - Configure the application's redirect URI to match the Flowgear callback URL shown when you connect your account.
- Ensure that the Sage Intacct account used for OAuth has permission to access the required objects, for example, accounts receivable, general ledger, or dimensions.
- If your Sage Intacct tenant restricts IP addresses, allow the Flowgear outbound IP ranges.
Methods
Use the template picker for each method to select a supported Sage Intacct operation. The selected template populates OperationId and the inputs required by that operation.
Get
Retrieves one record by its key. Get templates include only single-record operations and return the complete object supplied by Sage Intacct.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Sage Intacct OAuth Connection. |
OperationId |
String | Identifier for the single-record operation selected from the templates. |
Options |
Object | Optional route and query values required by the selected operation, including the record key. |
RequestTimeoutSecs |
Integer | Positive timeout for each provider request, including recovery. Defaults to 90 seconds; resets for each page or Create record. |
| Return | Type | Description |
|---|---|---|
Result |
Object | Complete record returned by Sage Intacct. |
List
Lists record references for the selected object. List templates include only collection operations.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Sage Intacct OAuth Connection. |
OperationId |
String | Identifier for the collection operation selected from the templates. |
Options |
Object | Optional route and query values required by the selected operation. |
RequestTimeoutSecs |
Integer | Positive timeout for each provider request, including recovery. Defaults to 90 seconds; resets for each page or Create record. |
| Return | Type | Description |
|---|---|---|
Result |
Array | Stream of record references returned by Sage Intacct. Collection results typically include fields such as key, id, and href. |
QueryService
Queries a Sage Intacct object and returns the selected fields. Templates are named Query Service - <Object> and populate the available fields from the object metadata.
The Node automatically retrieves subsequent pages in batches of up to 500 records.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Sage Intacct OAuth Connection. |
OperationId |
String | Query Service operation identifier populated by the selected template. |
Object |
String | Sage Intacct object to query. |
Fields |
String | Comma-separated list of fields to return. |
Filter |
String | Optional OData-style filter expression. |
CustomParameters |
Object | Values for variables referenced in Filter. Each key must start with @. |
RequestTimeoutSecs |
Integer | Positive timeout for each provider request, including recovery. Defaults to 90 seconds; resets for each page or Create record. |
| Return | Type | Description |
|---|---|---|
Result |
Array | Stream of records containing the fields requested in Fields. |
Create
Creates Sage Intacct records. The Node accepts a stream of request objects and sends each record in a separate provider request.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Sage Intacct OAuth Connection. |
OperationId |
String | Identifier for the create operation selected from the templates. |
Options |
Object | Optional route and query values required by the selected operation. |
Items |
Array | Stream of records to create. |
RequestTimeoutSecs |
Integer | Positive timeout for each provider request, including recovery. Defaults to 90 seconds; resets for each page or Create record. |
| Return | Type | Description |
|---|---|---|
Result |
Array | One response for each input record, including provider fields and the normalized Flowgear object with IsSuccess, Message, and Request. |
Update
Updates one Sage Intacct record. Select a template for a single-record PUT or PATCH operation.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Sage Intacct OAuth Connection. |
OperationId |
String | Identifier for the update operation selected from the templates. |
Options |
Object | Optional route and query values required by the selected operation, including the record key. |
Items |
Object | Record values to update. |
RequestTimeoutSecs |
Integer | Positive timeout for each provider request, including recovery. Defaults to 90 seconds; resets for each page or Create record. |
| Return | Type | Description |
|---|---|---|
Result |
Object | The updated record response, including provider fields and the normalized Flowgear object with IsSuccess, Message, and Request. |
Delete
Deletes one Sage Intacct record. Select a template for a single-record DELETE operation.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Sage Intacct OAuth Connection. |
OperationId |
String | Identifier for the delete operation selected from the templates. |
Options |
Object | Route and query values that identify the record to delete. |
RequestTimeoutSecs |
Integer | Positive timeout for each provider request, including recovery. Defaults to 90 seconds; resets for each page or Create record. |
| Return | Type | Description |
|---|---|---|
Result |
Object | The delete response. Success or failure metadata is exposed through Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. Failures can also include errorCode. |
Usage Notes
-
Fully consume a QueryService lookup and allow failures to propagate before dependent financial writes. Missing or contradictory paging metadata, changing totals and non-progressing pages fail explicitly; earlier rows can already have been returned. A valid empty lookup requires successful stream completion.
-
Create success requires a confirmed record identity. HTTP 202, pending results and malformed responses do not establish completion. A created identity does not prove posting or settlement.
-
Request timeout produces a timeout error; stopping the Workflow remains cancellation. Neither cancels a write already accepted by Sage.
-
Refresh detailed templates and affected Workflows when upgrading to expose
RequestTimeoutSecs. Connection keys and operation identifiers remain unchanged. Reconcile uncertain writes before rollback or resubmission. -
Use the template picker in the designer to select the correct
OperationIdfor the chosen method. Templates are filtered by operation category. -
For
Create, missing or empty input sends no provider request; null or non-object records are rejected before sending. -
Empty query results remain an empty result set instead of being treated as an error.
-
When a provider query fails on the first call, the Node surfaces that error instead of masking it as an empty success.
-
Mutation responses echo a detached copy of the original input under
Flowgear.Request, excluding recursively nested exact-caseContentfields. -
Reads permit one recovery retry for rejected credentials or HTTP 429 within the original request deadline. Writes are not automatically retried, including after authentication or throttling failures. Reconnect if credentials cannot be renewed.
{
"@customerName": "Acme",
"@minimumAmount": 1000
}
- Every variable used in
Filtermust have a matchingCustomParameterskey. Unused entries are ignored. - Mutation results contain
Flowgear.IsSuccessandFlowgear.Message. Results forCreateandUpdatealso contain the corresponding input underFlowgear.Request. - Explicit provider rejections return unsuccessful Create results. Uncertain outcomes, missing results, transport loss and timeouts must be reconciled before resubmitting; do not assume that a failed invocation means no record was created. Check
Flowgear.IsSuccesson each result. - The
Refresh Tokenis used to renew an expired or invalidAccess Token. Reconnect the account if the access token cannot be refreshed.