Finances: Difference between revisions

From All Hands Active Wiki
Jump to navigation Jump to search
→‎Taxes: Updated federal income section
JLDohm (talk | contribs)
→‎Accounting: Updated instructions to reflect Quickbooks
Line 17: Line 17:


=Accounting=
=Accounting=
This is crucial! Accurate accounting lets us file taxes, make projections, track invoices, be transparent about our finances, and generally function. Thankfully Freshbooks makes this much easier.
This is crucial! Accurate accounting lets us file taxes, make projections, track invoices, be transparent about our finances, and generally function.  


You should use Freshbooks to:
==== Getting Started ====
* Mark recurring invoices paid (when you deposit checks)
* Add invoices for cash/check income (donations, classes, memberships) and mark them paid
* Add invoices for membership subscriptions (PayPal) and mark them paid
* Add expenses which can't be automatically imported (PayPal fees)
* Generate monthly reports
* Verify that deposits seen in our bank account match with income recorded in our invoices


The complicated part right now is inspecting PayPal transactions. PayPal takes their fee before sending to our bank account, so we need to examine PayPal activity to accurately account income, and PayPal fees. This generally looks like:
# Log in to quickbooks
# Review that month's PayPal activity, logging payments for membership in the "Membership Subscription" invoice.
# View transactions    ----    Transactions>Bank Transactions
# All other payments are donations, those go in the "Cash Donation" invoice.
# Update transactions.....wait.... reload page
# Log the total sum of PayPal fees as an expense for that month.


== Invoices ==
==== Reconciling membership dues ====
We use recurring invoices for corporate members, and manually create invoices for other income: cash/check income, and PayPal income. These both fluctuate, but still have to be tracked. All income must be tracked with invoices.


=== Membership Subscriptions ===
# Select PayPal Bank. Transactions should be shown starting on the first of the month for the month you are working on. You will be looking at every paypal transaction that has not been categorized or matched with an invoice. Not all of them are dues.
This tracks our income from non-corporate members. Each month should have an invoice for "Membership Subscriptions", with date of issue and due date set to the last day of the month. This tracks how much income we have from members. This includes all membership payment methods; cash, check, and PayPal.
# Click on the description of a transaction. For membership dues, this will just be the person's name. The from/to column is filled in automatically and is probably wrong.
# Invoices that match the dollar amount of the transaction will be displayed. Select the transaction that matches the month that you are working on and click "match." The transaction will disappear. If you don't see a matching transaction, leave it for later and move to the next transaction
# Continue until all of the membership dues transactions for the month have been cleared. This same procedure will apply to a transaction from Bill Mayer for Ann Arbor Spark Contact a board member for more info on a few people who's names in quickbooks don't match their names in paypal (located in room info of finances chat)


When you deposit cash/check membership payments, just add a line for them in the invoice. PayPal membership subscriptions take a little bit more work, because PayPal takes their fee _before_ they dispense the money to our bank account.
==== Adding New Members ====


# Download a CSV report of that month's activity from PayPal
# Check <nowiki>https://docs.google.com/spreadsheets/d/1YKJuqA21dL-cEpRsfS2VPbdQeE1pLxP8Lb4l8YQN8l4/edit?pli=1#gid=292534297</nowiki> to see if new members joined in the month
# Open the CSV report in a spreadsheet program. We'll be using LibreOffice Calc
# Add new members and create invoices for them by going to Sales > Pledges and clicking "Create Pledge"
# Select the first row, then autofilter with *Data > AutoFilter*
# Select a customer. Probably the new member has not been added to quickbooks yet. If not, select "Add new" at the top of the list.
# Only view transactions that are membership payments
## If adding new, input the member's first and last name. Customer display name should then be automatically filled.
#* Type column > no "Auto Sweep", "Donation Payment" or "General Payment"
## Input the email address from the new member form into quickbooks.
#* Make sure a payment is for a membership subscription. Some members may manually pay, and thus not have their payment in the "Subscription Payment" Type
## Skip all other contact information about the member
# Select the "Gross" column. The Sum is automatically calculated and show in the bottom right, next to "Average"
## Contact a board member to find out if the new member has completed their volunteering time. Scroll down to "Customer type" and select the member type from the membership application spreadsheet, or provisional member if they have not completed their first month's volunteering.  
# Add this sum as a line item called "PayPal" for this month
# Select the invoice date as the first of the month that the member joined.
# Click below "Product/Service" to select the item that corresponds to the correct membership type.
# Click Save, then press the x on the top right corner to return to the list of Pledges
# If the month is over, you will need to create another invoice for the next month. Find the pledge, select the arrow on the right hand side and click "duplicate"
# Change the invoice date to the next month, save, and close.
# Click the gear in the upper right to bring up a menu. Under Lists, select "Recurring Transactions." Then select "New" and select "pledge from the dropdown menu.
# Select the member from the customer list, and input their membership type under "product/service."  
# All other defaults should be fine. Click "save template"


=== "Cash" Donations ===
==== Check status of provisional members ====
Each month should have a draft invoice for "Cash Donations", with date of issue and due date set to the last day of the month. Every donation in a given month gets a line in here. This covers one-time events such as Penguicon, and is a bit of a catch-all.
This is important in order to know who is permitted to vote in elections


When we deposit a donation, add a line item for it, such as "Laser Class" or "Donation". Add a payment for the invoice, since you've just deposited it. At the end of the month, no more donations can happen for that month, so it can be considered "done", start one for the next month.
# go to "Customers & Leads". Investigate the status of every member with a customer type of "provisional." If necessary, edit the customer and change their customer type to reflect their current status. You will probably have to contact board members to get this info.
# If provisional members are not paying, and have not come to the space for two months, change their customer type to "former member"


If you notice online donations (directly deposited, FB, Amazon Smile, PayPal, ...), make lines them too. This can look like a deposit in our bank account from Facebook, or directly from an individual. You will need to check PayPal manually, not just look at the bank account.
==== Match Transfers to Bank Account ====
Transfers between accounts are matched so that they are not recorded anywhere as an expense or income


# Download a CSV report of that month's activity from PayPal
# Switch back to Transactions > Bank Transactions and then select Paypal
# Open the CSV report in a spreadsheet program. We'll be using LibreOffice Calc
# Find transactions labeled "Withdrawl to bank account" and click Match
# Select the first row, then autofilter with *Data > AutoFilter*
# Only view transactions that are income that aren't membership payments
#* Type column > no "Auto Sweep" or "Subscription Payment"
#* Make sure a payment is a donation. Some members may manually pay, and thus not have their payment in the "Subscription Payment" Type
# Select the "Gross" column. The Sum is automatically calculated and show in the bottom right, next to "Average"
# Add this sum as a line item called "PayPal" for this month


=== Recurring Invoices (Corporate Memberships) ===
==== Other Paypal Transactions ====
These are currently only for corporate memberships. They get the invoice automatically sent, and reminders if they're late on payment. When we get paid for an invoice, we mark it paid in Freshbooks. All that's necessary is updating these recurring invoices when corporate memberships change.


Billing happens differently for our corporate members. This is important because the accounting will be different for them:
# Open the outstanding paypal transactions in a new tab. These should all be either expenses or payments for something other than membership. Note down or print these transactions for the current month.
* Nostrum pays by check. Get it in the mail, deposit it. If the amount changes, change the Freshbooks invoice.
# For each inbound transaction, create an invoice by going to Sales > Pledges and using the create pledge button.
* Spark is charged by us via Forte. We get the money automatically, and the processing fee shows up as an expense in our bank account (and is automatically imported). If the amount changes, change both the Freshbooks invoice, and the Forte recurring charge.
# If the transaction is small, and the customer is not already in quickbooks, use the customer "Unknown" for this transaction.
# Select an appropriate product or service for the transaction. More information may be available by opening the paypal transaction (open the transaction in the Transactions window and find the paypal link at the bottom).  You might also match transactions by connecting events on our meetup page (<nowiki>https://www.meetup.com/AllHandsActive/events/</nowiki>) to the date of a transaction
# Make sure that the value of the invoice matches the Gross value of the transaction you are working on, then save the invoice.
# Go back to the Transactions list, select PayPal, and match all of the outstanding transactions to the invoices you created
# Now only expenses should remain for the month you are working on.
# Open each expense and select the correct category. Some may have a lightning bolt next to them, and a category preselected. The lightning bolt indicates that a rule has been applied, so the preselected category is probably correct. Use your judgement on categories. For purchases of tools/upgrades that are in the normal budget, use the "small tools and equipment" category. For special purchases, use the "Tool Upgrades/purchases out of budget". If a purchase is funded by a grant, select the class that correlates to the grant to keep track of the purchase. when you are done, click confirm
# No transactions should remain in the paypal tab should remain, for the month you are working on.


== Expenses ==
==== Checking accounts ====
Expenses are automatically imported from our bank account, but there's still some work we need to do.
Categorize expenses and create invoices using the same methods as the paypal account.
* Review imported expenses for duplicates, and make sure they're properly categorized (client/type)
* Add expenses which must be manually created
** PayPal processing fees


Here's one way to calculate the PayPal expenses for a month. This must be done because PayPal takes their fees out before sending to our bank account, so we don't automatically import that expense.
If there is a deposit to the bank account, either cash or checks, it will probably be listed as "DEPOSIT MEMO DEPOSIT" and needs to be dealt with differently from other transactions.  


# Download a CSV report of that month's activity from PayPal
# Talk to a board member to get information about the deposit
# Open the CSV report in a spreadsheet program. We'll be using LibreOffice Calc
# Subtract out anything from the deposit that already has an invoice (dues payments, for instance).
# Select the first row, then autofilter with *Data > AutoFilter*
# Subtract out and make invoices for any transactions that should be tracked to a specific person/organization.
# Only view transactions that have fees
# Make an invoice from "Unknown" for the balance of the deposit
#* Type column > no "Auto Sweep"
# On the Transactions page, select the deposit, and switch the radio button to "match"
# Select the "Fee" column. The Sum is automatically calculated and show in the bottom right, next to "Average"
# Since no single invoice matches the dollar value of the deposit, you can now match the deposit to multiple invoices. Input the portion of the deposit that goes to each invoice in the right hand column
# Add this sum as a PayPal Fee for this month
# scroll to the bottom and check that the difference line reads $0.00. This means that you have accounted for all of the deposit. You may now click "Match"
#* Set the Vendor to PayPal
#* Set the category as "Bank Fees"
#* Enter the total


== Balancing the Books ==
==== Cleaning Up ====
1: Check the two savings accounts to confirm any interest payments or transfers.


Download a CSV of activity on our bank account for that month. We want to make sure that all money going in and out is accounted for.
==== Reporting ====


# Download a CSV report of that month's activity from the bank
# Select "Reports" on the left hand menu. The important reports are under favorites. Run an "Accounts receivable aging" report to find outstanding invoices.
# Open it in LibreOffice Calc
# For all invoices that are not in the CURRENT column, investigate them. Some invoices have not been paid due to mistakes, some automatic invoices are generated for former members, or other unique situations may arise.
# Log in to Freshbooks to review invoices/expenses
## For former members, delete any invoices that should not have been generated, and delete the automatic recurring invoice. The existing invoices can be deleted on the Sales > Pledges page, and the recurring invoices can be deleted through the gear on the upper right corner, then Lists > recurring transactions. Members who have left should also have their status changed to former member
# Go down the transactions making sure credits are accounted for in one of that month's invoices that are marked paid, and debits are accounted for in an expense
# Both "Statement of Financial Position" and "Statement of Activity by Month" should be run and saved.  
#* Expenses should be automatic
## After you run a report, scroll up and change the report period to end at the end of the month you are accounting. Information after that date is not meaningful.
# If there's a transaction in the bank account that isn't accounted for in Freshbooks, start doing detective work to figure out what's going on!
## Click "run report" and the report will update.  
#* Sometimes there are small discrepancies because transactions only happen on business days. eg: PayPal payments at the end of the month.
## Click the export icon at the top right of the report, and select "export to PDF"
 
## The default settings are fine. Click "Save as PDF" and get a board member to put it in the correct folder under finances in google drive.
= Reports =
## Repeat for the other report
 
# Update the Monthly Report <nowiki>https://docs.google.com/spreadsheets/d/1fCZ2j8G5ZXTxQlR_fnR_BoUldrVSsgBDnbztHpAYgGw/edit#gid=1222700446</nowiki>
At the start of each month, we should make sure the previous month's accounting is completed, and make reports on it for the board/members/public. This is easily done through Freshbooks. Do this before the board meeting, so that any financial talk that happens can be informed.
## To get a members list, view the list of customers in quickbooks and export it as an excel sheet. You may then sort by the customer type column and get the number of members of each type
 
## Fill in the cash on hand using the Statement of Financial Position. You may run the Statement of Activity by Class report to determine changes in reserved funds
# Log in to Freshbooks
## Run the Budget progress custom report to get values for the various budgets
# Navigate to Reports
## use the helpful links worksheet to get numbers for the attendance log and get the number of classes taught from the all hands active meetup
# Make a Profit & Loss report for only the last calendar month
#* Set a custom time range to the previous month
# Save a presentable copy. I do this by printing to a file
# Upload the file to our public financial reports folder for the corresponding year/month
#* for example: https://drive.google.com/drive/u/0/folders/1RT1zA5KpaauTVGKAqKh0wKYMyCJbjdoE
#* Make sure the sharing is set to "Anyone with the link can view"
# Do the same for an Expense report
# Do the same for any other reports we've decided to do.
# Send and email to the member's list with a summary of the reports, notable activity, and important take-aways, and links to the reports.


= Taxes =
= Taxes =

Revision as of 12:15, 13 March 2024


Notice
Notice
OUTDATED!:
The content of this page is outdated.
If you have checked or updated this page and found the content to be suitable, please remove this notice.

This page should serve to document how we keep track of finances at AHA. This is necessary for running AHA.

This is the responsibility of the Finances committee, and the Treasurer.

Responsibilities

So you want to help? You are awesome! Here's the tasks and responsibilities, and how to do them. These must happen for a happy, healthy hackerspace. Some are monthly, yearly, weekly, or as needed.

  • Deposit cash/checks into our bank account
  • Keep Freshbooks accounting accurate
  • Make sure all our bills are paid
  • Make monthly reports for the board/members/public
  • Make financial projections, so we can properly plan/budget
  • Handle all financial filings (taxes)
  • Keep this documentation accurate and helpful!

Accounting

This is crucial! Accurate accounting lets us file taxes, make projections, track invoices, be transparent about our finances, and generally function.

Getting Started

  1. Log in to quickbooks
  2. View transactions ---- Transactions>Bank Transactions
  3. Update transactions.....wait.... reload page

Reconciling membership dues

  1. Select PayPal Bank. Transactions should be shown starting on the first of the month for the month you are working on. You will be looking at every paypal transaction that has not been categorized or matched with an invoice. Not all of them are dues.
  2. Click on the description of a transaction. For membership dues, this will just be the person's name. The from/to column is filled in automatically and is probably wrong.
  3. Invoices that match the dollar amount of the transaction will be displayed. Select the transaction that matches the month that you are working on and click "match." The transaction will disappear. If you don't see a matching transaction, leave it for later and move to the next transaction
  4. Continue until all of the membership dues transactions for the month have been cleared. This same procedure will apply to a transaction from Bill Mayer for Ann Arbor Spark Contact a board member for more info on a few people who's names in quickbooks don't match their names in paypal (located in room info of finances chat)

Adding New Members

  1. Check https://docs.google.com/spreadsheets/d/1YKJuqA21dL-cEpRsfS2VPbdQeE1pLxP8Lb4l8YQN8l4/edit?pli=1#gid=292534297 to see if new members joined in the month
  2. Add new members and create invoices for them by going to Sales > Pledges and clicking "Create Pledge"
  3. Select a customer. Probably the new member has not been added to quickbooks yet. If not, select "Add new" at the top of the list.
    1. If adding new, input the member's first and last name. Customer display name should then be automatically filled.
    2. Input the email address from the new member form into quickbooks.
    3. Skip all other contact information about the member
    4. Contact a board member to find out if the new member has completed their volunteering time. Scroll down to "Customer type" and select the member type from the membership application spreadsheet, or provisional member if they have not completed their first month's volunteering.
  4. Select the invoice date as the first of the month that the member joined.
  5. Click below "Product/Service" to select the item that corresponds to the correct membership type.
  6. Click Save, then press the x on the top right corner to return to the list of Pledges
  7. If the month is over, you will need to create another invoice for the next month. Find the pledge, select the arrow on the right hand side and click "duplicate"
  8. Change the invoice date to the next month, save, and close.
  9. Click the gear in the upper right to bring up a menu. Under Lists, select "Recurring Transactions." Then select "New" and select "pledge from the dropdown menu.
  10. Select the member from the customer list, and input their membership type under "product/service."
  11. All other defaults should be fine. Click "save template"

Check status of provisional members

This is important in order to know who is permitted to vote in elections

  1. go to "Customers & Leads". Investigate the status of every member with a customer type of "provisional." If necessary, edit the customer and change their customer type to reflect their current status. You will probably have to contact board members to get this info.
  2. If provisional members are not paying, and have not come to the space for two months, change their customer type to "former member"

Match Transfers to Bank Account

Transfers between accounts are matched so that they are not recorded anywhere as an expense or income

  1. Switch back to Transactions > Bank Transactions and then select Paypal
  2. Find transactions labeled "Withdrawl to bank account" and click Match

Other Paypal Transactions

  1. Open the outstanding paypal transactions in a new tab. These should all be either expenses or payments for something other than membership. Note down or print these transactions for the current month.
  2. For each inbound transaction, create an invoice by going to Sales > Pledges and using the create pledge button.
  3. If the transaction is small, and the customer is not already in quickbooks, use the customer "Unknown" for this transaction.
  4. Select an appropriate product or service for the transaction. More information may be available by opening the paypal transaction (open the transaction in the Transactions window and find the paypal link at the bottom). You might also match transactions by connecting events on our meetup page (https://www.meetup.com/AllHandsActive/events/) to the date of a transaction
  5. Make sure that the value of the invoice matches the Gross value of the transaction you are working on, then save the invoice.
  6. Go back to the Transactions list, select PayPal, and match all of the outstanding transactions to the invoices you created
  7. Now only expenses should remain for the month you are working on.
  8. Open each expense and select the correct category. Some may have a lightning bolt next to them, and a category preselected. The lightning bolt indicates that a rule has been applied, so the preselected category is probably correct. Use your judgement on categories. For purchases of tools/upgrades that are in the normal budget, use the "small tools and equipment" category. For special purchases, use the "Tool Upgrades/purchases out of budget". If a purchase is funded by a grant, select the class that correlates to the grant to keep track of the purchase. when you are done, click confirm
  9. No transactions should remain in the paypal tab should remain, for the month you are working on.

Checking accounts

Categorize expenses and create invoices using the same methods as the paypal account.

If there is a deposit to the bank account, either cash or checks, it will probably be listed as "DEPOSIT MEMO DEPOSIT" and needs to be dealt with differently from other transactions.

  1. Talk to a board member to get information about the deposit
  2. Subtract out anything from the deposit that already has an invoice (dues payments, for instance).
  3. Subtract out and make invoices for any transactions that should be tracked to a specific person/organization.
  4. Make an invoice from "Unknown" for the balance of the deposit
  5. On the Transactions page, select the deposit, and switch the radio button to "match"
  6. Since no single invoice matches the dollar value of the deposit, you can now match the deposit to multiple invoices. Input the portion of the deposit that goes to each invoice in the right hand column
  7. scroll to the bottom and check that the difference line reads $0.00. This means that you have accounted for all of the deposit. You may now click "Match"

Cleaning Up

1: Check the two savings accounts to confirm any interest payments or transfers.

Reporting

  1. Select "Reports" on the left hand menu. The important reports are under favorites. Run an "Accounts receivable aging" report to find outstanding invoices.
  2. For all invoices that are not in the CURRENT column, investigate them. Some invoices have not been paid due to mistakes, some automatic invoices are generated for former members, or other unique situations may arise.
    1. For former members, delete any invoices that should not have been generated, and delete the automatic recurring invoice. The existing invoices can be deleted on the Sales > Pledges page, and the recurring invoices can be deleted through the gear on the upper right corner, then Lists > recurring transactions. Members who have left should also have their status changed to former member
  3. Both "Statement of Financial Position" and "Statement of Activity by Month" should be run and saved.
    1. After you run a report, scroll up and change the report period to end at the end of the month you are accounting. Information after that date is not meaningful.
    2. Click "run report" and the report will update.
    3. Click the export icon at the top right of the report, and select "export to PDF"
    4. The default settings are fine. Click "Save as PDF" and get a board member to put it in the correct folder under finances in google drive.
    5. Repeat for the other report
  4. Update the Monthly Report https://docs.google.com/spreadsheets/d/1fCZ2j8G5ZXTxQlR_fnR_BoUldrVSsgBDnbztHpAYgGw/edit#gid=1222700446
    1. To get a members list, view the list of customers in quickbooks and export it as an excel sheet. You may then sort by the customer type column and get the number of members of each type
    2. Fill in the cash on hand using the Statement of Financial Position. You may run the Statement of Activity by Class report to determine changes in reserved funds
    3. Run the Budget progress custom report to get values for the various budgets
    4. use the helpful links worksheet to get numbers for the attendance log and get the number of classes taught from the all hands active meetup

Taxes

We currently need to file two things: income, and sales tax. Failing to file will get us fined, and is basically just burning money. File the taxes!!!:

Federal Income (form 990N)

If we have gross receipts less than $50,000 in the tax year, the form is basically "I attest that I made less than $50,000". Simple! If we make more than that (hasn't happened recently) then it gets more complicated (time to talk with the accountant). Use our records in Quickbooks to get the numbers for the paperwork.

Form 990-N is due every year by the 15th day of the 5th month after the close of your tax year. For us, this is by May 15th!

Note: gross receipts basically means ANY money we bring in. No deductions, no expenses. This does include grants, but does not include loans. There is a more detailed description on the IRS site.

  1. Go to https://sa.www4.irs.gov/epostcard/ and login using the info from VaultWarden
  2. Click on MANAGE E-POSTCARD PROFILE
  3. Make sure our EIN is correct, and click on CREATE NEW FILING
  4. Select the proper EIN (there should be only one)
  5. Answer that we haven't gone out of business (I hope!) and that we normally have gross receipts less than $50,000.
  6. Skip the DBA names on the next form
  7. Enter in our organization details (be sure to use official postal addresses from https://www.usps.com/)
  8. For the principal officer, enter the name of the current treasurer, and our business info again (not their personal address)
  9. Submit the filing! You're done!

Sales Tax (MI)

We are registered with the State of Michigan as an entity which has sales, and thus collects sales tax. This is from back when we sold snacks, pop, and things like arduinos. Sales tax is for the individual, thus we have to collect it, and pay it to the state of Michigan. *We have to file even if we have $0 in sales*. Failing to file gets us charged late fees, and sent letters from the State claiming we owe them a bunch of money. That sucks.

We currently have no sales, but if we did, they should be classified as such in Freshbooks, with the sales tax collected recorded. This way we know what to pay the state at the end of the year.

If we decide to never have sales, we can file to remove our classification as an entity having sales, meaning we no longer have to file sales tax reports. It's probably best to just file a simple return annually and retain the ability to sell stuff.

TODO: link to tax forms, deadline info.

Budgeting

Doing all this, you should have a clear view of how much money we can count on receiving each month, and how this stacks up with our expenses. Use this to recommend courses of action for making more money, cutting costs, investing in tools, etc. This is also important for projecting our near-future finances for planning purposes. For example, are we quickly running out of money in our emergency fund? Or are we banking enough to invest in new equipment in X months?

Some expenses are fixed or necessary (like rent), while others may fluctuate, like buying supplies. Similarly, some income is relatively reliable (memberships), while some fluctuates (classes, one-off events). For a conservative projection erring on the side of caution, include stable things like rent, utilities, and memberships, insurance payments. It's also worth estimating incidental expenses, since those seem to always come up. Don't count on classes or donations, since it's possible we'll have a bust month, and won't want that to ruin our budgeting.

This is also important info for fundraising, because it'll give us clear goals. Are we fundraising to cover operating expenses, or are we able to fundraise to buy more equipment, or run a specific project?