Amortization Templates
The AccountingAmortizationTemplate Object
A Rutter Accounting Amortization Template represents an amortization configuration in the connected accounting platform. This read-only resource is supported for NetSuite only. It describes template setup, not generated amortization schedules, journal entries, or posting results.
Properties
idstringThe Rutter generated unique ID of the amortization template.
platform_idstringThe platform specific ID of the amortization template.
deferral_account_idstringnullableThe Rutter ID of the Account linked to the amortization template. The deferral account.
target_account_idstringnullableThe Rutter ID of the Account linked to the amortization template. The target account.
is_activebooleanWhether the amortization template is active.
namestringThe name of the amortization template.
amortization_methodstringnullableThe platform-native amortization method code, without normalization.
amortization_periodnumbernullableThe amortization period configured on the template, in accounting periods.
amortization_term_sourcestringnullableThe platform-native amortization term source code, without normalization.
amortization_typestringnullableThe platform-native amortization type code, without normalization.
period_offsetnumbernullableThe platform-defined period offset configured on the template.
start_offsetnumbernullableThe platform-defined recognition start offset configured on the template.
created_atstringfilterablenullableThe ISO 8601 timestamp that the amortization template was created.
updated_atstringfilterablenullableThe ISO 8601 timestamp that the amortization template was last updated.
last_synced_atstringfilterableThe ISO 8601 timestamp when the amortization template was last synced by Rutter.
platform_dataobjectOptionalThe raw platform data corresponding to the Rutter object.
List Amortization Templates
Request Parameters
access_tokenstringqueryRequiredThe access token of the connection.
cursorstringqueryOptionalUsed to paginate to the next batch of objects. Should be a copy of the next_cursor value from the previous response.
limitintegerqueryOptionalUsed to limit the number of returned objects. Defaults to 50.
filterstringqueryOptionalNot currently supported on Sage Intacct or Sage Business Cloud. Used to specify a filtering criteria for response objects. Refer to Filtering Objects to understand the syntax for the filtering criteria. The filtering syntax only supports fields decorated with a filterable tag in the response object.
Filterable fields: created_at, updated_at, last_synced_at.
sortstringqueryOptionalUsed to sort the response objects, e.g. last_synced_at ASC. If a value is provided but ASC or DESC is not, defaults to ASC. If omitted, defaults to updated_at DESC. Supports only fields decorated with a filterable tag in the response object except on Sage Intacct and Sage Business Cloud. For those platforms, only updated_at_min, updated_at_max and last_synced_at_min fields are supported and not deprecated.
Sortable fields: created_at, updated_at, last_synced_at.
expandarrayqueryOptionalInclude platform specific data (includes additional fields not provided by the Rutter object).
last_synced_at_minintegerqueryOptionalDeprecated - use filter instead. Used to filter objects with a last_synced_at value greater than or equal to the supplied value. Should be a Unix time in milliseconds.
updated_at_maxintegerqueryOptionalDeprecated - use filter instead. Used to filter objects with a updated_at value less than or equal to the supplied value. Should be a Unix time in milliseconds.
updated_at_minintegerqueryOptionalDeprecated - use filter instead. Used to filter objects with a updated_at value greater than or equal to the supplied value. Should be a Unix time in milliseconds.
force_fetchenumqueryOptionalUsed to force a response even if the underlying connection has not finished its initial sync.
Response Body
1{
2 "amortization_templates": [
3 {
4 "id": "00000000-0000-0000-0000-000000000000",
5 "platform_id": "12345678",
6 "deferral_account_id": "00000000-0000-0000-0000-000000000000",
7 "target_account_id": "00000000-0000-0000-0000-000000000000",
8 "is_active": true,
9 "name": "12 Period Amortization",
10 "amortization_method": "DATESINTOPERIODS",
11 "amortization_period": 12,
12 "amortization_term_source": "USERDEFINED",
13 "amortization_type": "STANDARD",
14 "period_offset": 0,
15 "start_offset": 0,
16 "created_at": null,
17 "updated_at": "2023-01-02T02:34:56.000Z",
18 "last_synced_at": "2023-01-02T02:34:56.000Z",
19 "platform_data": {
20 "id": 123,
21 "data": "Varies by platform"
22 }
23 }
24 ],
25 "next_cursor": "MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU=",
26 "connection": {
27 "id": "00000000-0000-0000-0000-000000000000",
28 "orgId": "00000000-0000-0000-0000-000000000000",
29 "platform": "NETSUITE"
30 }
31}
Fetch an Amortization Template
Request Parameters
idstringpathRequiredThe unique ID of the object.
access_tokenstringqueryRequiredThe access token of the connection.
id_typeenumqueryOptionalUsed to indicate the type of id that is supplied. Defaults to rutter. Not currently supported on Sage Intacct or Sage Business Cloud.
force_fetchenumqueryOptionalUsed to force a response even if the underlying connection has not finished its initial sync.
Response Body
1{
2 "amortization_template": {
3 "id": "00000000-0000-0000-0000-000000000000",
4 "platform_id": "12345678",
5 "deferral_account_id": "00000000-0000-0000-0000-000000000000",
6 "target_account_id": "00000000-0000-0000-0000-000000000000",
7 "is_active": true,
8 "name": "12 Period Amortization",
9 "amortization_method": "DATESINTOPERIODS",
10 "amortization_period": 12,
11 "amortization_term_source": "USERDEFINED",
12 "amortization_type": "STANDARD",
13 "period_offset": 0,
14 "start_offset": 0,
15 "created_at": null,
16 "updated_at": "2023-01-02T02:34:56.000Z",
17 "last_synced_at": "2023-01-02T02:34:56.000Z",
18 "platform_data": {
19 "id": 123,
20 "data": "Varies by platform"
21 }
22 },
23 "connection": {
24 "id": "00000000-0000-0000-0000-000000000000",
25 "orgId": "00000000-0000-0000-0000-000000000000",
26 "platform": "NETSUITE"
27 }
28}
Usage
Use GET /accounting/amortization_templates to list synced templates with the standard list pagination and filters. Use the returned Rutter id, not the NetSuite internal platform_id, with GET /accounting/amortization_templates/:id to fetch one template. These endpoints use the existing API version convention, starting at 2023-02-07.
deferral_account_id and target_account_id reference Rutter Account UUIDs, not NetSuite internal account IDs. They are nullable when an account is absent or its reference cannot be resolved. Fetch the linked record through GET /accounting/accounts/:id.
NetSuite Fields
The following fields preserve NetSuite configuration values. The string codes are not Rutter enums and must not be interpreted as a fixed, exhaustive list.
| Rutter field | NetSuite field | Meaning and observed value |
|---|---|---|
platform_id | id | NetSuite internal template ID. |
name | name | Template name. |
is_active | isinactive | Inverse of the native inactive boolean. |
amortization_type | amortizationtype | Native amortization type code; observed STANDARD. |
amortization_method | recurrencetype | Native recurrence/method code; observed DATESINTOPERIODS. |
amortization_term_source | recogintervalsrc | Native recognition interval source code; observed USERDEFINED. |
amortization_period | amortizationperiod | Configured number of accounting periods; observed 12. |
period_offset | periodoffset | Native period offset; observed 0. |
start_offset | revrecoffset | Native recognition start offset; observed 0. |
deferral_account_id | acctdeferral | Linked Rutter Account UUID for the native deferral account. |
target_account_id | accttarget | Linked Rutter Account UUID for the native target account. |
updated_at | lastmodifieddate | Native last-modified timestamp. |
The code fields and numeric configuration fields are nullable when the provider does not supply a value. Zero offsets are valid values, not missing values. created_at is nullable because the verified NetSuite payload does not expose a creation timestamp. last_synced_at is Rutter's sync timestamp, not a provider modification timestamp. Use the standard expand=platform_data query parameter when the original provider data is needed.
No subsidiary scope is exposed because it has not been verified in native payloads. This resource does not normalize native codes into human-readable labels or calculate schedule dates, recognition amounts, or ledger effects. Creating, updating, deleting, or applying templates is not supported by these endpoints.
Inactive templates remain in list responses. Use is_active when choosing which templates to display as selectable options. NetSuite templates are re-fetched as a complete configuration list during sync; the provider fetch does not use incremental timestamp boundaries. Public timestamp filters apply to the synced Rutter records.
Populated custom recurrence lines and variable-template behavior have not been live-verified. Recurrence lines are not normalized by this resource; original provider fields, when present, are available through expand=platform_data.
Have questions?
Contact support for personalized guidance.