Services Billing Overview
PSA projects can be billable or non-billable. You bill for services using the Billing Event object, which is typically the equivalent of an invoice or credit note in your finance system. PSA is not an invoicing system.
In PSA, you identify eligible billing data from billable business records and generate billing events for those records. You can then send billing events to your finance system for invoicing using the release functionality. If PSA is integrated with your finance system your billing events are typically marked as invoiced automatically. Alternatively, you can manually mark billing events as invoiced after they have been released.
Eligibility of Business Records for Billing
You can bill for the following types of billable business record on each project:
- Budget
An amount used to manage expenditure on customer purchase orders, internal budgets, outbound vendor purchase orders and work orders. A budget must be associated with a project.
- Expense
A record of expenses incurred by resources assigned to a project or opportunity.
- Milestone
A fixed target, which when achieved, can be billed to the customer for a fixed fee or by logging time against it.
- Miscellaneous Adjustment
A catch-all business record that allows you to correct data entry errors or adjust transactions.
- Timecard Split
A whole timecard or part of a timecard.
There are specific conditions that must be met for a business record to be eligible for billing. For more information, see Before You Generate Billing Events.
When business records become eligible for billing:
- Changes to transactions are recorded and actuals (financials) are updated. PSA tracks actuals for regions, practices, groups, resources, and projects.
- The business record data is made available for inclusion in a billing event, and a billing queue record is created. The Billing Queue is a system-generated object that you do not need to access during the billing process. Ask your administrator for help if you think that there are problems with a billing queue.
Generating Billing Events
In PSA, the billing event generation process collects business records that are eligible for billing and translates them into billing event items, billing events and billing event batches.
Billing Event Items
Billing event items are simplified, potentially summarized data items for billable records. Each billing event item is typically directly related to a single business record that is being billed for a specific project. When released to a finance system, a billing event item typically represents a sales invoice line item.
If you have the permissions to do so, you can create a detailed description for your billing event items. See Customizing Billing Event Items.
Billing Events
A billing event is a collection of billing event items, which can be from only one type of business record or multiple types of business record. If you want to understand how your billing events are configured in your org, ask your administrator for help.
When released to a finance system, a billing event typically represents a sales invoice or credit note.
Billing Event Batches
A billing event batch is a collection of billing events that are grouped by account, currency, and unless otherwise configured, time period. This grouping is PSA-specific, and increases the efficiency of the review and release process.
Depending on how your administrator has configured PSA in your org:
- Billing events are grouped by project ID or master project ID.
- Billing events can be appended to unreleased billing event batches.
Mass Generating Billing Events
When mass generating billing events, you can:
- Generate all billing events for a region, practice, group, account, or project.
- Select the business record types that you want to bill for, and exclude those that you don't.
- Schedule the generation of billing events by creating a Salesforce scheduled job. Scheduling is currently only available using the Billing Event Generation tab.
- Generate billing events for a cutoff date, if configured. Flexible billing gives you more control over the billing frequency by enabling you to generate the appropriate billing events for the time period types defined on the project or account.
- Generate billing events for a specific time period, and include records from previous periods in the same mass generation, if needed.
If PSA enables you to select practices or groups, you can only generate billing events for the projects within those objects. If you need this option, ask your administrator for help.
If you have the relevant permissions, you can use the following tabs to mass generate billing events. These are available from App Launcher:
- Projects Awaiting Billing
- Billing Event Generation (Classic)
For more information, see:
Generating Billing Events for an Account or a Project
You can select the business records that you want to bill for from an individual account or project. This gives you a greater depth of detail than when you mass generate billing events.
To generate billing events for an account or project:
- On the account's record page, click Account Billing.
-
On the project's record page, use the following actions:
- Actions | Project Billing | Generate Billing Events
- Project Billing or Actions | Project Billing | Project Billing (Classic). Warning: Do not use these actions if PSA is configured to pass customer references to billing events. For more information, see Passing Customer References through to Billing Events.
- Billing (Apex) API
For more information, see:
Billing Event Calculations
When you generate billing for a time period, an associated Billing Event Calculation object is created. This includes all the related billing event batches, billing events, and billing event items.
The Billing Event Calculation is a system-generated object that does not need to be accessed during the billing process. If you think that there is a problem with the calculation, ask your administrator for help.
If you want to see the billing event calculations for troubleshooting, your administrator can:
- Add the Billing Event Calculation field to your billing event batch, billing event, and billing event item pages to show the related billing event calculation.
- Add a Billing Event Calculation related list on your region, practice, group, and project page layouts to show related calculations.
Billing Queues
The process for mass generation of billing events uses billing queue records to generate billing event items and add them to billing events and billing event batches.
The Billing Queue is a system-generated object that does not need to be accessed during the billing process. If you think that there is a problem with the billing queue, ask your administrator for help.
Releasing Billing Events
After generating billing events or batches and reviewing the information, you can select and release them from the following pages, ready for invoicing:
- Billing Events Awaiting Release Tab
- Billing Event Generation Tab (Classic)
- Billing Event and Billing Event Batch list views (Classic)
- Billing Event record
- Billing (Apex) API
When you mark billing events as released, their billing event items are also marked as released, but their business records are marked as billed. This doesn't mean that your customer has been billed for the business records, just that PSA recognizes that the billing events have been sent to be converted into invoices in your finance system.
For more information, see Releasing Billing Events:
Marking Billing Events as Invoiced
If PSA is fully integrated with your finance system, billing events are marked as invoiced when a response is received after releasing, and your finance system has created the corresponding sales invoice or credit note.
If PSA is not integrated with a finance system, you can mark billing events as invoiced manually in PSA using:
- Billing Events Awaiting Invoicing Tab
- Billing Event record
- Billing Event list view (Classic)
For more information, see:
- Creating Billing Documents for Billing Events
- Billing Events to Sales Invoices or Credit Notes
- Marking Billing Events as Invoiced
Reverting Billing
Reverting billing deletes the billing event and its billing event items, and reverts associated records to a state where they are eligible for billing again. If you have the correct permissions, you can revert billing for released and invoiced billing events or billing event items.
You can revert billing if, for example:
- You have generated a billing event containing a billing event item that you do not want to include.
- You want to remove a whole billing event.
You can revert billing using the following record pages and app pages:
- Billing Event
- Billing Event Item
- Budget
- Expense
- Expense Report
- Milestone
- Miscellaneous Adjustment
- Timecard
- Timecard Split
- Billing Event Generation Tab (Classic)
- Billing Events Awaiting Release Tab
- Billing Events Awaiting Invoicing Tab
- Invoiced Billing Events Tab
For more information, see Reverting Billing.
Recalculating Billing
You cannot release a billing event to your finance system if the description or amount of one or more records have been changed since the billing event was generated. In this situation, you can recalculate the billing events for the following records:
- Budgets
- Expenses
- Milestones
- Miscellaneous adjustments
- Timecards
You can recalculate billing on the following pages:
- Billing Events Awaiting Release Tab
- Billing Event record
- Billing Event list view (Classic)
For more information, see Recalculating Billing Events.