Skip to main content

Accounting Transaction Workflow Tasks

Accounting transaction tasks are used to create, update, and delete Invoices, Bills, and Credit Memos.

Create Accounting transaction

task: "AccountingTransaction/Create@1"
name: createAccountingTransaction
inputs:
values:
organizationId: "{{ organizationId }}"
accountId: "{{ accountId }}"
accountingTransactionStatus: "{{ accountingTransactionStatus }}"
accountingTransactionType: "{{ accountingTransactionType }}"
amountDue: "{{ amountDue }}"
amountPaid: "{{ amountPaid }}"
applyToContactID: "{{ applyToContactID }}"
billToContactAddressId: "{{ billToContactAddressId }}"
divisionId: "{{ divisionId }}"
dueDate: "{{ dueDate }}"
note: "{{ note }}"
paidAs: "{{ paidAs }}"
paidDate: "{{ paidDate }}"
paymentTermsId: "{{ paymentTermsId }}"
transactionDate: "{{ transactionDate }}"
transactionNumber: "{{ transactionNumber }}"
outputs:
- name: accountingTransaction
mapping: "accountingTransaction"

Get Accounting transaction

task: "AccountingTransaction/Get@1"
name: getAccountingTransaction
inputs:
accountingTransactionId: "123"

outputs:
- name: accountingTransaction
mapping: "accountingTransaction"

Update Accounting transaction

task: "AccountingTransaction/Update@1"
name: updateAccountingTransaction
inputs:
accountingTransactionId: "123"
values:
accountId: "{{ accountId }}"
accountingTransactionStatus: "{{ accountingTransactionStatus }}"
accountingTransactionType: "{{ accountingTransactionType }}"
amountDue: "{{ amountDue }}"
amountPaid: "{{ amountPaid }}"
applyToContactID: "{{ applyToContactID }}"
billToContactAddressId: "{{ billToContactAddressId }}"
divisionId: "{{ divisionId }}"
dueDate: "{{ dueDate }}"
note: "{{ note }}"
paidAs: "{{ paidAs }}"
paidDate: "{{ paidDate }}"
paymentTermsId: "{{ paymentTermsId }}"
transactionDate: "{{ transactionDate }}"
transactionNumber: "{{ transactionNumber }}"

Delete Accounting transaction

task: "AccountingTransaction/Delete@1"
name: deleteAccountingTransaction
inputs:
accountingTransactionId: "123"

Generate Invoice

Generate Invoice task is used to generate invoice for a customer. It can be used to generate invoice for a job or order.

Inputs:

  • accountId - Accounting Account id - optional
  • includePending - Include pending changes - optional
  • customerId - Customer Contact id - required
  • orderId - Order id - required of job id is not provided
  • jobId - Job Id - required if order id is not provided
  • notes - Notes - optional
  • appendToExistingInvoice - Append to existing not paid invoice
task: "AccountingTransaction/GenerateInvoice@1"
name: generateInvoice
inputs:
accountId: "123" # Accounting Account id - optional
includePending: "true" # Include pending changes - optional
customerId: "123" # Customer Contact id - required
orderId: "123" # Order id - required of job id is not provided
jobId: "123" # Job Id - required if order id is not provided
notes: "notes" # Notes - optional
appendToExistingInvoice: "true" # Append to existing not paid invoice
outputs:
- name: invoice # Invoice object
mapping: "result.invoice"
- name: isSuccess
mapping: "result.isSuccess"

Example Accounting transaction Workflow

workflow:
name: "Accounting transaction / Create AccountingTransaction Example Workflow"
description: "Create Accounting transaction Example Workflow"
version: "1.0"
executionMode: "Sync"

inputs:
- name: "organizationId"
type: "Organization"
displayName: "Organization id"
description: "Organization id"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.organizationId"
- name: "accountId"
type: "AccountingAccount"
displayName: "Account id"
description: "Account id"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.accountId"
- name: "accountingTransactionStatus"
type: "AccountingTransactionStatus"
displayName: "Accounting transaction status"
description: "Accounting transaction status"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.accountingTransactionStatus"
- name: "accountingTransactionType"
type: "AccountingTransactionType"
displayName: "Accounting transaction type"
description: "Accounting transaction type"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.accountingTransactionType"
- name: "amountDue"
type: "number"
displayName: "Amount due"
description: "Amount due"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.amountDue"
- name: "amountPaid"
type: "number"
displayName: "Amount paid"
description: "Amount paid"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.amountPaid"
- name: "applyToContactID"
type: "Contact"
displayName: "Apply to contact ID"
description: "Apply to contact ID"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.applyToContactID"
- name: "billToContactAddressId"
type: "ContactAddress"
displayName: "Bill to contact address id"
description: "Bill to contact address id"
multiple: false
required: false
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.billToContactAddressId"
- name: "divisionId"
type: "Division"
displayName: "Division id"
description: "Division id"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.divisionId"
- name: "dueDate"
type: "Date"
displayName: "Due date"
description: "Due date"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.dueDate"
- name: "note"
type: "string"
displayName: "Note"
description: "Note"
multiple: false
required: false
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.note"
- name: "paidAs"
type: "PaidAs"
displayName: "Paid as"
description: "Paid as"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.paidAs"
- name: "paidDate"
type: "Date"
displayName: "Paid date"
description: "Paid date"
multiple: false
required: false
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.paidDate"
- name: "paymentTermsId"
type: "PaymentTerm"
displayName: "Payment terms id"
description: "Payment terms id"
multiple: false
required: false
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.paymentTermsId"
- name: "transactionDate"
type: "Date"
displayName: "Transaction date"
description: "Transaction date"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.transactionDate"
- name: "transactionNumber"
type: "string"
displayName: "Transaction number"
description: "Transaction number"
multiple: false
required: true
defaultValue: ""
additionalProperties:
visible: true
mapping: "accountingTransaction.transactionNumber"

outputs:
- name: accountingTransaction
mapping: "createAccountingTransactionActivity.createAccountingTransaction.accountingTransaction"

activities:
- name: "createAccountingTransactionActivity"
description: "Create Accounting transaction"
steps:
- task: "AccountingTransaction/Create@1"
name: createAccountingTransaction
inputs:
accountingTransaction:
organizationId: "{{ organizationId }}"
accountId: "{{ accountId }}"
accountingTransactionStatus: "{{ accountingTransactionStatus }}"
accountingTransactionType: "{{ accountingTransactionType }}"
amountDue: "{{ amountDue }}"
amountPaid: "{{ amountPaid }}"
applyToContactID: "{{ applyToContactID }}"
billToContactAddressId: "{{ billToContactAddressId }}"
divisionId: "{{ divisionId }}"
dueDate: "{{ dueDate }}"
note: "{{ note }}"
paidAs: "{{ paidAs }}"
paidDate: "{{ paidDate }}"
paymentTermsId: "{{ paymentTermsId }}"
transactionDate: "{{ transactionDate }}"
transactionNumber: "{{ transactionNumber }}"
outputs:
- name: accountingTransaction
mapping: "accountingTransaction"
- name: "getAccountingTransactionActivity"
description: "Get AccountingTransaction"
steps:
- task: "AccountingTransaction/Get@1"
name: getAccountingTransaction
inputs:
accountingTransactionId: "{{ createAccountingTransactionActivity.createAccountingTransaction.accountingTransaction.accountingTransactionId }}"
outputs:
- name: accountingTransactionFromGet
mapping: "accountingTransaction"
- name: "updateAccountingTransactionActivity"
description: "Update AccountingTransaction"
steps:
- task: "AccountingTransaction/Update@1"
name: updateAccountingTransaction
inputs:
organizationId: "{{ getAccountingTransactionActivity.getAccountingTransaction.accountingTransaction.organizationId }}"
accountingTransactionId: "{{ getAccountingTransactionActivity.getAccountingTransaction.accountingTransaction.accountingTransactionId }}"
accountingTransaction:
accountId: "{{ accountId }}"
accountingTransactionStatus: "{{ accountingTransactionStatus }}"
accountingTransactionType: "{{ accountingTransactionType }}"
amountDue: "{{ amountDue }}"
amountPaid: "{{ amountPaid }}"
applyToContactID: "{{ applyToContactID }}"
billToContactAddressId: "{{ billToContactAddressId }}"
divisionId: "{{ divisionId }}"
dueDate: "{{ dueDate }}"
note: "{{ note }}"
paidAs: "{{ paidAs }}"
paidDate: "{{ paidDate }}"
paymentTermsId: "{{ paymentTermsId }}"
transactionDate: "{{ transactionDate }}"
transactionNumber: "{{ transactionNumber }}"
- name: "deleteAccountingTransactionActivity"
description: "Delete AccountingTransaction"
steps:
- task: "AccountingTransaction/Delete@1"
name: deleteAccountingTransaction
inputs:
organizationId: "{{ getAccountingTransactionActivity.getAccountingTransaction.accountingTransaction.organizationId }}"
accountingTransactionId: "{{ getAccountingTransactionActivity.getAccountingTransaction.accountingTransaction.accountingTransactionId }}"