Account allocations let you automatically distribute amounts across multiple dimensions such as departments, locations, projects, or classes.
Before you generate an account allocation, you must create an account allocation definition. The account allocation definition enables you to record the rationale used for your allocation, the source pool, basis, and target entry in 1 place. After the definition is in place, you can generate the allocation.
For example, you can create an account allocation definition that distributes expenses across revenue-earning departments, then run an account allocation using that definition for the dates you want.
Returns a collection with a key, ID, and link for each account allocation definition. This operation is mostly for use in testing; use the query service to find allocation definitions that meet specific criteria and to specify the properties that you want in the response.
OK
Bad Request
{- "ia::result": [
- {
- "key": "23",
- "id": "23",
- "href": "/objects/general-ledger/account-allocation/23"
}, - {
- "key": "27",
- "id": "27",
- "href": "/objects/general-ledger/account-allocation/27"
}, - {
- "key": "21",
- "id": "21",
- "href": "/objects/general-ledger/account-allocation/21"
}
], - "ia::meta": {
- "totalCount": 3,
- "start": 1,
- "pageSize": 100,
- "next": null,
- "previous": null
}
}
Create a new account allocation definition.
Create an account allocation definition.
name required | string Name for the account allocation definition (must be 20 characters or less). Example: "AllocaForAdjBookNew" | ||||||||||||||||||||
description | string Description of the account allocation definition. Example: "Monthly allocation of expenses" | ||||||||||||||||||||
methodology | string The reasoning and methodology behind the configuration of the account allocation definition. Example: "Expense allocation across revenue earning departments" | ||||||||||||||||||||
object Supporting documents that provide reasoning and methodology for the account allocation. | |||||||||||||||||||||
| |||||||||||||||||||||
latestVersion | integer or null Latest version of the account allocation definition. Example: null | ||||||||||||||||||||
object Determine how dimensions behave during allocation calculations, the level of detail included in the created allocation entries and whether the allocation occurs within a single entity, or across entities. Valid values:
| |||||||||||||||||||||
| |||||||||||||||||||||
activityDelta | boolean Default: false When set to
Allocated entries must be reflected in the source books to correctly consider the prior allocation impact. This option is only effective if the source account is used for the pool reversal in the allocation target, either via Example: true | ||||||||||||||||||||
autoReversePriorPostedJournalEntry | boolean Default: false When set to This reversal occurs on the same posting date as the new allocation. The reversal resets the allocation amount for the new allocation to consider the source amounts as though the prior allocation didn't take place. The result is a new, more accurate allocation that uses the latest basis information to allocate for the entire period. This property cannot be set to Example: false | ||||||||||||||||||||
Array of objects = 1 items The source pool specified in the account allocation definition. | |||||||||||||||||||||
Array (= 1 items)
| |||||||||||||||||||||
Array of objects = 1 items Determines how the account allocation definition distributes the source pool amount across each allocation-focused dimension. | |||||||||||||||||||||
Array (= 1 items)
| |||||||||||||||||||||
Array of objects = 1 items Specifies where the account allocation definition distributes source pool amounts during calculation. | |||||||||||||||||||||
Array (= 1 items)
| |||||||||||||||||||||
Array of objects = 1 items Determines whether to keep the allocated amounts in the allocation book or move them using copy and reverse to another book (like accrual). | |||||||||||||||||||||
Array (= 1 items)
| |||||||||||||||||||||
allowAllocation | string Default: "withinOneEntity" Specifies how the account allocation definition interacts with multiple entities.
Example: "withinOneEntity" | ||||||||||||||||||||
status | string Default: "active" Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced. Example: "active" |
Created
Bad Request
{- "name": "Monthly Expenses RE",
- "description": "Monthly allocation of expenses",
- "methodology": "Monthly Expense allocation across revenue earning departments",
- "status": "active",
- "activityDelta": false,
- "autoReversePriorPostedJournalEntry": false,
- "dimensionTreatment": {
- "location": "preserveValues",
- "department": "allocationFocus",
- "project": "notConsidered",
- "customer": "notConsidered",
- "vendor": "notConsidered",
- "employee": "notConsidered",
- "item": "notConsidered",
- "class": "notConsidered",
- "contract": "notConsidered",
- "warehouse": "notConsidered"
}, - "latestVersion": null,
- "allowAllocation": "withinOneEntity",
- "glAccountAllocationSource": [
- {
- "glAccountGroup": {
- "id": "source"
}, - "percentToAllocate": "100",
- "timePeriod": {
- "id": "Current Month"
}, - "reportingBook": "accrual",
- "useAmountsFrom": "mainReportingBookAndAlternateBooks",
- "currency": "USD",
- "dimensions": {
- "location": {
- "id": "1"
}, - "department": {
- "id": "3"
}, - "employee": {
- "id": "1"
}
}
}
], - "glAccountAllocationBasis": [
- {
- "glAccountGroup": {
- "id": "Basis"
}, - "accumulation": "activity",
- "timePeriod": {
- "id": "Current Month"
}, - "allocationMethod": "dynamicRelativeAccountFinancial",
- "reportingBook": "accrual",
- "useAmountsFrom": "mainReportingBookAndAlternateBooks",
- "skipNegative": false,
- "dimensions": {
- "location": {
- "id": "1"
}, - "employee": {
- "id": "1"
}
}
}
], - "glAccountAllocationTarget": [
- {
- "journal": {
- "id": "Others"
}, - "glAccount": {
- "id": "1105"
}, - "isBillable": false,
- "dimensions": {
- "location": {
- "id": "AZ"
}, - "customer": {
- "id": "1"
}
}
}
], - "glAccountAllocationReverse": [
- {
- "useSourceAccount": true,
- "dimensions": {
- "location": {
- "id": "AZ"
}, - "department": {
- "id": "6"
}
}
}
]
}
{- "ia::result": {
- "id": "29",
- "key": "29",
- "href": "/objects/general-ledger/account-allocation/29"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Returns detailed information for a specified account allocation definition.
key required | string System-assigned key for the account allocation definition. Example: 178 |
OK
Bad Request
{- "ia::result": {
- "id": "29",
- "key": "29",
- "name": "Monthly Expenses RE",
- "description": "Monthly allocation of expenses",
- "methodology": "Monthly Expense allocation across revenue earning departments",
- "status": "active",
- "activityDelta": false,
- "autoReversePriorPostedJournalEntry": false,
- "dimensionTreatment": {
- "location": "preserveValues",
- "department": "allocationFocus",
- "project": "notConsidered",
- "customer": "notConsidered",
- "vendor": "notConsidered",
- "employee": "notConsidered",
- "item": "notConsidered",
- "class": "notConsidered",
- "contract": "notConsidered",
- "warehouse": "notConsidered"
}, - "latestVersion": null,
- "audit": {
- "createdDateTime": "2024-06-25T12:16:47Z",
- "modifiedDateTime": "2024-06-25T12:16:47Z",
- "createdBy": "Admin",
- "modifiedBy": "Admin"
}, - "journal": {
- "id": "Travel",
- "key": "41",
- "href": "/objects/general-ledger/journal/41"
}, - "allowAllocation": "withinOneEntity",
- "attachment": {
- "id": null,
- "key": null
}, - "entity": {
- "key": null,
- "id": null,
- "name": null
}, - "glAccountAllocationSource": [
- {
- "id": "28",
- "key": "28",
- "glAccountAllocation": {
- "id": "29",
- "key": "29",
- "href": "/objects/general-ledger/account-allocation/29"
}, - "glAccountGroup": {
- "id": "source",
- "key": "622",
- "href": "/objects/general-ledger/account-group/622"
}, - "percentToAllocate": "100",
- "timePeriod": {
- "id": "Current Month",
- "key": "395",
- "href": "/objects/general-ledger/reporting-period/395"
}, - "reportingBook": "accrual",
- "useAmountsFrom": "mainReportingBookAndAlternateBooks",
- "currency": "USD",
- "audit": {
- "createdDateTime": "2024-06-25T12:16:47Z",
- "modifiedDateTime": "2024-06-25T12:16:47Z",
- "createdBy": "1",
- "modifiedBy": "1"
}, - "dimensions": {
- "location": {
- "key": "1",
- "id": "1",
- "name": "United States of America",
- "href": "/objects/company-config/location/1"
}, - "department": {
- "key": "3",
- "id": "3",
- "name": "Engineering",
- "href": "/objects/company-config/department/3"
}, - "project": {
- "key": null,
- "name": null,
- "id": null
}, - "customer": {
- "key": null,
- "name": null,
- "id": null
}, - "vendor": {
- "key": null,
- "name": null,
- "id": null
}, - "employee": {
- "key": "1",
- "name": "John Smith",
- "id": "1",
- "href": "/objects/company-config/employee/1"
}, - "item": {
- "key": null,
- "name": null,
- "id": null
}, - "class": {
- "key": null,
- "name": null,
- "id": null
}, - "contract": {
- "key": null,
- "name": null,
- "id": null
}, - "warehouse": {
- "key": null,
- "name": null,
- "id": null
}, - "task": {
- "id": null
}
}, - "href": "/objects/general-ledger/account-allocation-source/28"
}
], - "glAccountAllocationBasis": [
- {
- "id": "21",
- "key": "21",
- "glAccountAllocation": {
- "id": "29",
- "key": "29",
- "href": "/objects/general-ledger/account-allocation/29"
}, - "glAccountGroup": {
- "id": "Basis",
- "key": "623",
- "href": "/objects/general-ledger/account-group/623"
}, - "accumulation": "activity",
- "timePeriod": {
- "id": "Current Month",
- "key": "395",
- "href": "/objects/general-ledger/reporting-period/395"
}, - "allocationMethod": "dynamicRelativeAccountFinancial",
- "reportingBook": "accrual",
- "useAmountsFrom": "mainReportingBookAndAlternateBooks",
- "skipNegative": false,
- "dimensions": {
- "location": {
- "key": "1",
- "id": "1",
- "name": "United States of America",
- "href": "/objects/company-config/location/1"
}, - "department": {
- "key": null,
- "id": null,
- "name": null
}, - "project": {
- "key": null,
- "name": null,
- "id": null
}, - "customer": {
- "key": null,
- "name": null,
- "id": null
}, - "vendor": {
- "key": null,
- "name": null,
- "id": null
}, - "employee": {
- "key": "1",
- "name": "John Smith",
- "id": "1",
- "href": "/objects/company-config/employee/1"
}, - "item": {
- "key": null,
- "name": null,
- "id": null
}, - "class": {
- "key": null,
- "name": null,
- "id": null
}, - "contract": {
- "key": null,
- "name": null,
- "id": null
}, - "warehouse": {
- "key": null,
- "name": null,
- "id": null
}, - "task": {
- "id": null
}
}, - "href": "/objects/general-ledger/account-allocation-basis/21"
}
], - "glAccountAllocationTarget": [
- {
- "id": "21",
- "key": "21",
- "glAccountAllocation": {
- "id": "29",
- "key": "29",
- "href": "/objects/general-ledger/account-allocation/29"
}, - "journal": {
- "key": "39",
- "title": "Accommodation Expenses",
- "id": "Others",
- "href": "/objects/general-ledger/journal/39"
}, - "glAccount": {
- "id": "1105",
- "key": "378",
- "name": "Target",
- "href": "/objects/general-ledger/account/378"
}, - "isBillable": false,
- "audit": {
- "createdDateTime": "2024-06-25T12:16:47Z",
- "modifiedDateTime": "2024-06-25T12:16:47Z",
- "createdBy": "1",
- "modifiedBy": "1"
}, - "dimensions": {
- "location": {
- "key": "72",
- "id": "AZ",
- "name": "Arizona",
- "href": "/objects/company-config/location/72"
}, - "department": {
- "key": null,
- "id": null,
- "name": null
}, - "project": {
- "key": null,
- "name": null,
- "id": null
}, - "customer": {
- "key": "1",
- "name": "Power Aerospace Materials",
- "id": "1",
- "href": "/objects/accounts-receivable/customer/1"
}, - "vendor": {
- "key": null,
- "name": null,
- "id": null
}, - "employee": {
- "key": null,
- "name": null,
- "id": null
}, - "item": {
- "key": null,
- "name": null,
- "id": null
}, - "class": {
- "key": null,
- "name": null,
- "id": null
}, - "contract": {
- "key": null,
- "name": null,
- "id": null
}, - "warehouse": {
- "key": null,
- "name": null,
- "id": null
}
}, - "href": "/objects/general-ledger/account-allocation-target/21"
}
], - "glAccountAllocationReverse": [
- {
- "id": "21",
- "key": "21",
- "glAccountAllocation": {
- "id": "29",
- "key": "29",
- "href": "/objects/general-ledger/account-allocation/29"
}, - "glAccount": {
- "id": null,
- "key": null,
- "name": null
}, - "useSourceAccount": true,
- "audit": {
- "createdDateTime": "2024-06-25T12:16:48Z",
- "modifiedDateTime": "2024-06-25T12:16:48Z",
- "createdBy": "1",
- "modifiedBy": "1"
}, - "dimensions": {
- "location": {
- "key": "72",
- "id": "AZ",
- "name": "Arizona",
- "href": "/objects/company-config/location/72"
}, - "department": {
- "key": "6",
- "id": "6",
- "name": "Marketing",
- "href": "/objects/company-config/department/6"
}, - "project": {
- "key": null,
- "name": null,
- "id": null
}, - "customer": {
- "key": null,
- "name": null,
- "id": null
}, - "vendor": {
- "key": null,
- "name": null,
- "id": null
}, - "employee": {
- "key": null,
- "name": null,
- "id": null
}, - "item": {
- "key": null,
- "name": null,
- "id": null
}, - "class": {
- "key": null,
- "name": null,
- "id": null
}, - "contract": {
- "key": null,
- "name": null,
- "id": null
}, - "warehouse": {
- "key": null,
- "name": null,
- "id": null
}
}, - "href": "/objects/general-ledger/account-allocation-reverse/21"
}
], - "href": "/objects/general-ledger/account-allocation/29"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Updates an existing account allocation definition by setting field values. Any fields not provided remain unchanged.
key required | string System-assigned key for the account allocation definition. Example: 178 |
name | string Name for the account allocation definition (must be 20 characters or less). Example: "AllocaForAdjBookNew" | ||||||||||||||||||||
description | string Description of the account allocation definition. Example: "Monthly allocation of expenses" | ||||||||||||||||||||
methodology | string The reasoning and methodology behind the configuration of the account allocation definition. Example: "Expense allocation across revenue earning departments" | ||||||||||||||||||||
object Supporting documents that provide reasoning and methodology for the account allocation. | |||||||||||||||||||||
| |||||||||||||||||||||
latestVersion | integer or null Latest version of the account allocation definition. Example: null | ||||||||||||||||||||
object Determine how dimensions behave during allocation calculations, the level of detail included in the created allocation entries and whether the allocation occurs within a single entity, or across entities. Valid values:
| |||||||||||||||||||||
| |||||||||||||||||||||
activityDelta | boolean Default: false When set to
Allocated entries must be reflected in the source books to correctly consider the prior allocation impact. This option is only effective if the source account is used for the pool reversal in the allocation target, either via Example: true | ||||||||||||||||||||
autoReversePriorPostedJournalEntry | boolean Default: false When set to This reversal occurs on the same posting date as the new allocation. The reversal resets the allocation amount for the new allocation to consider the source amounts as though the prior allocation didn't take place. The result is a new, more accurate allocation that uses the latest basis information to allocate for the entire period. This property cannot be set to Example: false | ||||||||||||||||||||
Array of objects = 1 items The source pool specified in the account allocation definition. | |||||||||||||||||||||
Array (= 1 items)
| |||||||||||||||||||||
Array of objects = 1 items Determines how the account allocation definition distributes the source pool amount across each allocation-focused dimension. | |||||||||||||||||||||
Array (= 1 items)
| |||||||||||||||||||||
Array of objects = 1 items Specifies where the account allocation definition distributes source pool amounts during calculation. | |||||||||||||||||||||
Array (= 1 items)
| |||||||||||||||||||||
Array of objects = 1 items Determines whether to keep the allocated amounts in the allocation book or move them using copy and reverse to another book (like accrual). | |||||||||||||||||||||
Array (= 1 items)
| |||||||||||||||||||||
allowAllocation | string Default: "withinOneEntity" Specifies how the account allocation definition interacts with multiple entities.
Example: "withinOneEntity" | ||||||||||||||||||||
status | string Default: "active" Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced. Example: "active" |
OK
Bad Request
{- "description": "Yearly allocation of expenses",
- "methodology": "Yearly Expense allocation across revenue earning departments",
- "activityDelta": true
}
{- "ia::result": {
- "id": "29",
- "key": "29",
- "href": "/objects/general-ledger/account-allocation/29"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Deletes an account allocation definition.
key required | string System-assigned key for the account allocation definition. Example: 178 |
No Content
Bad Request
{- "ia::result": {
- "ia::error": {
- "code": "invalidRequest",
- "message": "A POST request requires a payload",
- "errorId": "REST-1028",
- "additionalInfo": {
- "messageId": "IA.REQUEST_REQUIRES_A_PAYLOAD",
- "placeholders": {
- "OPERATION": "POST"
}, - "propertySet": { }
}, - "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
}
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 0,
- "totalError": 1
}
}
Queries an object for filtered data.
object | string Object type to query, in the form Example: "general-ledger/account-allocation" | ||||||||
fields | Array of strings List of fields to include in the response. Can be any combination of these:
Example: ["key","id","max:vendor.creditLimit"] | ||||||||
Array of equal (object) or not equal (object) or less than (object) or (less than or equal (object)) or greater than (object) or (greater than or equal (object)) or in (object) or not in (object) or between (object) or not between (object) or contains (object) or does not contain (object) or has (object) or starts with (object) or does not start with (object) or ends with (object) or does not end with (object) Filter conditions to select the objects to return based on their field values. You use operators and conditions to build your filter, such as Example: [{"$eq":{"status":"active"}},{"$gt":{"totalDue":"1000"}},{"$contains":{"name":"Acme"}}] | |||||||||
Array Any of: Field value must be equal to this specified value. For date fields, you can use these macro values that are relative to the current date or the
These are most useful for queries that you want to save and use repeatedly, such as for views or reports. Just change the For example,
| |||||||||
filterExpression | string Default: "and" Logical operators to apply when there are multiple filter conditions. The conditions in the Shortcuts:
Example: "(1 and 2) or 3" | ||||||||
| |||||||||
Array of objects Set the order of the results by specifying field names to sort by and whether they should be in ascending or descending order. Example: [{"totalDue":"asc"},{"lastPaymentMadeDate":"desc"}] | |||||||||
Array
| |||||||||
start | integer First record of the result set to include in the response. Example: 1 | ||||||||
size | integer Number of records to include in the result set, 4000 maximum. Example: 100 |
OK
Bad Request
{- "object": "general-ledger/account-allocation",
- "filters": [
- {
- "$eq": {
- "allowAllocation": "withinOneEntity"
}
}
], - "fields": [
- "key",
- "id",
- "href"
], - "orderBy": [
- {
- "id": "asc"
}
]
}
{- "ia::result": [
- {
- "key": "21",
- "id": "21",
- "href": "/objects/general-ledger/account-allocation/21"
}, - {
- "key": "23",
- "id": "23",
- "href": "/objects/general-ledger/account-allocation/23"
}, - {
- "key": "27",
- "id": "27",
- "href": "/objects/general-ledger/account-allocation/27"
}
], - "ia::meta": {
- "totalCount": 3,
- "start": 1,
- "pageSize": 100,
- "next": null,
- "previous": null
}
}