This page is designed to give information for new HCoop treasurers to learn how to do their jobs. Also see [[https://lists.hcoop.net/pipermail/hcoop-discuss/2010-October/002470.html|Adam's mail]] about treasurer responsibilities. Treasurer permissions which need to be given: * `money` group * `paypal` sub-account with rw access * Add treasurer's google account (recommend new account to keep hcoop stuff separate) to merchant account under `Settings -> Users` <> == Paypal payments from members == When: soon after being notified by paypal of a payment. * [[https://members.hcoop.net/portal/money|portal financial page]] -> lookup address for paypal -> follow steps * Log in to [[http://paypal.com|paypal]] * Click 'details' on the transaction, scroll down. * Log into the [[https://members.hcoop.net/portal/money|money portal]] * Enter the email address listed in paypal into the portal to lookup the member. You need to enter the whole address. * Everything should be filled in: Payment type: `Paypal`, no extra description needed, date should be today, enter '''Net amount''' from the transaction page, `Member` should be filled in properly (double check), hit `Add`. * Return to the paypal overview, select `Mark as shipped` for that transaction. The page will reload, scroll down specify you don't have tracking information, confirm it. Check on the main page that it is marked as shipped. * Archive the transaction, if everything has been taken care of. == Google Checkout payments from members == When: soon after being notified by google checkout of a payment. * Log into the [[http://checkout.google.com/sell|merchant account]] * You'll see the order in the inbox. Click it. * Click "charge order" to initiate the charge. You need to do this before the authorization expiration date (about one week). * Log into the [[https://members.hcoop.net/portal/money|money portal]] * Enter the gmail address listed in google checkout into the portal to lookup the member. You need to enter the whole address. * Payment type: `Google Checkout`, no extra description needed, date will automatically be today, enter the '''net revenue''' from the merchant page (it will be revealed after charging) for "amount", `Member` should be filled in properly (double check), and hit `Add`. * Then, go to the merchant page and hit `shipped` - no info needed, just do "send confirmation". * Go back to the inbox and hit `Archive` on the payment, if everything has been successfully taken care of. == Transfer paypal -> hcoop bank == When: whenever paypal balance gets high, usually every month or so. Leave $50 or so in paypal to cover refunds issued. The maximum amount that can be transferred per month is $500. == Mothly tasks: Dues, balance reminders, freezing == === Charge dues === When: Second to last day of every month (to get done before the cronjobs mailing reminders) * From the `Financial` page on the portal, go to `charge monthly dues`. * Enter today's date * Enter the current monthly dues amount ($7 at this writing) * Hit `Add`. === Check freezing / booting list === === Manual low balance reminders === When: middle of each month (15th) Why: some ISPs block mail from HCoop since it sometimes forwards spam. * There are two relevant pages listing members: * [[https://members.hcoop.net/portal/money?cmd=freezeworthy|Freese-worthy]] - lists people whom, after the next payment cycle, will be within one month of being booted. * [[https://members.hcoop.net/portal/money?cmd=bootworthy|Boot-worthy]] - lists people whom, after the next payment cycle, will be booted. * Remember anyone who had made alternative arrangements for paying (e.g., will close their account and don't need anything else to be said) * See below for mail templates for each category of needs-reminder. The templates also list the payment address to cc. * Click on the member name. Send a mail to all email addresses listed on the profile, including their hcoop address. If they don't have a non-HCoop mail address, go to their archived membership application to get at least one non-hcoop mail. * Send the reminders. {{{ Subject: We're about to freeze your HCoop account... Cc: HCoop Payment Reminder Robot ...because your balance is too negative. If you want to keep your account, please make a payment here ASAP: https://members.hcoop.net/ Details on how much we recommend paying should be found in the last automated low balance reminder e-mail sent to you. If you don't want your account anymore, please don't stay silent; instead open a ticket here, in the "Financial" category: https://bugzilla.hcoop.net/enter_bug.cgi ...and include instructions on what to do with your remaining funds (donate to the co-op or refund via PayPal or Google Checkout). }}} == New member == When: when you get the first payment from a new member. (You may need to prompt new members for payment if it is not remitted soon after the board votes to accept the application.) * You will get a payment notification from the member. When you enter their email address, it will pop up to their member application instead of their usual * From time to time a member gives us the wrong address for paypal / google checkout. Inspect [[https://members.hcoop.net/portal/apps?cmd=approved|approved members waiting for an account]] and attempt to locate the associated user. If there is nothing obvious, contact the payer directly. * '''Ensure that the address is confirmed''' and the name matches that of the applicant. * Select "Add this member" * It will give you a command to run on `fritz`. Run it in a shell (sudo is not needed). /!\ '''Do not proceed with the next step until this command has been run; it will break the user's account.''' * You will be presented with a dialog creating the new user * Leave defaults * Enter initial payment amount, description = "Paypal" or "Google Checkout" * Balances may be funded by another member (e.g. main hcoop member creating an account for a family member, a small organization funded by one account, ...) == Member leaving == When: when emailed from bugzilla * What to do with the balance. * Member donates balance to hcoop: Make two transactions: one reducing the member's balance (negative payment), and one increasing the coop's balance (positive payment), "balance donation upon leaving". * Member requests refund via google checkout: They must have previously made a payment using checkout. Search for one of their past payments, then refund the balance money. Add it to the account ledger - note that there is both the amount subtracted from the account, and a "transaction fee" which you should subtract from the hcoop account if you don't consider it properly. * Member requests refund via paypal: Click 'Send Money', then fill in the member's paypal-associated email address and the balance money. Click the 'Personal' tab and select the 'Payment owed' radio button, and then click 'continue' and follow through on the payment. Add it to the account ledger. * Retire the member: `Admin sidebar` -> `Members` -> `retire` the member. * Run this command on `fritz` to close the account {{{ /afs/hcoop.net/common/etc/scripts/destroy-user USERNAME }}} * Close the bug. If a member replies to something asking if they can be retired, here is a boilerplate you can reply with: {{{ To close your account, please open a ticket in bugzilla in the "financial" category, and including what you'd like to do with the remaining balance (donation to the co-op or refund): https://bugzilla.hcoop.net/enter_bug.cgi This provides some authentication, and a permanent record, for the close request. Thank you, - HCoop Treasurer }}} == Freezing and unfreezing == * Freezing: `/afs/hcoop.net/common/etc/scripts/freeze -a f USERNAME` * Unfreezing: `/afs/hcoop.net/common/etc/scripts/freeze -a u USERNAME` == Unretiring a user == If a delinquent user contacts you with payment after you've retired him in the ledger but before the delete scripts are run: * follow the 'Groups' link in the Admin box * add the user to the 'paying' group * revoke the user from the 'retired' group == Changing passwords == * On fritz (kerberos master), run `sudo kadmin.local -p root/admin`, then run `cpw @HCOOP.NET` * Admin users only: For local passwords, ssh to the machine and just use `passwd `. Right now local passwords are out of date and not used, so you don't actually need to do this. == Reimbursing Expenses == * Enter a payment for the member with the description "reimbursement for ${thing}" * AdamChlipala claims there is no need to enter a negative transaction from the coop balance... might be a source of discrepancies, and makes sense since the system doesn't track liabilities -- ClintonEbadi <> == Filing E-postcard Tax Form == when: yearly, by dd mm * [[http://www.irs.gov/Charities-&-Non-Profits/Annual-Electronic-Filing-Requirement-for-Small-Exempt-Organizations-%E2%80%94-Form-990-N-%28e-Postcard%29|Overview]] * [[http://www.irs.gov/Charities-&-Non-Profits/Information-Needed-to-File-e-Postcard|Specific info required]] * [[http://epostcard.form990.org/|Where to file]]