Set up accounting trackers, first with necessary permission, categories and groups, then the counterparty and transactions trackers, and finally sample data and main accounting page.
Set Permissions
YAML
permissions:
Acctg-view:
description: May view items in the accounting feature
include: [ Registered ]
Acctg-edit:
description: May edit items in the accounting feature
include: [ Registered ]
preferences:
enable: [ feature_trackers, feature_categories ]
Create Categories
These categories serve as accounts to book transactions to, or account groupings (which you typically wouldn't book transactions to). Top level is the Accounting grouping and under that the main financial statement categories like Revenues and Expenses.
YAML
objects:
-
type: category
ref: accounting
data:
name: Accounting
description: Base category used for accounts and account categories for the accounting feature
-
type: category
ref: revenues
data:
name: Revenues
parent: $accounting
description: Revenue accounts
-
type: category
ref: expenses
data:
name: Expenses
parent: $accounting
description: Expense accounts
-
type: category
ref: donations
data:
name: Donations
parent: $revenues
description: Donations received
items:
-
type: category
ref: memberships
data:
name: Memberships
parent: $revenues
description: Membership fees received
-
type: category
ref: travel
data:
name: Travel
parent: $expenses
description: Travel expenses
-
type: category
ref: airfare
data:
name: Air Fare
parent: $travel
description: Air fare ticket cost
Create Counterparty List Tracker
Used for dropdown list in the Transactions tracker
YAML
objects:
-
type: tracker
ref: ctparty_list
data:
name: Counterparties
description: List of counterparty names used in the Accounting feature to identify customers, vendors, members, donors, etc., who have made or received payments.
default_status: open
show: [ creation_date ]
allow: [ comments, attachments ]
-
type: tracker_field
ref: ctparty_name
data:
name: Counterparty
description: Counterparty name
tracker: $ctparty_list
type: text_field
options: 0,20,,,30,y
flags: [ mandatory, list, link, searchable, public ]
order: 10
-
type: tracker_field
ref: ctparty_notes
data:
name: Notes
description: Notes about the counterparty
tracker: $ctparty_list
type: a
options: 1,80,5,200,50,,n
flags: [ list, searchable, public ]
order: 20
Create Transactions Tracker
The central part of the feature where all transactions are recorded.
YAML
objects:
-
type: tracker
ref: transactions
data:
name: Transactions
description: Record financial transactions for your organization, such as receipts, payments and accruals.
default_status: open
show: [ creation_date ]
allow: [ comments, attachments ]
-
type: tracker_field
ref: trans_id
data:
name: ID
description: Auomatic ID number for each entry
tracker: $transactions
type: auto_increment
options: 1
flags: [ mandatory, list, link, searchable, public ]
order: 5
-
type: tracker_field
ref: trans_journal
data:
name: Journal ID
description: Journal entry number. Groups multiple entries together for double-entry accounting.
tracker: $transactions
type: numeric
options: ,7
flags: [ searchable, public ]
order: 10
-
type: tracker_field
ref: trans_date
data:
name: Date
description: Date of transaction
tracker: $transactions
type: calendar
options: d
flags: [ list, searchable, public ]
order: 15
-
type: tracker_field
ref: trans_counterparty
data:
name: Counterparty
description: Counterparty to the transaction
tracker: $transactions
type: item_link
options: $profileobject:ctparty_list$,$profileobject:ctparty_name$
flags: [ mandatory, list, searchable, public ]
order: 20
-
type: tracker_field
ref: trans_amount
data:
name: Amount
description: Amount of transaction
tracker: $transactions
type: currency
options: ,,,,fr_CA,CAD
flags: [ mandatory, list, link, searchable, public ]
order: 25
-
type: tracker_field
ref: trans_desc
data:
name: Description
description: Short description of transaction
tracker: $transactions
type: text_field
options: 0,30,,,100,y
flags: [ list, searchable, public ]
order: 30
-
type: tracker_field
ref: trans_account
data:
name: Account
description: Account to record the transaction in
tracker: $transactions
type: category
options: $profileobject:accounting$,d,,1
flags: [ mandatory, list, searchable, public ]
order: 35
Add Sample Counterparties
YAML
objects:
-
type: tracker_item
ref: abc
data:
tracker: $ctparty_list
status: open
values:
- [ $ctparty_name, "ABC Airline" ]
- [ $ctparty_notes, "Airline used for overseas flights" ]
-
type: tracker_item
ref: xyz
data:
tracker: $ctparty_list
status: open
values:
- [ $ctparty_name, "XYZ Company" ]
- [ $ctparty_notes, "Generous supporter" ]
Create Main Page
Includes the page
Accounting_Main_Page
YAML
instructions: Accounting Main Page
preferences:
enable: [ feature_wiki ]
objects:
-
type: wiki_page
ref: acctg_main_page
data:
name: Accounting Main Page
description: View and edit transactions and counterparties
lang: en
content: wikicontent:Accounting_Main_Page