GnuCash
RoboTeam Twente uses GnuCash — free, open-source accounting software — to keep track of the team's finances. This document walks through setting up the account structure, tax tables, and the day-to-day transactions you'll be entering.
Starting Up
When initializing a new GnuCash document, click Next until you reach the New Book Options section. Under Business, fill in the RTT company details. The Company ID field is a convenient place to store the team's VAT number, in case you ever need to look it up.
Any account with sub-accounts is a placeholder account — placeholder accounts can't be edited directly, only through their sub-accounts. This keeps the overall structure organized and prevents transactions from accidentally being logged at the wrong level.
Account Structure
GnuCash organizes everything into a small number of top-level accounts.
Assets
The Assets account contains everything RoboTeam Twente owns — equipment, the robots, the bank account balance, and any budget held at partner companies. This can also include store credit held at partners such as RS or Würth.
Store credit is worth tracking carefully even though it can be a hassle — these balances don't always clearly show what's been spent or how much remains, and partners aren't always responsive about it. It's still important to keep tabs on, since RS in particular sends an invoice for any spending that goes beyond the store credit budget.
Equity
Equity is defined as assets minus liabilities, and should always be zero or higher. In previous years, the Equity account has only been used to set the opening balances of other accounts, so it typically has a single sub-account: Opening Balances.
Expenses
The Expenses account covers all outgoing costs and is fairly self-explanatory — set up sub-accounts per spending category as needed.
Income
The Income account covers everything coming in: partner contributions, event income, crowdfunding, and similar sources.
Setting Up Tax Tables
In addition to the four accounts above, create three more top-level accounts:
Account | Type | Purpose |
|---|---|---|
Liabilities | Liability | Tracks VAT on expenses and income |
Receivable | A/Receivable | Tracks unpaid invoices sent out by RTT |
Payable | A/Payable | Tracks unpaid bills owed by RTT |
To set up tax tables, go to Business → Sales Tax Table. You'll want four tax tables in total:
- 21% — Purchases
- 9% — Purchases
- 21% — Sales
- 9% — Sales
Using GnuCash
Transaction Fields
Every transaction has the same set of fields to fill in:
- Date — the date the invoice was received, or the date the declaration item was purchased
- Number — the invoice or declaration number
- Description — a description of the item(s) purchased
- Transfer — which account the money is moving to/from
- Increase/Decrease — labeled differently depending on the account, but always represents an increase or decrease in that account's value
- Balance — the running cumulative total
0% VAT
Some transactions carry 0% VAT — bank account costs are a typical example. Rather than creating a dedicated 0% tax table, just leave the tax field blank / set to 0% directly on the transaction.
Receiving an Invoice
If the transaction involves a company you haven't logged before, you'll first need to create a new vendor:
- Go to Business → Vendor → New Vendor…
- Fill in the vendor's details.
- Under Payment Information, assign the appropriate tax table.
Once the vendor exists (or if you're using an existing one), create a new bill:
- Go to Business → Vendor → New Bill…
- The Bill ID field should contain the invoice number.
- Fill in the transaction table the same way you would for a 0% taxable purchase.
- Post the bill, making sure the transaction description is filled in.
Once the bill has been paid, mark it as paid in GnuCash as well. Make sure Num contains the invoice number and that the transfer account is correct. It's also good practice to update the transaction's description in the Payable account to something more descriptive than the vendor name, since GnuCash sets it to the vendor name by default.
Sending an Invoice
When RTT sends out an invoice, it also needs to be logged in GnuCash.
- Create a new customer: Business → Customer → New Customer… — this works the same as creating a vendor, but uses the sales tax tables instead of the purchase tax tables.
- Create the invoice: Business → Customer → New Invoice…
- Fill in the transaction table the same way you would for a bill (discount columns can be left empty).
- When posting the invoice, set the due date to 30 days out, and make sure the description is filled in.
Once payment is received, log it via Business → Customer → Process Payment, making sure to include the invoice number in the Num field. Once done, the Receivable account balance for that invoice should return to 0.
Making a Budget
To start a new budget: Actions → Budget → New Budget.
Budgets can be tracked by month, semester, or quarter — previous years have used a quarterly split. This is configured under Options: for a quarterly budget, set "Every 3 months" with "Number of periods: 4."
At the start of the year, most accounts will still be empty and won't show up in the budget view by default. To show them: View → Filter By… → Other, then enable "Show hidden accounts" and "Show unused accounts."
Once all accounts are visible, you can fill in the budgeted amount per account, per quarter.
No comments to display
No comments to display