Bill lines

Line items in a bill represent charges for purchased items or services.

List bill lines

get/objects/accounts-payable/bill-line

Returns up to 100 object references from the collection with a key, ID, and link for each bill line. This operation is mostly for use in testing; use query to find objects that meet certain criteria and to specify properties that are returned.

Permissions and other requirements
SubscriptionAccounts Payable
User typeBusiness user
PermissionsList, View bill lines
SecurityOAuth2
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": [
    • {
      • "key": "1",
      • "id": "1",
      • "href": "/objects/accounts-payable/bill-line/1"
      },
    • {
      • "key": "3",
      • "id": "3",
      • "href": "/objects/accounts-payable/bill-line/3"
      },
    • {
      • "key": "5",
      • "id": "5",
      • "href": "/objects/accounts-payable/bill-line/5"
      }
    ],
  • "ia::meta": {
    • "totalCount": 3,
    • "start": 1,
    • "pageSize": 100
    }
}

Create bill lines

post/objects/accounts-payable/bill-line

Creates new bill lines

Permissions and other requirements
SubscriptionAccounts Payable
User typeBusiness
PermissionsList, View, Add bill lines
SecurityOAuth2
Request
Request Body schema: application/json
One of:

Line items for an Accounts Payable (AP) bill.

required
object

Transaction allocation template for the line item, which distributes the bill amount across specified dimensions.

key
string or null

System-assigned key for the allocation.

Example: "1"
id
string or null

System-assigned ID for the allocation.

Example: "Alloc1-WBS-US"
txnAmount
required
string <decimal-precision-2>

For multi-currency companies, provide a transaction amount, which is the amount in the transaction currency.

Example: "100.00"
required
object

Header level details for the bill's line entries.

key
required
string

System-assigned key for the bill.

Example: "19876"
id
string

System-assigned ID for the bill.

Example: "19876"
required
object or object
One of:

General Ledger (GL) account associated with the line item.

key
required
string

System-assigned key for the GL account.

Example: "256"
id
string

User-assigned number for the GL account.

Example: "6252"
hasForm1099
string

If the vendor is set up for 1099 tracking and enabled for 1009 flag override, you can set to true to enable individual line items for 1099 treatment. If false, this line item does not have associated 1099 form type and box values.

Example: "false"
object

Form 1099 information for the line item.

type
string or null

Type of form 1099.

Example: "NEC"
box
string or null

Box value of form 1099.

Example: "15A"
object

An alternative account to override the default GL AP account for the bill.

key
string

System-assigned key for the account.

Example: "384"
id
string

Offset account number.

Example: "1234.36"
object

AP account label associated with the line item.

key
string or null

System-assigned key for the account label.

Example: "14"
id
string or null

Meaningful name for the account.

Example: "Accounting Fees"
totalTxnAmount
string <decimal-precision-2>

For tax inclusive bills, provide a total transaction amount.

Example: "100.00"
memo
string or null

Memo about the line item.

Example: "Service charges"
object

Currency details for the bill.

object

Exchange rate details used to calculate the base amount.

object

Payment information for the line item.

releaseToPay
boolean or null
Default: false

If true, then this line item is available for the payment.

Example: true
object
key
string

Location key

Example: "4"
id
string

Location ID

Example: "US"
object

Project-related information for the line item.

isBillable
boolean
Default: false

Indicates whether the line item is marked as billable.

Example: true
object

Asset information for the line item.

nameOfAcquiredAsset
string or null

Identifier for the asset.

Example: "ergonomic chair"
includeTaxInAssetCost
boolean
Default: false

Indicates whether tax is included in the asset cost.

Example: true
object

Purchasing document information for the line item.

object
key
string or null

System-assigned key of the primary purchasing document.

Example: "2437"
id
string or null

User assigned document number.

Example: "Sales Invoice-INV0110"
object

Line details for the purchasing document.

key
string or null

System-assigned key for the line in the primary document.

Example: "750"
id
string or null

Number of the line in the primary document.

Example: "3"
Array of objects

Tax Entries of the AP bill

Array
baseTaxAmount
string <decimal-precision-2>

Base tax amount.

Example: "100.00"
txnTaxAmount
string <decimal-precision-2>

Transaction tax amount. For a PATCH request, set to null if you want Sage Intacct to recalculate the amount, or set to the value you want if you don't want the system to recalculate.

Example: "100.00"
taxRate
number

Tax rate.

Example: 1.0299
object

Purchasing Entry tax details describe a specific type of tax that applies to lines in Accounts Payable transactions.

isPartialExemption
boolean
Default: false

If true, this entry is eligible for partial exemption, which separates the recoverable and non-recoverable portions of the input value added tax (VAT).

Example: true
object
object

Standard Sage Intacct dimension that allows you to create a hierarchy of locations to reflect how your company is organized.

key
string or null

Location key

Example: "4"
id
string or null

Location ID

Example: "AU"
object

Standard Sage Intacct dimension that allows you to create a hierarchy of departments to reflect how your company is organized.

key
string or null

Department key

Example: "9"
id
string or null

Department ID

Example: "01"
object
key
string or null

Employee key

Example: "10"
id
string or null

Employee ID

Example: "EMP-10"
object
key
string or null

Project key

Example: "2"
id
string or null

Project ID

Example: "NET-XML30-2"
object
key
string or null

Customer key

Example: "13"
id
string or null

Customer ID

Example: "CUST-13"
object
key
string or null

Vendor key

Example: "357"
id
string or null

Vendor ID

Example: "1605212096809"
object
key
string or null

Item key

Example: "13"
id
string or null

Item ID

Example: "Case 13"
object
key
string or null

Warehouse key

Example: "6"
id
string or null

Warehouse ID

Example: "WH01"
object
key
string or null

Class key

Example: "731"
id
string or null

Class ID

Example: "REST_CLS_001"
object
id
string or null

Task ID

Example: "1"
key
string or null

Task key

Example: "1"
object
id
string or null

Cost Type ID

Example: "2"
key
string or null

Cost Type key

Example: "2"
object
id
string or null

Asset ID

Example: "A001"
key
string or null

Asset key

Example: "1"
object
id
string or null

Contract ID

Example: "CON-0045-1"
key
string or null

Contract key

Example: "12"
object
key
string or null

Affiliate entity key

Example: "23"
id
string or null

Affiliate entity ID

Example: "AFF-23"
Responses
200

OK

400

Bad Request

Request samples
application/json
{
  • "bill": {
    • "key": "11579"
    },
  • "txnAmount": "2500",
  • "totalTxnAmount": "2500",
  • "glAccount": {
    • "key": "254"
    },
  • "overrideOffsetGLAccount": {
    • "key": "359"
    },
  • "accountLabel": {
    • "key": "28"
    },
  • "dimensions": {
    • "location": {
      • "key": "1"
      },
    • "vendor": {
      • "id": "209"
      },
    • "department": {
      • "id": "77"
      },
    • "project": {
      • "key": "27"
      },
    • "customer": {
      • "id": "HC"
      },
    • "employee": {
      • "id": "EMP1-US"
      },
    • "item": {
      • "id": "GAMESUBKEY"
      },
    • "class": {
      • "id": "3"
      },
    • "warehouse": {
      • "id": "33"
      },
    • "task": {
      • "id": "619"
      }
    },
  • "baseLocation": {
    • "key": "4"
    },
  • "hasForm1099": "true",
  • "releaseToPay": true,
  • "project": {
    • "isBillable": true
    },
  • "form1099": {
    • "type": "NEC",
    • "box": "7"
    },
  • "fixedAsset": {
    • "nameOfAcquiredAsset": "ergonomic chair",
    • "includeTaxInAssetCost": false
    },
  • "memo": "server charges bill"
}
Response samples
application/json
{
  • "ia::result": [
    • {
      • "key": "1",
      • "id": "1",
      • "href": "/objects/accounts-payable/bill-line/1"
      }
    ],
  • "ia::meta": {
    • "totalCount": 1,
    • "start": 1,
    • "pageSize": 100
    }
}

Get a bill line

get/objects/accounts-payable/bill-line/{key}

Returns detailed information for a specified line item in a bill.

Permissions and other requirements
SubscriptionAccounts Payable
User typeBusiness user
PermissionsList, View bill lines
SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the bill line.

Example: 120
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "id": "94",
    • "key": "94",
    • "bill": {
      • "id": "18",
      • "key": "18",
      • "href": "/objects/accounts-payable/bill/18"
      },
    • "glAccount": {
      • "key": "246",
      • "id": "6000",
      • "name": "G&A Salaries",
      • "href": "/objects/general-ledger/account/246"
      },
    • "overrideOffsetGLAccount": {
      • "key": "109",
      • "id": "2000",
      • "name": "Accounts Payable",
      • "href": "/objects/general-ledger/account/109"
      },
    • "accountLabel": {
      • "key": null,
      • "id": null
      },
    • "createdDate": "2024-02-21",
    • "baseAmount": "48550.00",
    • "txnAmount": "48550.00",
    • "dimensions": {
      • "department": {
        },
      • "location": {
        },
      • "project": {
        },
      • "customer": {
        },
      • "vendor": {
        },
      • "employee": {
        },
      • "item": {
        },
      • "class": {
        },
      • "warehouse": {
        },
      • "contract": {
        },
      • "task": {
        }
      },
    • "baseLocation": {
      • "name": "Australia",
      • "key": "4",
      • "href": "/objects/company-config/location/4"
      },
    • "memo": "bill - 001 - vendor 1099",
    • "currency": {
      • "exchangeRate": {
        },
      • "txnCurrency": "USD",
      • "baseCurrency": "AUD"
      },
    • "allocation": {
      • "name": null,
      • "id": null,
      • "key": null
      },
    • "hasForm1099": "false",
    • "lineNumber": "1",
    • "paymentInformation": {
      • "totalBaseAmountPaid": "0.00",
      • "totalTxnAmountPaid": "0.00",
      • "totalBaseAmountSelectedForPayment": "48550.00",
      • "totalTxnAmountSelectedForPayment": "48550.00"
      },
    • "project": {
      • "isBillable": false,
      • "isBilled": false
      },
    • "releaseToPay": false,
    • "form1099": {
      • "type": null,
      • "box": null
      },
    • "retainage": {
      • "percentage": null,
      • "txnAmountRetained": null,
      • "baseAmountRetained": null,
      • "hasRetainage": null,
      • "txnAmountReleased": null,
      • "release": null
      },
    • "isSubTotal": null,
    • "purchasing": {
      • "document": {
        },
      • "documentLine": {
        }
      },
    • "fixedAsset": {
      • "nameOfAcquiredAsset": null,
      • "includeTaxInAssetCost": false
      },
    • "href": "/objects/accounts-payable/bill-line/94"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Update a bill line

patch/objects/accounts-payable/bill-line/{key}

Updates an existing bill line by setting field values. Any fields not provided remain unchanged.

Permissions and other requirements
SubscriptionAccounts Payable, Purchasing
User typeBusiness
PermissionsList, View, Edit bill lines
SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the bill line.

Example: 120
Request Body schema: application/json
hasForm1099
string

If the vendor is set up for 1099 tracking and enabled for 1009 flag override, you can set to true to enable individual line items for 1099 treatment. If false, this line item does not have associated 1099 form type and box values.

Example: "false"
object

Form 1099 information for the line item.

type
string or null

Type of form 1099.

Example: "NEC"
box
string or null

Box value of form 1099.

Example: "15A"
object

General Ledger (GL) account associated with the line item.

key
string

System-assigned key for the GL account.

Example: "256"
id
string

User-assigned number for the GL account.

Example: "6252"
object

An alternative account to override the default GL AP account for the bill.

key
string

System-assigned key for the account.

Example: "384"
id
string

Offset account number.

Example: "1234.36"
object

AP account label associated with the line item.

key
string or null

System-assigned key for the account label.

Example: "14"
id
string or null

Meaningful name for the account.

Example: "Accounting Fees"
txnAmount
string <decimal-precision-2>

For multi-currency companies, provide a transaction amount, which is the amount in the transaction currency.

Example: "100.00"
totalTxnAmount
string <decimal-precision-2>

For tax inclusive bills, provide a total transaction amount.

Example: "100.00"
memo
string or null

Memo about the line item.

Example: "Service charges"
object

Transaction allocation template for the line item, which distributes the bill amount across specified dimensions.

key
string or null

System-assigned key for the allocation.

Example: "1"
id
string or null

System-assigned ID for the allocation.

Example: "Alloc1-WBS-US"
object

Currency details for the bill.

object

Exchange rate details used to calculate the base amount.

object

Payment information for the line item.

releaseToPay
boolean or null
Default: false

If true, then this line item is available for the payment.

Example: true
object
key
string

Location key

Example: "4"
id
string

Location ID

Example: "US"
object

Project-related information for the line item.

isBillable
boolean
Default: false

Indicates whether the line item is marked as billable.

Example: true
object

Asset information for the line item.

nameOfAcquiredAsset
string or null

Identifier for the asset.

Example: "ergonomic chair"
includeTaxInAssetCost
boolean
Default: false

Indicates whether tax is included in the asset cost.

Example: true
object

Purchasing document information for the line item.

object
key
string or null

System-assigned key of the primary purchasing document.

Example: "2437"
id
string or null

User assigned document number.

Example: "Sales Invoice-INV0110"
object

Line details for the purchasing document.

key
string or null

System-assigned key for the line in the primary document.

Example: "750"
id
string or null

Number of the line in the primary document.

Example: "3"
Array of objects

Tax Entries of the AP bill

Array
baseTaxAmount
string <decimal-precision-2>

Base tax amount.

Example: "100.00"
txnTaxAmount
string <decimal-precision-2>

Transaction tax amount. For a PATCH request, set to null if you want Sage Intacct to recalculate the amount, or set to the value you want if you don't want the system to recalculate.

Example: "100.00"
taxRate
number

Tax rate.

Example: 1.0299
object

Purchasing Entry tax details describe a specific type of tax that applies to lines in Accounts Payable transactions.

isPartialExemption
boolean
Default: false

If true, this entry is eligible for partial exemption, which separates the recoverable and non-recoverable portions of the input value added tax (VAT).

Example: true
object
object

Standard Sage Intacct dimension that allows you to create a hierarchy of locations to reflect how your company is organized.

key
string or null

Location key

Example: "4"
id
string or null

Location ID

Example: "AU"
object

Standard Sage Intacct dimension that allows you to create a hierarchy of departments to reflect how your company is organized.

key
string or null

Department key

Example: "9"
id
string or null

Department ID

Example: "01"
object
key
string or null

Employee key

Example: "10"
id
string or null

Employee ID

Example: "EMP-10"
object
key
string or null

Project key

Example: "2"
id
string or null

Project ID

Example: "NET-XML30-2"
object
key
string or null

Customer key

Example: "13"
id
string or null

Customer ID

Example: "CUST-13"
object
key
string or null

Vendor key

Example: "357"
id
string or null

Vendor ID

Example: "1605212096809"
object
key
string or null

Item key

Example: "13"
id
string or null

Item ID

Example: "Case 13"
object
key
string or null

Warehouse key

Example: "6"
id
string or null

Warehouse ID

Example: "WH01"
object
key
string or null

Class key

Example: "731"
id
string or null

Class ID

Example: "REST_CLS_001"
object
id
string or null

Task ID

Example: "1"
key
string or null

Task key

Example: "1"
object
id
string or null

Cost Type ID

Example: "2"
key
string or null

Cost Type key

Example: "2"
object
id
string or null

Asset ID

Example: "A001"
key
string or null

Asset key

Example: "1"
object
id
string or null

Contract ID

Example: "CON-0045-1"
key
string or null

Contract key

Example: "12"
object
key
string or null

Affiliate entity key

Example: "23"
id
string or null

Affiliate entity ID

Example: "AFF-23"
object

Header level details for the bill's line entries.

id
string

System-assigned ID for the bill.

Example: "19876"
key
string

System-assigned key for the bill.

Example: "19876"
Responses
200

OK

400

Bad Request

Request samples
application/json
{
  • "txnAmount": "2400"
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "63",
    • "id": "198376",
    • "href": "/objects/accounts-payable/bill-line/63"
    },
  • "ia::meta": {
    • "totalCount": 1
    }
}

Delete a bill line

delete/objects/accounts-payable/bill-line/{key}

Deletes a bill line.

Permissions and other requirements
SubscriptionAccounts Payable
User typeBusiness user
PermissionsList, Delete bill lines
SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the bill line.

Example: 120
Responses
204

No Content

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "ia::error": {
      • "code": "invalidRequest",
      • "message": "A POST request requires a payload",
      • "errorId": "REST-1028",
      • "additionalInfo": {
        },
      • "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
      }
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 0,
    • "totalError": 1
    }
}

Query bill lines

post/services/core/query

Queries an object for filtered data.

SecurityOAuth2
Request
Request Body schema: application/json
object
string

Object type to query, in the form <application-name>/<object name>. For custom objects use platform-apps/nsp::<object-name>.

Example: "accounts-payable/bill-line"
fields
Array of strings

List of fields to include in the response. Can be any combination of these:

  • The name of a field in the object that you are querying, such as id.

  • The name of a field in a related object, using the form relatedObjectName.fieldName, such as vendor.id.

  • The result of an aggregate function run against the values in the returned objects. Use the form function:fieldName, such as min:startDate to return the earliest starting date. Valid function names are:

    • count
    • avg
    • sum
    • min
    • max
  • The result of an aggregate function run against the values in related objects, using the form function:relatedObjectName.fieldName, such as max:vendor.creditLimit. The same functions are supported as for object fields.

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 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 {"$eq":{"status":"active"}} to select objects in which status is equal to "active".

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 asOfDate in filterParameters, if set:

  • today
  • currentWeek
  • currentMonth
  • currentQuarter
  • currentYear
  • yesterday
  • lastWeek
  • priorMonth
  • priorQuarter
  • priorYear

These are most useful for queries that you want to save and use repeatedly, such as for views or reports. Just change the asOfDate each time to retrieve the same data set for different time periods.

For example, {"eq":{"postingDate":"priorYear"}}.

object

The field name and value to be compared with object values.

Example: {"status":"active"}
filterExpression
string
Default: "and"

Logical operators to apply when there are multiple filter conditions. The conditions in the filters array are implicitly numbered starting at 1. Supports and, or, and grouping with parentheses.

Shortcuts:

  • and by itself means that all conditions must be true.
  • or by itself means that at least one condition must be true.
Example: "(1 and 2) or 3"
object

Pre-defined filter options.

asOfDate
string <date>

The "as of" date to use with any relative date comparisons in filters. For example, if asOfDate is set to "2022-04-01" then priorMonth will be "03".

The current date is used if asOfDate is not set.

Example: "2022-04-01"
includeHierarchyFields
boolean
Default: false

Set to true to include hierarchical structure information with each object in the response.

Example: false
caseSensitiveComparison
boolean
Default: true

Queries are case-sensitive by default. Set to false to ignore case in a query.

Example: true
includePrivate
boolean
Default: false

By default, in a multi-entity company, queries from the top-level entity do not access data in private entities. Set includePrivate to true if you want to query data in private entities.

Example: false
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
property name*
additional property
string
Enum: "asc" "desc"
start
integer

First record of the result set to include in the response.

Example: 1
size
integer

Number of records to include in the response.

Example: 100
Responses
200

OK

400

Bad Request

Request samples
application/json
{
  • "object": "accounts-payable/bill-line",
  • "filters": [
    • {
      • "$eq": {
        }
      }
    ],
  • "fields": [
    • "key",
    • "id",
    • "glAccount.name",
    • "paymentInformation.totalTxnAmountPaid",
    • "bill.id"
    ],
  • "orderBy": [
    • {
      • "id": "asc"
      }
    ]
}
Response samples
application/json
{
  • "ia::result": [
    • {
      • "key": "2291",
      • "id": "2291",
      • "glAccount.name": "Payroll Expenses",
      • "paymentInformation.totalTxnAmountPaid": "75.00",
      • "bill.id": "202"
      },
    • {
      • "key": "2383",
      • "id": "2383",
      • "glAccount.name": "Office Supplies",
      • "paymentInformation.totalTxnAmountPaid": "125.00",
      • "bill.id": "225"
      },
    • {
      • "key": "2387",
      • "id": "2387",
      • "glAccount.name": "Inventory",
      • "paymentInformation.totalTxnAmountPaid": "300.00",
      • "bill.id": "899"
      },
    • {
      • "key": "4501",
      • "id": "4501",
      • "glAccount.name": "Purchasing Price Variance",
      • "paymentInformation.totalTxnAmountPaid": "2000.00",
      • "bill.id": "993"
      },
    • {
      • "key": "4944",
      • "id": "4944",
      • "glAccount.name": "Equipment",
      • "paymentInformation.totalTxnAmountPaid": "620.00",
      • "bill.id": "1061"
      }
    ],
  • "ia::meta": {
    • "totalCount": 5,
    • "start": 1,
    • "pageSize": 100,
    • "next": null,
    • "previous": null
    }
}