SI.WRITEBACKWIP
Overview
The SI.WRITEBACKWIP function enables you to write a new estimation for a WIP project.
The function allows you to populate the WIP period with WIP projects, finalize them, and post the WIP period. The WIP period to update should be manually created via the Sage Intacct UI in advance.
Before using the function, ensure your Construction subscription in Sage Intacct is enabled.

and Project permissions for WIP management are granted.

Also, check that WIP management accounts are configured correctly:

WIP periods you populate with WIP projects should be created in advance via the Sage Intacct UI.
Each WIP project in your WIP period requires a separate SI.WRITEBACKWIP formula.
When you select the scope of the Perform Writeback action on the ribbon, all writeback functions in this scope (Current Sheet or Selected Cells) will be grouped by the WIP period and written to the ERP.
Ensure the Job to date costs field is up-to-date before using SI.WRITEBACKWIP by manually refreshing the WIP schedule in the Sage Intacct interface. Otherwise, the calculations will be based on the currently displayed (and possibly outdated) values.
Syntax
=SI.WRITEBACKWIP(
ConnectionName,
WipPeriodId,
EstimationDate,
LocationId,
PostWipPeriod,
Role,
ProjectId,
CostToComplete,
CostAtCompletion,
PercentComplete,
ContractValue,
Comment,
IsFinalized
)
Arguments
The arguments of the SI.WRITEBACKWIP function can be divided into two groups:
The WIP period and its details
The WIP projects with their estimations for this WIP period.

The arguments of the WIP period should be the same for all WIP projects you add to this WIP period.
Argument | Required/Optional | Description |
| Required | The name of the connection as configured in the Connection Manager |
| Optional | The ID of the WIP period. |
| Optional | The end date of the WIP period. The beginning date of the period is the end date of the previous WIP period. |
| Optional | The ID of the entity or location. |
| Optional | Determines whether the WIP period should be posted. Can be |
| Optional | Valid values: The same goes for the |
WIP project arguments, as visible in Sage Intacct:

Argument | Required/Optional | Description |
| Required | The project ID. ![]()
![]() The Include project in WIP schedules checkbox should be tagged for the project. |
| Optional | The estimated cost to complete the project. |
| Optional | The estimated project cost at completion. |
| Optional | The estimated percentage of the project’s completion. |
| Optional | The contract value. |
| Optional | A comment on the WIP project estimation for this WIP period. |
| Optional | Determines whether the work in the WIP project estimation is finalized for the WIP period. |
Output
The function returns its status, which can be one of the following:
Pending - the formula is pending to be processed.
Line Uploaded - the formula was processed successfully.
Error- an error occurred during the processing of the formula.
Example
=SI.WRITEBACKWIP(
"Sage",
,
"7/7/2025",
"LLC_01",
,
,
"OS",
,
"1800"
)
Description:
This formula prepares data to be updated during Writeback. The scope of the update is to change the CostAtCompletion
estimate for the WIP project with the ID “OS”.
The EstimationDate argument is set to “7/7/2025”
The LocationId argument is set to “LLC_01”
The ProjectId argument is set to “OS”
The CostAtCompletion is set to “1800” - the value to be updated in Sage Intacct during Writeback
When added correctly, the cell with the formula will display the Pending status.

Upon performing Writeback…

The values will be updated in Sage Intacct and the cell containing the formula will display the status Line uploaded.

