Understanding Charge Rules
Charge rules determine the billing rate, the timing of charges, and the stage of a charge when it's generated. Charge rules can be either fixed fee, time-based, expense-based, or purchase.
A breakdown of individual charge rule types and respective project activities or inputs is listed below:
-
Fixed Fee Rules
-
Types
-
Fixed Date
-
Creates a charge for a defined amount on a specified date on the rule and can be set up to recur (for example, Monthly).
-
Multiple Fixed Date rules can be created on one project.
-
-
Milestone
-
Creates a charge for a defined amount when a project milestone is completed.
-
Multiple Milestone rules can be created on one project. Each Milestone rule must be mapped to a unique milestone on the Project Schedule.
-
-
Project Progress
-
Creates a charge for a defined amount multiplied by the percent complete of the project (Actual Hours/Estimated Hours).
-
You can only have one Project Progress rule per project.
-
-
-
Generating Charges
-
Actual charges are created when a specific date is hit, a milestone/project task gets completed or progress is made on a project. Amount set on the fixed charge rule is then used to calculate the actual charges (either the amount gets distributed among charges or is used for each charge, depending on the fixed fee rule sub-type).
-
Forecast charges are created based on the system's prediction of when a specific event will occur in the future based on the date set, expected milestone/task completion date, or planned project progress (from planned time on the Project Schedule).
-
-
-
Time-Based Rules
-
Generating Charges
-
Forecast charges are created from:
-
Planned time – planned time is a time entry created by the system when a project resource gets assigned to a project task. It represents a prediction of how long the task will take.
-
Allocated time – allocated time is created by the system when resource allocation for a specific employee, specific number of hours (or % of the time), and time period gets created. Project preference 'Use allocated time for forecast' needs to be enabled to allow forecast charges to be created off allocated time.
-
Actual time – this applies only when the Planned Work feature is disabled. Forecast charges are then created from all actual time entries. If 'Use allocated time for forecast' is enabled forecast charges are created only from actual time with date < system date (for example, today). The rest (future) is covered by allocated time.
-
-
Actual charges are created based on time tracked by project resources against the project.
-
-
Users can create additional filters to define which time entries should be consumed by the time-based charge rule. Additional logic can be set as well – money/hour cap, multiplier, or time rounding.
-
Multiple time-based rules can be created to cover even more complex billing setups. Rule ordering is available for those use cases to define which rule should have its turn first, second, etc.
-
-
Expense-Based Rules
-
Generating Charges
Actual charges are created based on data from expense reports and vendor bills recorded against the project. Expense Report receipts and Vendor Bills using the Expenses subtab are processed by Expense-Based rules.
-
Users can add filters to select which expense reports the rule uses, and set a mark-up or discount.
-
Multiple expense-based rules can be created to cover even more complex billing setups. Rule ordering is available for those use cases to define which rule should have its turn first, second, etc.
-
-
Purchase Rules
-
Generating Charges
-
Actual charges are created based on data from vendor bills recorded against the project where only service items and non-inventory items are considered
-
Forecast charges are created based on data from purchase orders recorded against the project where only service items and non-inventory items are considered
-
-
Users can add filters to select which expense reports the rule uses, and set a money cap or multiplier.
-
Multiple purchase-based rules can be created to cover even more complex billing setups. Rule ordering is available for those use cases to define which rule should have its turn first, second, etc.
-
If you use the Override Rates on Time Records accounting preference, time-based rules will override any rate changes made on time transactions.
Tiered Charge Rules
You can define multiple charge rules for a single project to create complex billing criteria based on a variety of factors. For example, you might want to bill a project based on time and materials. You would create two charge rules: one fixed date rule for the up-front billable amount for materials and one time-based rule that creates charges for time entered.
If you create time-based or expense-based charge rules, they’re applied in the order you set whenever time or expenses are entered. You can filter rules so they only apply to certain time or expenses. For example, you might want a rule to only apply to time or expenses entered for a specific item.
You can also use caps with time-based charge rules for additional flexibility. For more information, see Using Caps with Charge Rules.
Charges Creation
Each customer has a set amount of computing bandwidth for calculations and processes like charge creation. There are 2–50 computing threads (depending on your license) that process charge requests in parallel. One project can’t recalculate both actual and forecast charges for the same rule type at the same time, but different rule types can run in parallel. Projects ready for recalculation are sent to a work queue. If a project is already in the queue, it won’t be added again.
Forecast and Actual Charges Creation and Recreation
Both forecast and actual charges get recalculated when a certain trigger is hit, either from the user or the system side:
-
Midnight charge run
-
The system is searching for the last successful forecast run and compares it to, for instance:
-
The last project plan recalculation done after the last forecast run – the system recalculates forecast charges during the midnight run
-
The timestamp is after the last forecast run – the system recalculates respective (for example, fixed fee, time-based, expense, purchase) forecast charges during the midnight run
-
Last project plan recalculation
-
Timestamp of creation or modification of a project charge rule
-
Resource allocation service item preference got changed (this happens only if you use the Resource Allocation feature and use Resource Allocation for forecasting instead of planned time)
-
-
Runs by default only for projects with status 'In Progress' (the default system status with ID=2) and for statuses defined by customer
-
Creates actual charges
-
Creates forecast charges that may not be up-to-date
-
For One World accounts always considers the time zone of the specific subsidiary (for example, its midnight)
-
-
Manual trigger
-
Buttons for the forecast (Generate Forecast) and actual (Generate Charges) charge generation are available on the project form under Financial > Charge Run History
-
When the button is hit, the creation or recreation process starts and the user gets an estimate of when the process will be finished
-
-
Project edited
-
The project itself is edited
Note:If the project itself is edited, the project status is irrelevant.
-
The create or edit, or delete action of the records related to the project takes place:
-
Time entry, for example, time tracked
-
Project Task, including project task assignment
-
CRM Task, only if preference 'Include CRM tasks in project totals' is enabled
-
Resource Allocation, for the Resource Allocation feature
-
-
Fixed Fee Milestone rule-related project task or milestone is marked as complete
-
Forecast charges get recalculated or recreated
-
Actual charges get created
-
Any scheduled script or workflow, mass update, or import that can create, edit, or delete action of the records related to the project
-