Transaction definitions

An order entry transaction definition includes the accounting rules, workflow settings, security settings, and other characteristics for a transaction.

Please be aware that this object is currently "Uncertified" in our open beta, signifying that it has not undergone the complete review process and the design may change during ongoing refinement. Users are advised to exercise discretion in using this object and are encouraged to provide feedback.

List transaction definitions

get/objects/order-entry/txn-definition

Returns a collection with a key, ID, and link for each order entry transaction definition. This operation is mostly for use in testing; use query to find objects that meet certain criteria and to specify properties that are returned.

SecurityOAuth2
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": [
    • {
      • "key": "35",
      • "id": "Sales Return",
      • "href": "/objects/order-entry/txn-definition/35"
      },
    • {
      • "key": "37",
      • "id": "Sales Invoice",
      • "href": "/objects/order-entry/txn-definition/37"
      },
    • {
      • "key": "40",
      • "id": "Shipper",
      • "href": "/objects/order-entry/txn-definition/40"
      }
    ],
  • "ia::meta": {
    • "totalCount": 3,
    • "start": 1,
    • "pageSize": 100
    }
}

Create a transaction definition

post/objects/order-entry/txn-definition

Creates a new order entry transaction definition.

SecurityOAuth2
Request
Request Body schema: application/json
id
required
string

The name for the order entry transaction definition.

Example: "Sales Quote"
docClass
string
Default: "quote"

Order entry transaction template type.

Enum: "adjustment" "invoice" "list" "order" "other" "quote"
Example: "quote"
workflowCategory
string
Default: "quote"

Workflow category

Enum: "invoice" "order" "quote" "return" "shipping"
Example: "quote"
description
string

Description about order entry transaction definition.

Example: "Sales Return RevRec Document"
editPolicy
string
Default: "all"

Sets the edit permission for this transaction type. By default, the user cannot edit the transaction after it is created.

Enum: "all" "beforePrinting" "editInDraftOnly" "noEdit"
Example: "noEdit"
deletePolicy
string
Default: "noDelete"

Sets the delete permission for this transaction type. By default, a user cannot delete a transaction after it is created.

Enum: "all" "beforePrinting" "noDelete"
Example: "all"
enableNumberingSequence
boolean
Default: false

Enable numbering scheme for order entry transaction.

Example: false
preserveNumberingSequence
boolean
Default: false

If true then preserve sequence numbers for order entry transaction.

Example: false
inheritDocumentNumber
boolean
Default: false

Set to true if transactions should inherit source document numbers. For example, a transaction could inherit a sales invoice number.

Example: false
inventoryUpdateType
string
Default: "no"

Specify if inventory will be affected by the transaction and, if so, whether to track the quantity, value, or both .

Enum: "no" "quantity" "quantityAndValue" "value"
Example: "no"
increaseOrDecreaseInventory
string
Default: "increase"

Specify whether the inventory running total is increased or decreased by the transaction.

Enum: "decrease" "increase"
Example: "increase"
txnPostingMethod
string
Default: "noPosting"

Specify whether the transaction post process creates a GL entry and, if so, whether it will post directly to the GL or to the AR subledger.

Enum: "noPosting" "toAR" "toGL"
Example: "toGL"
disableTax
boolean
Default: false

Set to true to disable tax capture for the transaction.

Example: false
enableFulfillment
boolean
Default: false

Set to true to enable the transaction definition for fulfillment.

Example: false
enableReservingAndPicking
boolean
Default: false

Set to true to enable inventory items for reserving and picking.

Example: false
partialConvertMethod
string
Default: "closeTransaction"

Specify how the system processes transactions that are partially complete.

Enum: "closeOriginalAndCreateBackOrder" "closeTransaction" "leaveTransactionOpen"
Example: "closeTransaction"
affectsCost
boolean
Default: false

If true the transaction will affect the costing of order entry.

Example: false
overrideExchangeRateType
boolean
Default: true

Indicates whether users can edit the Exchange rate and/or Exchange rate type fields of the transaction.

Example: false
showBaseCurrency
boolean
Default: false

Specifies whether the transaction amounts are displayed in both base currency and transaction currency.

Example: false
overridePrice
boolean
Default: true

Set to true to allow users to override line item prices on the transaction.

Example: false
trackDiscountAndSurcharge
boolean
Default: false

Indicates whether users can discount transaction line items.

Example: false
allowDiscountOnExtendedPrice
boolean
Default: false

Indicates whether the transaction definition can be used for contract invoices. This field is only applicable if the company is subscribed to Contracts.

Example: false
requireMemoForDiscount
boolean
Default: false

Indicates whether users must provide notes for line items being discounted before saving a transaction.

Example: false
freezeRecallValue
boolean
Default: false

Set to true to freeze recalled values

Example: false
enableSubtotals
boolean
Default: false

Set to true to specify standard subtotals, such as tax or a discount, for the transaction.

Example: false
showExpandedTaxDetails
boolean
Default: false

Set to true to show expanded tax details in the transaction user interface and in printed output. This field applies only to companies that use Avalara AvaTax or Sage Intacct Advanced Tax.

Example: false
enableOverrideTax
boolean
Default: false

Indicates whether users can override whether a line item is taxable.

Example: false
revrecEnablementType
string
Default: "none"

Specifies whether revenue recognition applies to transactions created from this definition and, if so, whether to post the revenue recognition or only display it. This field applies only to companies subscribed to Revenue Management and is applicable only to Order Entry revenue recognition.

Enum: "displayOnly" "none" "post"
Example: "post"
renewalEnablementType
string
Default: "none"

Specifies whether contract renewals apply to the transaction type and, if so, whether the renewal is set up to generate when the transaction posts or the renewal fields are displayed in the transaction so users can select a renewal transaction set.

Enum: "displayOnly" "generate" "none"
Example: "displayOnly"
enableLineItemConversion
boolean
Default: false

Set to true to allow users to convert a sales transaction by line item into a scheduled recurring transaction.

Example: false
allowRenewConvertedLineOnly
boolean
Default: false

This field is only applicable if enableRenewals is set to Generate. Set to true if the system should only renew line items that were converted in the original sales transaction. Set to false if all indicated line items should be renewed, regardless of conversion status.

Example: false
allowLocationOverride
boolean
Default: false

Set to 'true' to allow users to override the location set for the transaction.

Example: false
allowDepartmentOverride
boolean
Default: false

Set to true to allow users to override the department set for the transaction.

Example: false
xslTemplate
string

Document template to use for printed output (PDFs).

Example: "sales"
fixedMessage
string

This message is displayed in the Print/Email document.

Example: "For any inquiries or assistance, please contact our customer service."
contactOneTitle
string
Default: "Bill to"

Use this field to change the Bill-to labels on the transaction and on the printed document.

Example: "Bill to"
contactTwoTitle
string
Default: "Ship to"

Use this field to change the Ship-to labels on the transaction and on the printed document.

Example: "Ship to"
printBillToContact
boolean
Default: false

If true then show the 'Bill to' contact in printed document.

Example: false
printShipToContact
boolean
Default: false

If true then show the 'Ship to' contact in printed document.

Example: false
allowEditingBillToContact
boolean
Default: false

If true then allow to change the Bill-to contact during transaction entry.

Example: false
allowEditingShipToContact
boolean
Default: false

If true then allow to change the Ship-to contact during transaction entry.

Example: false
enableWarnOnLowQuantity
boolean
Default: true

Indicates whether to alert the user if the quantity needed is greater than the ONHAND total in the selected warehouse. The warning also shows the ONORDER and ONHOLD totals.

Example: false
enableCreditLimitCheck
boolean
Default: false

Specifies whether to enforce customer credit limit restrictions in transactions created from this definition.

Example: false
warehouseSelectionMethod
string
Default: "sortByID"

Determines how warehouses are presented to the user in the warehouse list in the transaction.

Enum: "sortByID" "sortByName" "useTheDefaultWarehouse" "warehouseWithAvailableInventory"
Example: "sortByID"
enablePayments
boolean
Default: false

Set to true to enable users to apply payments to an invoice in Order Entry and to set a recurring template to automatically charge a credit card when an invoice is generated (if the company is subscribed to Payment Services).

Example: false
postToGL
boolean
Default: false

If true then enable additional posting to General Ledger.

Example: false
requireSupplyOfPrices
boolean
Default: false

Set to true if a price must be supplied.

Example: false
enableCosting
boolean
Default: false

If true then enable costing for non-inventoried items.

Example: false
documentConversionPolicy
string or null
Default: null

Document conversion policy.

Enum: "convertOnly" "newDocumentOnly" "newDocumentOrConvert" null
Example: "convertOnly"
multiEntityRuleForTransaction
string
Default: "topLevelOrEntity"

Sets the context for where users can create transactions from this transaction definition within a multi-entity, shared environment.

Enum: "entityOnly" "topLevelOnly" "topLevelOrEntity"
Example: "topLevelOnly"
enableProjectActualBillings
boolean
Default: false

If true then enable display of actual billings on printed or emailed invoices.

Example: false
lineLevelSimpleTax
boolean
Default: false

If true then enable line-level Simple Tax.

Example: false
customerVendorEditRule
string or null
Default: null

Allow users to change the customer in Draft or Pending transactions if the transaction has not been converted to another transaction, the transaction date is in an open period, and the transaction's payment status is not Paid or Partially paid. By default, the users cannot edit the customer.

Enum: "always" "exceptConvertedDocuments" "never" null
Example: "always"
enableRetainage
boolean
Default: false

Set to 'true' to enable retainage.

Example: false
enableAdditionalInformationScope
boolean
Default: false

Set to 'true' to enable identification of work that is included and excluded, the reason why, and the terms.

Example: false
enableAdditionalInformationSchedule
boolean
Default: false

Set to 'true' to enable identification of dates for work milestones.

Example: false
enableInternalReference
boolean
Default: false

Set to 'true' to enable identification of who authorized work internally and when they authorized the work.

Example: false
enableExternalReference
boolean
Default: false

Set to 'true' to enable identification of who authorized work externally and when they authorized the work.

Example: false
enableBond
boolean
Default: false

Set to 'true' to identify information about performance and payment bonds.

Example: false
documentChangeType
string
Default: "noChange"

Indicates whether to enable changes to the transaction definition and, if so, how to handle changes.

Enum: "changeOrder" "enableChange" "noChange"
Example: "enableChange"
reportingCategory
string or null
Default: null

Establishes a reporting category that best reflects the purpose of the transaction definition so that similar documents can be grouped when building reports. This field is applicable for use with Interactive Custom Report Writer or Interactive Visual Explorer subscriptions only.

Enum: "conferencesAndGatherings" "contractBids" "contractChangeOrders" "contractInvoicePreview" "contractInvoices" "contracts" "eventConfirmations" "eventInvoices" "eventReservations" "forecastRevenue" "giftsAndDonations" "grantApplications" "grantAwardInvoices" "invoicePreview" "invoices" "membershipInvoices" "membershipRegistrations" null "pledgeAndGiftInvoices" "pledges" "pointOfSale" "projectInvoices" "reservations" "revRecActivation" "salesClearingShippers" "salesCredits" "salesDebits" "salesOrderChangeOrders" "salesOrderInvoices" "salesOrders" "salesQuotes" "salesReturns" "salesShippers" "sponsorshipInvoices" "sponsorships" "subscriptionInvoices" "subscriptions" "tuitionInvoices" "tuitionRegistrations"
Example: "salesQuotes"
enableContractBilling
boolean
Default: false

If true then enable project contract billing.

Example: false
arPostingMethod
string or null
Default: null

Update method for project contract totals.

Enum: "addition" "none" null
Example: "addition"
object

Select the numbering sequence to use to automatically number transactions

key
string

Document sequence Key

Example: "23"
id
string

The ID of the numbering sequence.

Example: "Adjustment Decrease"
object

The first price list the system will evaluate when determining a suggested transaction price.

key
string

System-assigned key for the sales price list.

Example: "22"
id
string

ID for the initial price list.

Example: "Initial Price List"
object

The price list that will be updated when a user saves a transaction.

key
string

System-assigned key for the order entry price list.

Example: "22"
id
string

The name of order entry price list.

Example: "OE Price List"
object

The special price list takes precedence over the Initial price list.

key
string

System-assigned key for the order entry price list.

Example: "21"
id
string

Special price list.

Example: "Special price list"
object

Default warehouse

key
string

Default warehouse key.

Example: "23"
id
string

Unique identifier for the warehouse.

Example: "Warehouse-001"
object

The default for how goods in the transaction are shipped to the customer. If a shipping method is specified for a customer, the customer shipping method takes precedence as the default in the transaction.

key
string

System-assigned key for the shipping method

Example: "11"
id
string

Name or description of the shipping method.

Example: "FedEx"
object

Specifies the template for populating the transaction subtotals table.

key
string

Subtotal template.

Example: 22
id
string

Name of a order entry subtotal template.

Example: "Subtotal template"
object

Accounts Receivable (AR) term, which determines the expiration date for quotes and the due date for invoices.

key
string

System-assigned key for the AR term.

Example: "21"
id
string

The name of AR term.

Example: "10 Days"
object
key
string

The ID of the exchange rate type.

Example: "-1"
id
string

The name of exchange rate type.

Example: "Intacct Daily Rate"
status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Array of objects

Specify the COGS GL accounts to debit and credit. For companies that do not use Inventory Control, these accounts are required when Enable costing for non-inventoried items is set to true and Transaction posting is set to Accounts Receivable.

Array
isOffset
boolean
Default: false

If true, then the line will be marked as offset.

Example: true
txnType
string

Debit or credit type.

Enum: "credit" "debit"
Example: "debit"
moduleType
string

Module type.

Enum: "additional" "inventory" "subledger"
Example: "subledger"
lineNumber
integer <= 8 characters

Line no.

Example: 1
object
object
object
object
object
object

Customer GL Group

status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Array of objects

When Transaction posting is set to Accounts Receivable or General Ledger, specify the AR or GL accounts to debit and credit.

Array
isOffset
boolean
Default: false

If true then the line is marked as Offset.

Example: true
txnType
string

Debit or credit type.

Enum: "credit" "debit"
Example: "debit"
moduleType
string

Module type.

Enum: "additional" "inventory" "subledger"
Example: "subledger"
lineNumber
integer <= 8 characters

Line no.

Example: 1
object
object
object
object
object
object

Customer GL Group

status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Array of objects

When Transaction posting is set to Accounts Receivable and Enable additional posting is set to true, specify the GL account details for additional GL account posting. These accounts are used to reverse the previous transaction in the workflow.

Array
isOffset
boolean
Default: false

If true then the line is marked as offset.

Example: true
txnType
string

Debit or credit type.

Enum: "credit" "debit"
Example: "debit"
moduleType
string

Module type.

Value: "additional"
Example: "additional"
lineNumber
integer <= 8 characters

Line no.

Example: 1
object
object
object
object
object
object

Customer GL Group

status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Array of objects

Inventory total detail for Order Entry transaction

Array
maintainType
string

Maintain type.

Enum: "quantity" "quantityAndValue" "value"
Example: "value"
operation
string

Add or subtract.

Enum: "add" "subtract"
Example: "add"
object

Inventory total

Array of objects

sub-total detail for Order Entry transaction

Array
subtotalType
string or null
Default: null

Subtotal type.

Enum: "charge" "discount" null
Example: "discount"
lineNumber
integer <= 8 characters

Line number.

Example: 1
description
string

Description.

Example: "Discount"
valueType
string or null
Default: null

Value type.

Enum: "amount" null "percent"
Example: "amount"
subtotalValue
string <decimal-precision-2> <= 12 characters

Provide a default value for the subtotal. If Value type is Amount, enter the amount of the subtotal. For example, enter 250. If Value type is Percent, enter a percentage as a whole number. For example, enter 10 for 10%. Users can override the default subtotal value in the transaction.

Example: "10.23"
isApportioned
boolean
Default: false

If true, then the discount subtotal will be apportioned across all line items in the transaction.

Example: true
object

Select the GL account to which the subtotal will post.

object

Select the offset GL account to which the subtotal will post

txnType
string or null
Default: null

Transaction type - debit or credit.

Enum: "credit" "debit" null
Example: "debit"
appliedToLineNumber
integer <= 8 characters

Specify the subtotal line number to which the subtotal will apply. Sage Intacct treats the initial subtotal line as line number 0. The first defined subtotal from the transaction definition is line number 1, the second defined subtotal is line number 2, and so on. The value of Applied to line is implicitly assumed to be 0. Taxes, all other charges, and discounts are computed at the line level. This fields does not apply if is set to line-level Simple Tax.

Example: 1
isTax
boolean
Default: false

Flags the subtotal as a tax. When the transaction posts, the tax will post separately based on the items in the transaction.

Example: true
object

Select a default department for the subtotal

enableAvalaraTax
boolean
Default: false

If set to true then the subtotal line item applies to AvaTax.

Example: true
Array of objects

Document conversion detail for an Order Entry transaction

Array
object

Specify the transaction definitions from which this transaction can be converted. For example, a sales invoice can be converted from a sales order and a shipper.

isDefault
boolean
Default: false

Default for bulk conversion.

Example: true
Array of objects

Entity detail for order entry transaction

Array
enableNumberingSequence
boolean
Default: false

If true then enable sequence numbering.

Example: false
preserveNumberingSequence
boolean
Default: false

If true then preserve sequence numbering.

Example: false
canInheritSourceDocumentNumber
boolean
Default: false

Inherit source document number.

Example: false
object

Provide printed document template to use as the default for printed output (PDFs) for the corresponding entity. Order entry transaction definition document template is used if you not provide this field.

enableCreateTransactionRule
boolean
Default: false

Create transactions in.

Example: false
object

Specifies the template for populating the transaction subtotals table.

showExpandedTaxDetail
boolean
Default: false

Show expanded tax details.

Example: false
enableOverrideTax
boolean
Default: false

Line-item tax.

Example: false
enableLineLevelSimpleTax
boolean
Default: false

Enable line-level Simple Tax.

Example: false
object
object
Responses
201

Created

400

Bad Request

Request samples
application/json
{
  • "id": "Sales Invoice",
  • "docClass": "invoice",
  • "workflowCategory": "invoice",
  • "description": "Sales Invoice",
  • "editPolicy": "all",
  • "deletePolicy": "all",
  • "enableNumberingSequence": true,
  • "preserveNumberingSequence": true,
  • "inheritDocumentNumber": false,
  • "inventoryUpdateType": "no",
  • "increaseOrDecreaseInventory": "decrease",
  • "txnPostingMethod": "noPosting",
  • "disableTax": false,
  • "enableFulfillment": false,
  • "enableReservingAndPicking": false,
  • "partialConvertMethod": "closeOriginalAndCreateBackOrder",
  • "affectsCost": false,
  • "overrideExchangeRateType": true,
  • "overridePrice": true,
  • "trackDiscountAndSurcharge": false,
  • "allowDiscountOnExtendedPrice": false,
  • "requireMemoForDiscount": false,
  • "enableSubtotals": false,
  • "showExpandedTaxDetails": false,
  • "enableOverrideTax": false,
  • "revrecEnablementType": "none",
  • "renewalEnablementType": "generate",
  • "enableLineItemConversion": true,
  • "allowRenewConvertedLineOnly": false,
  • "allowLocationOverride": true,
  • "allowDepartmentOverride": true,
  • "xslTemplate": "Intacct Sales Invoice",
  • "fixedMessage": "Sales Transaction",
  • "contactOneTitle": "Bill to",
  • "printBillToContact": true,
  • "allowEditingBillToContact": false,
  • "printShipToContact": true,
  • "contactTwoTitle": "Ship to",
  • "allowEditingShipToContact": false,
  • "enableWarnOnLowQuantity": false,
  • "enableCreditLimitCheck": false,
  • "warehouseSelectionMethod": "useTheDefaultWarehouse"
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "53",
    • "id": "53",
    • "href": "/objects/order-entry/txn-definition/53"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Get a transaction definition

get/objects/order-entry/txn-definition/{key}

Returns detailed information for a specified order entry transaction definition.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the transaction definition.

Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "key": "63",
    • "id": "Sales Invoice",
    • "docClass": "invoice",
    • "workflowCategory": "invoice",
    • "description": "Sales Invoice",
    • "enableUserOrGroupPermmission": false,
    • "editPolicy": "all",
    • "deletePolicy": "all",
    • "enableNumberingSequence": true,
    • "documentSequence": {
      • "id": "OE-Doc",
      • "printTitle": "Sales Invoice"
      },
    • "preserveNumberingSequence": true,
    • "inheritDocumentNumber": false,
    • "inventoryUpdateType": "no",
    • "increaseOrDecreaseInventory": "decrease",
    • "txnPostingMethod": "noPosting",
    • "disableTax": false,
    • "enableFulfillment": false,
    • "enableReservingAndPicking": false,
    • "partialConvertMethod": "closeOriginalAndCreateBackOrder",
    • "affectsCost": false,
    • "exchangeRateType": {
      • "id": "Intacct Daily Rate",
      • "key": "-1"
      },
    • "overrideExchangeRateType": true,
    • "showBaseCurrency": false,
    • "initialPriceList": {
      • "id": "Base Price List",
      • "key": "1",
      • "href": "/objects/order-entry-price-list/1"
      },
    • "overridePrice": true,
    • "trackDiscountAndSurcharge": false,
    • "allowDiscountOnExtendedPrice": false,
    • "requireMemoForDiscount": false,
    • "freezeRecallValue": false,
    • "enableSubtotals": false,
    • "showExpandedTaxDetails": false,
    • "enableOverrideTax": false,
    • "revrecEnablementType": "none",
    • "renewalEnablementType": "generate",
    • "enableLineItemConversion": true,
    • "allowRenewConvertedLineOnly": false,
    • "allowLocationOverride": true,
    • "allowDepartmentOverride": true,
    • "xslTemplate": "Intacct Sales Invoice",
    • "fixedMessage": "Sales Transaction",
    • "contactOneTitle": "Bill to",
    • "printBillToContact": true,
    • "allowEditingBillToContact": false,
    • "printShipToContact": true,
    • "contactTwoTitle": "Ship to",
    • "allowEditingShipToContact": false,
    • "enableWarnOnLowQuantity": false,
    • "enableCreditLimitCheck": false,
    • "warehouseSelectionMethod": "useTheDefaultWarehouse",
    • "warehouse": {
      • "id": "WH02"
      },
    • "status": "active",
    • "enablePayments": false,
    • "postToGL": false,
    • "requireSupplyOfPrices": false,
    • "enableCosting": false,
    • "audit": {
      • "createdDateTime": "2023-06-27T14:22:49Z",
      • "modifiedDateTime": "2023-06-27T14:22:49Z",
      • "createdBy": "1",
      • "modifiedBy": "1"
      },
    • "documentConversionPolicy": "newDocumentOrConvert",
    • "multiEntityRuleForTransaction": "topLevelOrEntity",
    • "enableProjectActualBillings": false,
    • "lineLevelSimpleTax": false,
    • "customerVendorEditRule": "never",
    • "enableRetainage": false,
    • "enableAdditionalInformationScope": false,
    • "enableAdditionalInformationSchedule": false,
    • "enableInternalReference": false,
    • "enableExternalReference": false,
    • "enableBond": false,
    • "documentChangeType": "noChange",
    • "reportingCategory": "salesOrderInvoices",
    • "enableContractBilling": false,
    • "arPostingMethod": "none",
    • "href": "/objects/order-entry/txn-definition/63"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Update a transaction definition

patch/objects/order-entry/txn-definition/{key}

Updates an existing order entry transaction definition by setting field values. Any fields not provided remain unchanged. The changes you make to a transaction definition apply to transactions that are created after the changes are made. The changes do not apply to existing transactions unless you edit and save the transaction after changes are made.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the transaction definition.

Request Body schema: application/json
docClass
string
Default: "quote"

Order entry transaction template type.

Enum: "adjustment" "invoice" "list" "order" "other" "quote"
Example: "quote"
workflowCategory
string
Default: "quote"

Workflow category

Enum: "invoice" "order" "quote" "return" "shipping"
Example: "quote"
description
string

Description about order entry transaction definition.

Example: "Sales Return RevRec Document"
editPolicy
string
Default: "all"

Sets the edit permission for this transaction type. By default, the user cannot edit the transaction after it is created.

Enum: "all" "beforePrinting" "editInDraftOnly" "noEdit"
Example: "noEdit"
deletePolicy
string
Default: "noDelete"

Sets the delete permission for this transaction type. By default, a user cannot delete a transaction after it is created.

Enum: "all" "beforePrinting" "noDelete"
Example: "all"
enableNumberingSequence
boolean
Default: false

Enable numbering scheme for order entry transaction.

Example: false
preserveNumberingSequence
boolean
Default: false

If true then preserve sequence numbers for order entry transaction.

Example: false
inheritDocumentNumber
boolean
Default: false

Set to true if transactions should inherit source document numbers. For example, a transaction could inherit a sales invoice number.

Example: false
inventoryUpdateType
string
Default: "no"

Specify if inventory will be affected by the transaction and, if so, whether to track the quantity, value, or both .

Enum: "no" "quantity" "quantityAndValue" "value"
Example: "no"
increaseOrDecreaseInventory
string
Default: "increase"

Specify whether the inventory running total is increased or decreased by the transaction.

Enum: "decrease" "increase"
Example: "increase"
txnPostingMethod
string
Default: "noPosting"

Specify whether the transaction post process creates a GL entry and, if so, whether it will post directly to the GL or to the AR subledger.

Enum: "noPosting" "toAR" "toGL"
Example: "toGL"
disableTax
boolean
Default: false

Set to true to disable tax capture for the transaction.

Example: false
enableFulfillment
boolean
Default: false

Set to true to enable the transaction definition for fulfillment.

Example: false
enableReservingAndPicking
boolean
Default: false

Set to true to enable inventory items for reserving and picking.

Example: false
partialConvertMethod
string
Default: "closeTransaction"

Specify how the system processes transactions that are partially complete.

Enum: "closeOriginalAndCreateBackOrder" "closeTransaction" "leaveTransactionOpen"
Example: "closeTransaction"
affectsCost
boolean
Default: false

If true the transaction will affect the costing of order entry.

Example: false
overrideExchangeRateType
boolean
Default: true

Indicates whether users can edit the Exchange rate and/or Exchange rate type fields of the transaction.

Example: false
showBaseCurrency
boolean
Default: false

Specifies whether the transaction amounts are displayed in both base currency and transaction currency.

Example: false
overridePrice
boolean
Default: true

Set to true to allow users to override line item prices on the transaction.

Example: false
trackDiscountAndSurcharge
boolean
Default: false

Indicates whether users can discount transaction line items.

Example: false
allowDiscountOnExtendedPrice
boolean
Default: false

Indicates whether the transaction definition can be used for contract invoices. This field is only applicable if the company is subscribed to Contracts.

Example: false
requireMemoForDiscount
boolean
Default: false

Indicates whether users must provide notes for line items being discounted before saving a transaction.

Example: false
freezeRecallValue
boolean
Default: false

Set to true to freeze recalled values

Example: false
enableSubtotals
boolean
Default: false

Set to true to specify standard subtotals, such as tax or a discount, for the transaction.

Example: false
showExpandedTaxDetails
boolean
Default: false

Set to true to show expanded tax details in the transaction user interface and in printed output. This field applies only to companies that use Avalara AvaTax or Sage Intacct Advanced Tax.

Example: false
enableOverrideTax
boolean
Default: false

Indicates whether users can override whether a line item is taxable.

Example: false
revrecEnablementType
string
Default: "none"

Specifies whether revenue recognition applies to transactions created from this definition and, if so, whether to post the revenue recognition or only display it. This field applies only to companies subscribed to Revenue Management and is applicable only to Order Entry revenue recognition.

Enum: "displayOnly" "none" "post"
Example: "post"
renewalEnablementType
string
Default: "none"

Specifies whether contract renewals apply to the transaction type and, if so, whether the renewal is set up to generate when the transaction posts or the renewal fields are displayed in the transaction so users can select a renewal transaction set.

Enum: "displayOnly" "generate" "none"
Example: "displayOnly"
enableLineItemConversion
boolean
Default: false

Set to true to allow users to convert a sales transaction by line item into a scheduled recurring transaction.

Example: false
allowRenewConvertedLineOnly
boolean
Default: false

This field is only applicable if enableRenewals is set to Generate. Set to true if the system should only renew line items that were converted in the original sales transaction. Set to false if all indicated line items should be renewed, regardless of conversion status.

Example: false
allowLocationOverride
boolean
Default: false

Set to 'true' to allow users to override the location set for the transaction.

Example: false
allowDepartmentOverride
boolean
Default: false

Set to true to allow users to override the department set for the transaction.

Example: false
xslTemplate
string

Document template to use for printed output (PDFs).

Example: "sales"
fixedMessage
string

This message is displayed in the Print/Email document.

Example: "For any inquiries or assistance, please contact our customer service."
contactOneTitle
string
Default: "Bill to"

Use this field to change the Bill-to labels on the transaction and on the printed document.

Example: "Bill to"
contactTwoTitle
string
Default: "Ship to"

Use this field to change the Ship-to labels on the transaction and on the printed document.

Example: "Ship to"
printBillToContact
boolean
Default: false

If true then show the 'Bill to' contact in printed document.

Example: false
printShipToContact
boolean
Default: false

If true then show the 'Ship to' contact in printed document.

Example: false
allowEditingBillToContact
boolean
Default: false

If true then allow to change the Bill-to contact during transaction entry.

Example: false
allowEditingShipToContact
boolean
Default: false

If true then allow to change the Ship-to contact during transaction entry.

Example: false
enableWarnOnLowQuantity
boolean
Default: true

Indicates whether to alert the user if the quantity needed is greater than the ONHAND total in the selected warehouse. The warning also shows the ONORDER and ONHOLD totals.

Example: false
enableCreditLimitCheck
boolean
Default: false

Specifies whether to enforce customer credit limit restrictions in transactions created from this definition.

Example: false
warehouseSelectionMethod
string
Default: "sortByID"

Determines how warehouses are presented to the user in the warehouse list in the transaction.

Enum: "sortByID" "sortByName" "useTheDefaultWarehouse" "warehouseWithAvailableInventory"
Example: "sortByID"
enablePayments
boolean
Default: false

Set to true to enable users to apply payments to an invoice in Order Entry and to set a recurring template to automatically charge a credit card when an invoice is generated (if the company is subscribed to Payment Services).

Example: false
postToGL
boolean
Default: false

If true then enable additional posting to General Ledger.

Example: false
requireSupplyOfPrices
boolean
Default: false

Set to true if a price must be supplied.

Example: false
enableCosting
boolean
Default: false

If true then enable costing for non-inventoried items.

Example: false
documentConversionPolicy
string or null
Default: null

Document conversion policy.

Enum: "convertOnly" "newDocumentOnly" "newDocumentOrConvert" null
Example: "convertOnly"
multiEntityRuleForTransaction
string
Default: "topLevelOrEntity"

Sets the context for where users can create transactions from this transaction definition within a multi-entity, shared environment.

Enum: "entityOnly" "topLevelOnly" "topLevelOrEntity"
Example: "topLevelOnly"
enableProjectActualBillings
boolean
Default: false

If true then enable display of actual billings on printed or emailed invoices.

Example: false
lineLevelSimpleTax
boolean
Default: false

If true then enable line-level Simple Tax.

Example: false
customerVendorEditRule
string or null
Default: null

Allow users to change the customer in Draft or Pending transactions if the transaction has not been converted to another transaction, the transaction date is in an open period, and the transaction's payment status is not Paid or Partially paid. By default, the users cannot edit the customer.

Enum: "always" "exceptConvertedDocuments" "never" null
Example: "always"
enableRetainage
boolean
Default: false

Set to 'true' to enable retainage.

Example: false
enableAdditionalInformationScope
boolean
Default: false

Set to 'true' to enable identification of work that is included and excluded, the reason why, and the terms.

Example: false
enableAdditionalInformationSchedule
boolean
Default: false

Set to 'true' to enable identification of dates for work milestones.

Example: false
enableInternalReference
boolean
Default: false

Set to 'true' to enable identification of who authorized work internally and when they authorized the work.

Example: false
enableExternalReference
boolean
Default: false

Set to 'true' to enable identification of who authorized work externally and when they authorized the work.

Example: false
enableBond
boolean
Default: false

Set to 'true' to identify information about performance and payment bonds.

Example: false
documentChangeType
string
Default: "noChange"

Indicates whether to enable changes to the transaction definition and, if so, how to handle changes.

Enum: "changeOrder" "enableChange" "noChange"
Example: "enableChange"
reportingCategory
string or null
Default: null

Establishes a reporting category that best reflects the purpose of the transaction definition so that similar documents can be grouped when building reports. This field is applicable for use with Interactive Custom Report Writer or Interactive Visual Explorer subscriptions only.

Enum: "conferencesAndGatherings" "contractBids" "contractChangeOrders" "contractInvoicePreview" "contractInvoices" "contracts" "eventConfirmations" "eventInvoices" "eventReservations" "forecastRevenue" "giftsAndDonations" "grantApplications" "grantAwardInvoices" "invoicePreview" "invoices" "membershipInvoices" "membershipRegistrations" null "pledgeAndGiftInvoices" "pledges" "pointOfSale" "projectInvoices" "reservations" "revRecActivation" "salesClearingShippers" "salesCredits" "salesDebits" "salesOrderChangeOrders" "salesOrderInvoices" "salesOrders" "salesQuotes" "salesReturns" "salesShippers" "sponsorshipInvoices" "sponsorships" "subscriptionInvoices" "subscriptions" "tuitionInvoices" "tuitionRegistrations"
Example: "salesQuotes"
enableContractBilling
boolean
Default: false

If true then enable project contract billing.

Example: false
arPostingMethod
string or null
Default: null

Update method for project contract totals.

Enum: "addition" "none" null
Example: "addition"
object

Select the numbering sequence to use to automatically number transactions

key
string

Document sequence Key

Example: "23"
id
string

The ID of the numbering sequence.

Example: "Adjustment Decrease"
object

The first price list the system will evaluate when determining a suggested transaction price.

key
string

System-assigned key for the sales price list.

Example: "22"
id
string

ID for the initial price list.

Example: "Initial Price List"
object

The price list that will be updated when a user saves a transaction.

key
string

System-assigned key for the order entry price list.

Example: "22"
id
string

The name of order entry price list.

Example: "OE Price List"
object

The special price list takes precedence over the Initial price list.

key
string

System-assigned key for the order entry price list.

Example: "21"
id
string

Special price list.

Example: "Special price list"
object

Default warehouse

key
string

Default warehouse key.

Example: "23"
id
string

Unique identifier for the warehouse.

Example: "Warehouse-001"
object

The default for how goods in the transaction are shipped to the customer. If a shipping method is specified for a customer, the customer shipping method takes precedence as the default in the transaction.

key
string

System-assigned key for the shipping method

Example: "11"
id
string

Name or description of the shipping method.

Example: "FedEx"
object

Specifies the template for populating the transaction subtotals table.

key
string

Subtotal template.

Example: 22
id
string

Name of a order entry subtotal template.

Example: "Subtotal template"
object

Accounts Receivable (AR) term, which determines the expiration date for quotes and the due date for invoices.

key
string

System-assigned key for the AR term.

Example: "21"
id
string

The name of AR term.

Example: "10 Days"
object
key
string

The ID of the exchange rate type.

Example: "-1"
id
string

The name of exchange rate type.

Example: "Intacct Daily Rate"
status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Array of objects

Specify the COGS GL accounts to debit and credit. For companies that do not use Inventory Control, these accounts are required when Enable costing for non-inventoried items is set to true and Transaction posting is set to Accounts Receivable.

Array
isOffset
boolean
Default: false

If true, then the line will be marked as offset.

Example: true
txnType
string

Debit or credit type.

Enum: "credit" "debit"
Example: "debit"
moduleType
string

Module type.

Enum: "additional" "inventory" "subledger"
Example: "subledger"
lineNumber
integer <= 8 characters

Line no.

Example: 1
object
object
object
object
object
object

Customer GL Group

status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Array of objects

When Transaction posting is set to Accounts Receivable or General Ledger, specify the AR or GL accounts to debit and credit.

Array
isOffset
boolean
Default: false

If true then the line is marked as Offset.

Example: true
txnType
string

Debit or credit type.

Enum: "credit" "debit"
Example: "debit"
moduleType
string

Module type.

Enum: "additional" "inventory" "subledger"
Example: "subledger"
lineNumber
integer <= 8 characters

Line no.

Example: 1
object
object
object
object
object
object

Customer GL Group

status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Array of objects

When Transaction posting is set to Accounts Receivable and Enable additional posting is set to true, specify the GL account details for additional GL account posting. These accounts are used to reverse the previous transaction in the workflow.

Array
isOffset
boolean
Default: false

If true then the line is marked as offset.

Example: true
txnType
string

Debit or credit type.

Enum: "credit" "debit"
Example: "debit"
moduleType
string

Module type.

Value: "additional"
Example: "additional"
lineNumber
integer <= 8 characters

Line no.

Example: 1
object
object
object
object
object
object

Customer GL Group

status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Array of objects

Inventory total detail for Order Entry transaction

Array
maintainType
string

Maintain type.

Enum: "quantity" "quantityAndValue" "value"
Example: "value"
operation
string

Add or subtract.

Enum: "add" "subtract"
Example: "add"
object

Inventory total

Array of objects

sub-total detail for Order Entry transaction

Array
subtotalType
string or null
Default: null

Subtotal type.

Enum: "charge" "discount" null
Example: "discount"
lineNumber
integer <= 8 characters

Line number.

Example: 1
description
string

Description.

Example: "Discount"
valueType
string or null
Default: null

Value type.

Enum: "amount" null "percent"
Example: "amount"
subtotalValue
string <decimal-precision-2> <= 12 characters

Provide a default value for the subtotal. If Value type is Amount, enter the amount of the subtotal. For example, enter 250. If Value type is Percent, enter a percentage as a whole number. For example, enter 10 for 10%. Users can override the default subtotal value in the transaction.

Example: "10.23"
isApportioned
boolean
Default: false

If true, then the discount subtotal will be apportioned across all line items in the transaction.

Example: true
object

Select the GL account to which the subtotal will post.

object

Select the offset GL account to which the subtotal will post

txnType
string or null
Default: null

Transaction type - debit or credit.

Enum: "credit" "debit" null
Example: "debit"
appliedToLineNumber
integer <= 8 characters

Specify the subtotal line number to which the subtotal will apply. Sage Intacct treats the initial subtotal line as line number 0. The first defined subtotal from the transaction definition is line number 1, the second defined subtotal is line number 2, and so on. The value of Applied to line is implicitly assumed to be 0. Taxes, all other charges, and discounts are computed at the line level. This fields does not apply if is set to line-level Simple Tax.

Example: 1
isTax
boolean
Default: false

Flags the subtotal as a tax. When the transaction posts, the tax will post separately based on the items in the transaction.

Example: true
object

Select a default department for the subtotal

enableAvalaraTax
boolean
Default: false

If set to true then the subtotal line item applies to AvaTax.

Example: true
Array of objects

Document conversion detail for an Order Entry transaction

Array
object

Specify the transaction definitions from which this transaction can be converted. For example, a sales invoice can be converted from a sales order and a shipper.

isDefault
boolean
Default: false

Default for bulk conversion.

Example: true
Array of objects

Entity detail for order entry transaction

Array
enableNumberingSequence
boolean
Default: false

If true then enable sequence numbering.

Example: false
preserveNumberingSequence
boolean
Default: false

If true then preserve sequence numbering.

Example: false
canInheritSourceDocumentNumber
boolean
Default: false

Inherit source document number.

Example: false
object

Provide printed document template to use as the default for printed output (PDFs) for the corresponding entity. Order entry transaction definition document template is used if you not provide this field.

enableCreateTransactionRule
boolean
Default: false

Create transactions in.

Example: false
object

Specifies the template for populating the transaction subtotals table.

showExpandedTaxDetail
boolean
Default: false

Show expanded tax details.

Example: false
enableOverrideTax
boolean
Default: false

Line-item tax.

Example: false
enableLineLevelSimpleTax
boolean
Default: false

Enable line-level Simple Tax.

Example: false
object
object
Responses
200

OK

400

Bad Request

Request samples
application/json
{
  • "showBasecurrency": false,
  • "canOverridePrice": true,
  • "recallDocumentDetail": [
    • {
      • "isDefault": true,
      • "recallTransactionDefinition": {
        }
      },
    • {
      • "key": "57",
      • "isDefault": false
      },
    • {
      • "key": "59",
      • "ia::operation": "delete"
      }
    ]
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "52",
    • "href": "/objects/order-entry/txn-definition/52"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Delete a transaction definition

delete/objects/order-entry/txn-definition/{key}

Deletes an order entry transaction definition.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the transaction definition.

Responses
204

No Content

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::error": {
    • "code": "invalidRequest",
    • "message": "Malformed URL",
    • "supportId": "sQrM9%7EYdh5oDEWVb80mrn9xuHjoAAAABBQ",
    • "details": [
      • {
        }
      ]
    }
}

Query transaction definitions

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: "order-entry/txn-definition"
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/vendor",
  • "fields": [
    • "id",
    • "name",
    • "status",
    • "href"
    ],
  • "filters": [
    • {
      • "$eq": {
        }
      },
    • {
      • "$eq": {
        }
      }
    ],
  • "filterExpression": "1 and 2",
  • "orderBy": [
    • {
      • "id": "asc"
      }
    ]
}
Response samples
application/json
{
  • "ia::result": [
    • {
      • "id": "Vend-00002",
      • "name": "Test vendor",
      • "status": "active",
      • "href": "/objects/accounts-payable/vendor/85"
      },
    • {
      • "id": "VEND-00010",
      • "name": "Design Works",
      • "status": "active",
      • "href": "/objects/accounts-payable/vendor/111"
      }
    ],
  • "ia::meta": {
    • "totalCount": 2,
    • "start": 1,
    • "pageSize": 100,
    • "next": null,
    • "previous": null
    }
}