The document discusses challenges with project invoicing and how the Project Invoicing software from Project-Open addresses them. It allows capturing both formal documentation like change requests as well as informal negotiation results. It provides integrated timesheet management and flexible invoicing wizards to generate invoices based on the captured project information. This helps ensure more billable hours are invoiced, reduces administrative overhead, and helps manage the profitability of projects and customers.
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
]project-open[ Timesheet Project Invoicing
1. ]project-open[
Open Source Enterprise Business Application
Project Invoicing
Version: 0.8
Date: October 31th, 2013
Author: Frank Bergmann
frank.bergmann@project-open.com
2. Benefits
•
•
•
•
Free and open-source, SaaS available
Reduce administrative overhead
Don’t loose invoiceable hours anymore
Separate between billable and nonbillable time
• Integrated with timesheet management,
budget management, vacation
management and project tracking
3. Features
•
•
•
•
•
•
•
•
•
Elegant invoices
Invoice templates customizable by the user
Management of customer data, customer contact and multiple billing
addresses per customer
Project billing from very simple to very complex
– Ad-hoc invoicing – write your invoice in 20 seconds
– Billing time and material projects
– Billing complex projects – warranty, discounts and non-billable time
Billing wizard for billing logged hours
Price lists per customer or default global price list. Prices per “material”
or service type
Multi currency. Automatic currency updates available (add-on)
Powerful financial reporting, including data-warehouse (add-on
module)
Configurable billing modes
– Material per task or per logged hour
– Force billing on sub-projects
4. Issues Addressed
•
•
•
•
•
•
•
•
•
•
•
Many different types of contracts
Difficult distinction between billable and non-billable hours
Contracts with many different parameters
Difficulty to assign delivered hours to specific projects
Difficulty to assign hours to multiple concurrent projects of a single
customer
Re-assignment of delivered services between projects (for example:
product development vs. customer server)
Difficulty to distinguish between service hours delivered as part of a fixedprice contract and additional billable hours
Informal negotiations during the project execution lead to a complex
situation with respect to billable and non billable project item. The results
from informal negotiations can be captured in the KM module and kept
together with the project.
Difficulty in the financial department to determine services to be “activated”
in the balance sheet, for example for product development vs. customer
service
Difficulty to capture the results of informal negotiations for the invoicing
process
The informal negotiations make it very difficult for a billing department to
write an invoice
5. Lifecycle
• Contract design
– List of deliverables
– Project phases & milestones
– Billing conditions and parameters
• Project Execution
–
–
–
–
Advance on defined deliverables
Change requests modify the list of deliverables
Change requests modify the effort to produce deliverables
Project Management represents an ongoing negotiation process
between all project stakeholders. Negotiation results are documented
together with the project.
• Project Closing
– Sign-off of individual deliverables
– Billing of individual project phases or milestones
6. Challenges
•
•
•
•
•
•
•
•
Service organizations need to provide flexible responses to customer requirements
The scope and contents of projects may change during the project lifecycle
Projects may contain fixed-cost as well as variable cost phases.
It is difficult to distinguish billable hours from non-billable sales and warranty parts.
Senior management may lose considerable time resolving this type of questions.
The customer may be “flexibly” mixing planned with already delivered work to be
invoice
Difficult distinction between billable and non-billable time.
Partial invoicing at the end of project phases or milestones
Invoicing may depend on a lot of fuzzy information from different sources:
–
–
–
–
Verbal agreements between sales and the customer
Change requests incurred during the project execution
Timesheet information about planned, billable and logged hours
External costs of material and freelance project members
•
•
•
•
•
The initial quote and its rules
Verbal agreements between sales and the customer
Change requests incurred during the project execution
Timesheet information about planned, billable and logged hours
External costs of material and freelance project members
7. Complex Contract Structure
Service companies frequently have to deal
with complex contract structures. Variables:
• Fixed-price vs. variable-price (based on time and
material) or a mix of both.
• The definition of “billable time” can be complex:
–
–
–
–
During sales: Presales time vs. consulting time
In the last project phase: Features vs. corrections.
During support: Paid support time vs. warranty time
During support: Issue fixing vs. user training
• Contracts changes during the project:
– Formal changes as “Change request”
– Informal changes as part of negotiations between PM, key
account and customer.
8. Configuration & Parameters
•
•
•
•
•
Log on super-projects?
Invoice from scratch?
Logging hours with budget control?
Budget-control switched on?
Material per task or material per hour?
9. Overview
We will guide you through ]po[ invoicing based
on 4 real-world cases:
• “My First Invoice” – Invoicing a simple fixed
price contract
• “Fractioned Invoicing” – Writing more then one
invoice per project
• “Warranty and Presales” – Dealing with nonbillable time
• “Time and Material” – Invoicing timesheet
hours
10. My First Invoice
The Case:
• You are an employee of “Tigerpond Inc.”.
Tigerpond offers consulting and IT services.
• We have just received an order from “Big
Customer” for 3 days of training services.
Actions:
• Create a project so that you can log hours
and other costs
• Choose “Create Invoice from Scratch” to
create an invoice manually
11. Overview
• There are different types of projects:
– Fixed Price
– Time & Material
– Mixed
– Recurring (Service Contracts, …)
12. Simple Fixed Price Invoicing
• Create a Project
• Write an Invoice
• Mark the invoice as paid
13. Time & Material based Invoicing
• Create a Project
• Define a number of tasks
– Estimated, Billable and Logged Hours
– Material to describe the type of service
• Log some hours on the project
• Use the “New Customer Invoice from
Timesheet Tasks” wizard to create an
invoice
14. Understanding Materials
• “Material” is a type of service
• Material is the link into the customer’s
price list
• Billable vs. non-billable materials
15. Understanding Timesheet Tasks
• Tasks describe an activity of one or
more persons
• Task Characteristics
– Estimated, Billable and Logged Hours
– Material to describe the type of service
• Billable/Non-Billable time is per Task
and not per logged hours. Each project
may have a task for unbillable time.
16. Understanding the Price List
• The price list maps materials to prices
• There is a default price list defined in the
“Internal” company
• Specific price lists can be defined per
customer
• UoM is usually “hour” here. The other
UoMs are used for simple invoicing and
may be used in future extensions of the
system.
17. Tracking the Project Progress
• Number of logged hours per task vs.
• Task progress (not the same!)
• Compare task progress with time logged
for early indications of the project being
late
18. Invoicing Monthly Activities
• UoM: Month
• Modelling: One project with multiple subprojects
• This way, the financials will accumulate
• Define this project as an “SLA” to enable
use for the helpdesk module
19. Project Quoting using ]po[
• Create a schedule via GanttProject or
OpenProj
• Define the materials in ]po[
• Use the Wizard to create a quote
21. Summary
The Problem
•
•
•
Project invoicing frequently represents an important challenge
Not all billable hours are captured or invoiced
High workload for senior management to manage invoicing
Why?
•
•
•
•
Project management is a continuous negotiation process
Project scope changes during the project execution
Negotiation results may documented informally or not documented at all
Bug vs. Feature: It can be very challenging to decide whether a service is
billable (feature/ extension) or non billable (bug/ warranty)
The Solution
•
•
•
•
]po[ allows to capture informal negotiation results
]po[ allows to model complex projects and contracts
]po[ provides integrated timesheet management
]po[ flexible invoicing wizards allow to create invoices based on captured
information
22. ]project-open[ Billing Benefits
• Increases the number of billable hours
• Reduces the administrative overhead
• Reduces the senior management’s time for
invoicing
• Shortens the time from project to cash
• Provides accurate profit & loss per project and
customer by integration with project controlling
• Integration with travel expenses management
allows to distinguish between billable and nonbillable travel costs.
23. ]project-open[ is Open-Source Software
•
•
•
•
Cost efficient
Flexible and adaptable
Low up-front risk
No vendor lock-in
25. Sample Scenario
Costs
Revenues
Project Plan
Sales
1
1st phase
Initial
Quote
2nd Phase
Support
External
Provider
Bills
Travel
Expenses
2
Billable
Hours
1st
Partial
Invoice
Project Plan
Sales
1st phase
Change
Request
2nd Phase
Support
3
2nd
Invoice
External
Provider
Bills
Travel
Expenses
Billable
Hours
1. Provider and customer agree to an
initial project plan with a number of
phases and deliverables
2. After finishing the first project phase,
provider bills customer for part of the
work. However:
• The project team has already started
tasks of the next phase
• Not all deliverable of the 1st phase have
been finished
• Additional deliverables have been
added to both the 1st and 2nd phase.
3. A 2nd invoice is based on a modified
project plan. It needs to include the
hours that have been delivered
before issuing the 1st invoice.
26. Sample Scenario Schema
The Customer
Specs
Quote
Order
eMail
eMail
eMail
The Project
Sales / Planning
Execution
Invoice
Change
Request
Milestone
2nd Phase
Sign-Off
Support
Purchase
Order
Timesheet Logging
by Employees
Travel
Expen.
Invoice
External Providers
27. Supported Contract Types Overview
“Ideal” Contract Types
•
Fixed price
•
Fixed price with partial/multiple invoicing
•
•
•
Customer and provider close a fixed-price project.
The fixed price project consists of several independently invoiced phases.
Time and material
Provider bills customer for time and external costs, plus a defined margin.
Periodic
Recurring invoices for support contracts etc.
"Many Small Projects“
Invoicing of independent helpdesk tickets or small but repeating projects such as translation.
“Real-World” Contract Types
•
Fixed price + warranty
•
Fixed price + change requests
•
Provider needs to provide additional service to fix errors or mistakes
A fixed price contract forms the base of the project, but additional elements are added during
the project during “change requests” or when correcting deficiencies.
Maintenance contract + extra time
Customer and provider have agreed on a monthly maintenance fee, but extra services exceed
the covered amount of services and have to be billed in addition
29. “Fixed Price” Without Project Schedule
]po[ can create invoice documents “manually”:
1.
Go to the your project’s financial page and
1
click on “New Customer Invoice from Scratch”
2.
You get an empty invoice form where you can
enter your project details
3.
A template renders your invoice ready to be
sent to the customer
2
3
30. Fixed Price with Project Schedule
1.
2.
3.
4.
5.
The PM creates a project schedule using
GanttProject
The PM can add the information on
“estimated” and “billable” hours for each task.
The PM starts the wizard “New Customer
Invoice from Timesheet Tasks”
The Invoicing Wizard allows to select
“planned” or “billable” units to create the…
…invoice
1
2
3
5
4
31. “Time and Material” Contracts
1.
2.
“New Customer Invoice from Timesheet
Tasks” lets you create an invoice based
on a project schedule
From the schedule you can select
individual
1
2
32. Mixed “Fixed Prices” with “Time and Material”
It is best practice for “Time and Material”
contracts to specify project tasks
according to the billing type of different
tasks.
Here is an example:
• Sales and Presales:
Not billable
•
Implementation and training:
•
Travel Time:
•
Warranty Support:
•
Paid Support:
Fully billable
Billable 50% of the time, with a maximum of
8hours/journey
Clear product deficiencies are not billable
Product enhancements are fully billable
33. “Time and Material” Contracts
1.
2.
“New Customer Invoice from Timesheet
Tasks” lets you create an invoice based
on a project schedule
From the schedule you can select
individual
1
2
34. “Time and Material” Contracts
• This billing mode allows you
to
• Planned Units
• Billable Units
• All Reported Units
• Reported Units in Interval
• All Unbilled Units
1
2
36. Tools Overview
The ]project-open[ solution consists of a number of building blocks to capture project
billing information plus a number of tools to process the captured information:
Capturing Financial Information
•
Project Plan/Schedule:
•
Timesheet Logging:
•
•
Defines the project phases and their tasks and deliverables.
Prices are defined via “Service Types” (i.e. “Senior Developer Hour”, …) per task.
Allows employees to log hours on projects and tasks
Travel Expenses:
This module captures travel expenses, including partially billable expenses.
Provider Management:
Captures external provider costs
Capturing Fuzzy Information
•
Project Filestorage:
•
Project Forum:
•
Allows PMs to store change requests and other project documents for reference
Forum discussion can be used to capture “notes” about informal negotiation results for reference
CRM Mail Tracking:
Captures mails going back and forth between the PM and the customer.
Processing Invoicing Information
•
Quoting Wizard:
•
Invoicing Wizard:
•
Calculates a quote based on the project schedule with its “billable hours” duration per task.
Calculates (partial) invoices based on:
module captures travel expenses, including partially billable expenses.
37. Tools: Project Plan/Schedule
•
•
•
]po[ allows for project and
subprojects of any level
]po[ supports the external
GanttProject Java Application to
define schedules quickly
Each Task includes three
timesheet hours:
– Planned Hours:
Best guess for task duration
– Billable Hours:
Hours billable to customer and
– Logged Hours:
Actually logged hours by staff
38. Tools: Timesheet Logging
• Sophisticated timesheet
logging with permissions
per project, subprojects
or task
• Logging per day or per
week
• Optional approval
workflow for PM to
confirm hours logged to a
project
39. How to Create an Invoice
Sales / Planning
The Project
Execution
Invoice
Milestone
2nd Phase
Sign-Off
Support
Timesheet
Invoice
Quote
Quote
Quote
Invoice
Invoice
•
•
Create an invoice from Gantt chart
task durations. ]po[ maintains a
price list per customer.
Create an invoice from timesheet
information (actual hours logged
by employees)
Create an invoice from one or
more quotes.
Create an Invoice from “scratch”
(manually entering quote lines)
]project-open[ offers a wide range of options on how to create an invoice,
taking advantage of all available information
]project-open[ provides maximum flexibility in terms of how to combine all
available information to create invoices.
40. Document Type Permissions
Employees
Project
Managers
Accounting
-
read and create
project’s Quotes
read, create and
modify everything
-
read and create
project’s Delivery
Notes
read, create and
modify everything
-
read project’s
Invoice (but no
right to create)
read, create and
modify everything
-
read and create
project’s Purchase
Orders
read, create and
modify everything
-
read project’s
Provider Bills (but
no right to
create)
read project’s travel
expenses
read, create and
modify everything
read project’s
timesheet costs
read, create and
modify everything
Quote
Delivery
Note
Invoice
Purchase
Order
Bill
(Provider
Invoice)
Travel
Expense
Time
sheet
Cost
read own expenses,
create new travel
expenses
log hours (which
creates timesheet
cost items)
read, create and
modify everything
• ]project-open[ allows to
specify per profile who
should be able to read or
write certain financial
documents.
• The table at the left shows
a typical configuration.
• The configuration at the
left implies a workflow
between project managers
(create quotes and
purchase orders) with
accounting (write invoices)
• The configuration can be
modified using ]projectopen[ maintenance
screens.
42. Solution
• ]project-open[ provides a single place to store and process
both formalized and semi-formalized data including quotes,
timesheet, documents, email traffic etc.
• ]project-open[ has been designed for the level of flexibility
needed by small and medium service organizations (3-300
employees).
• ]project-open[ workflow engine can enforce certain policies
such as order or sign-off phases in larger organizations
• ]project-open[ includes wizards to create quotes and invoices
from production information such as planned or spent hours
• The ]project-open[ workflow engine allows to formalize
important processes, while other processes may be kept
flexible.
44. Quoting Options in ]project-open[
• Quoting using Project Plan:
– Create a project schedule via GanttProject
– Assign “materials” to tasks
– Use the Timesheet Quoting Wizard to sum up the planned
hours multiplied with the customer’s price list.
• Repeating Project Structures:
– Create a “new project from template” to create a copy of a
previous project.
• Complex Projects:
–
–
–
–
Write a quote using MS-Word,
Create a new ]po[ project in status “quoting”
Store the MS-Word in the ]po[ project’s Filestorage
Create a ]po[ quote document for financial tracking
45. Sales & Quoting
• The Sales & Quoting phase starts during the first contact with
the customer.
• Deliverables:
– A textual description of the scope of the project (MS-Word document)
– A “quote” document as a baseline for the invoicing process
• PO can keep track of potential projects and the size of the sales
pipeline
• A PO workflow can check the completeness of quote
information before a “potential” project becomes executed.
• PO allows to store unstructured information such as email,
meeting and conversation protocols together with the project as
a reference for the invoicing process.
46. Project Planning
• The planning phase intents to specify the
tasks to execute the project. It may overlap
with the sales phase or start afterwards
• Deliverables:
– A detailed project plan consisting of a number of
tasks
– Each task consists of a number of “planned” and
“billable” hours, apart from other project information
47. Project Planning
• The planning phase intents to specify the
tasks to execute the project. It may overlap
with the sales phase or start afterwards
• Deliverables:
– A detailed project plan consisting of a number of
tasks
• Each task consists of a number of “planned”
and “billable” hours, apart from other project
information
48. Thanks for your attention
]project-open[
Ronda Sant Antonio 51, 1o 2a
08011 Barcelona
Spain
Tel: +34 933 250 914
Cell: +34 609 953 751
Fax: +34 932 890 729
www.project-open.com
www.project-open.org