Design of Remit =============== Remit aims to be a general system for managing MIT student group finances. The name comes from "MIT" and the term "remit": One core piece of functionality is generating the documentation required to make SAFO remit money to students. Core functionality objectives ----------------------------- * Self-service reimbursement request submission --- individual members should be able to request reimbursement through a web interface, providing (almost?) all of the data required to generate a voucher * Allow multi-stage approval processes --- e.g., a committee chair approves a reimbursement request and then the group treasurer approves the request * Integrate with budgeting, for example by notifying the treasurer before approving a request for more money than remains in an account * Allow printing of vouchers * Support basic reporting * Allow import and export in useful formats (e.g., CSV) Basic financial support (finance_core) -------------------------------------- finance_core provides a basic double-entry bookkeeping system. It includes the following core models: * BudgetArea, representing an account * BudgetTerm, representing a financial period * Transaction, representing a transaction * LineItem, representing a line item within a transaction This module uses the Treebeard project (http://docs.tabo.pe/django-treebeard/tip/) to implement a tree of BudgetAreas. Basic request and voucher workflow (vouchers) --------------------------------------------- vouchers provides the core of the request/voucher workflow. It includes the following core models: * ReimbursementRequest, representing a single request * Voucher, representing a single generated voucher This package also currently includes the import_budget script, designed to take a budget spreadsheet and committee list like the UA has and automatically input it into the system. The script should probably be moved out into a new "tools" project or the like.