Billing properties

From No3wiki

Table of contents

About billing

PMS must support collecting billing information so that it is useful for billing as well. There's no need for a build-in invoice printing; rather, the system should provide as much support as needed to enable billing using external means. Since billing customs vary from country to country, building a general purpose billing inside the PMS is not feasible.

Notes:

  • Pixtur:This is very true, BUT it would be very useful indeed. If streber already collects enough information for the invoices, providing a way to print this would be not much effort. Since this would be useful for my own work, I will think about some kind of module, to convert the invoiced into pdf-format.
  • Pixtur:Expenses and efforts could have a field to a individual invoices so we can distguished already "billed" efforts.


Billing information

For billing, we need to store the following types of information:

  • Hourly rates for each employee participating in a task; The rates are person, project, and task specific; This information is available to project manager or superviser only.
  • Price for a task, or a project; in hours, money, or both.
  • Expenses for a project;
  • A per client and per project setting for rounding hours spent on tasks; The default would be to do no rounding: Options for this are: round up, no rounding, and round down. This allows billing to be based on full hours even if employees report fractional hours.
  • A project inherits automatically the rounding settings from the client; but the project manager can change them.
  • Currency symbol; This is an installation wide setting.


Hourly rates

Each project member tracks his or her time spend on the tasks. The project manager has set a price (hourly rate) for each person, task, or project. These rates are not shown to the members.

questions:

  • Pixtur: what about "rate per day"?
  • Pixtur: What about working late or on weekend?
  • Pixtur: If we change a projectperson's rate (say from 30€/h to 45€/h) does this affect the cost of already booked efforts? (I think it shouldn't, but that requires efforts to have something like "expenses" field.).
  • Pixtur: I think defining rates for tasks requires a new JoinTable "taskPersonRate"? This makes it even more important that Projects should be derived from Tasks


Expenses

There must be a way to track expenses associated with a project. A description and category is chosen for expenses, the date when the expense was realized, and who spent the money.

Categories could be, for example, "travel expenses", "material expenses", "foreign consultants", and so forth.

Project and task prices

The project manager can set a price for the whole project, or each task inside a project. For nested tasks, the price is shared.

Project and task prices and be in hours, money, or both. Thus a salesperson can sell a project for certain amount of money, which the project manager can translate to working hours and profit, and put a price tag of "n" hours for the whole project.

Project and task prices for the budget of the project. The manager can track wether or not the expenses are within the budget.

For more information, see Budgeting projects & tasks.

Rounding hours

If the employees track fractional working hours to tasks, but billing is based on full hours, there must be an option to round task hours for billing. Rounding the total of fractional tasks is not the same as rounding each individual task before they're added together.

If rounding is set, reports used for billing must round the hours accordingly. Also, if the client pages display hours spent on a task, they must be rounded accordingly too.

If rounding is not set (the default), no rounding is performed.

Currency symbol

Currency symbol is used solely for distinquishing monetary values from hours or other numeric measures.

Billing reports

Billing needs reports to be useful. There's a need for per client and/or per project report for a defined time span. The usual situation is to get a report for each calendar month, but other practices exist. Some may do weekly billing, while others do a per project billing where the dates aren't tied to calendar.

Project manager must be able to group information in the billing report by one of the following factors, or a combination of some or all of the factors:

  • Person;
  • Task;
  • Project;
  • Other expenses;