Trayd Sage Intacct Integration — Overview
Last updated: June 15, 2026
This describes how Trayd connects to Sage Intacct, what data moves in each direction, and what configuration the integration depends on.
1. What Trayd is
Trayd is a construction workforce platform (payroll, time tracking, and job costing). Our Sage Intacct integration has two jobs:
Pull reference data from Intacct (projects, GL accounts, employees, cost codes, etc.) so Trayd can map its records to your chart of accounts and project structure.
Push payroll accounting entries into Intacct as GL journal entries once a pay period is reconciled in Trayd.
It is not an AP, AR, or vendor-payment integration. Trayd does not create bills, invoices, vendors, or payments in Intacct.
2. Connection & authentication
We connect over the Sage Intacct XML Gateway (Web Services API) at https://api.intacct.com/ia/xml/xmlgw.phtml.
Authentication uses a Web Services sender ID + a dedicated Intacct user login. We need these five values configured on your side and entered into Trayd:
Credential | Notes |
|---|---|
Web Services Sender ID | From Company → Setup → Web Services authorizations |
Web Services Sender Password | Paired with the sender ID |
Company ID | The Intacct company the data lives in |
User ID | A dedicated Web Services user we recommend creating for Trayd |
User Password | For that user |
What we need from you during setup:
The Trayd sender ID authorized under Company → Setup → Configure → Web Services.
A Web Services–enabled user with permission to read the objects below and to create/post GL journal entries.
Confirmation of whether the tenant is single-entity or multi-entity (changes how we stamp the Location dimension — see §5).
3. Data Trayd reads from Intacct (one-way: Intacct → Trayd)
All reads use the XML readByQuery / readMore functions, so there is no record-count cap (we paginate fully).
Trayd concept | Intacct object | Notes |
|---|---|---|
Projects / Phases |
| Job structure |
Project task codes |
| Per-project costing breakdown |
Cost codes / cost types |
| Requires the Construction module |
GL accounts (chart of accounts) |
| We do not read |
Employees |
| For worker/timesheet matching |
Customers |
| Reference only — we do not write AR |
Locations |
| For multi-entity tenants |
Departments |
| Optional dimension |
Reads run on demand (user clicks sync in Trayd) or on an hourly auto-sync schedule per resource. There are no inbound webhooks — Trayd is not notified of changes in Intacct; it re-queries on the schedule.
⚠ If the Construction module is not enabled, COSTTYPE reads return a permissions error. Trayd handles this gracefully but cost-code sync will be unavailable.
4. Data Trayd writes to Intacct (one-way: Trayd → Intacct)
Trayd posts payroll journal entries as GL batches.
Action | Intacct object | Function |
|---|---|---|
Post a payroll batch |
|
|
Reverse / unpost a batch |
|
|
Posting is triggered manually by a Trayd accounting user when they finalize a payroll batch — synchronous, not a background queue.
Journal entries can post as draft or posted state, configurable per client.
Each entry is balanced (debits = credits) and stamped with dimensions (§5).
Batch titles and target journal are configurable in Trayd's export settings.
5. Dimension mapping (the key configuration question)
When Trayd builds each journal entry line, it stamps these Intacct dimensions, mapped using the Intacct record IDs captured during the read sync (§3).
Dimension on the JE line | Source | Required? |
|---|---|---|
GL Account | Trayd ledger account config | Always |
Location |
| Forced on every line for multi-entity tenants; optional otherwise |
Department |
| If configured |
Project |
| For job-cost lines |
Task |
| For job-cost lines |
Cost Type |
| Optional fallback |
Item |
| Optional fallback |
Multi-entity note: for multi-entity tenants we force the LOCATION dimension onto every line, because account-level required dimensions otherwise reject the post. We'd like to confirm the required dimensions configured at the account level so our posting matches your validation rules.
Open item: how should location resolve on payroll lines not tied to a single project/location? Trayd can fall back to a default location, and we want that default to be a deliberate accounting choice.
6. Scope summary
Capability | Supported |
|---|---|
Read projects, tasks, GL accounts, employees, customers, locations, departments | ✅ |
Read cost codes / cost types | ✅ (requires Construction module) |
Write payroll GL journal entries ( | ✅ |
Reverse / delete journal entries | ✅ |
Write vendors, AP bills, AR invoices, payments | ❌ Not supported |
Bidirectional / two-way sync of the same record | ❌ One-way per direction |
Inbound webhooks from Intacct | ❌ Re-query on schedule instead |