Billing Settings
Use these fields in the Billing custom setting, and the configuration options in the Billing configuration group A collection of configuration options contained in the configuration groups tab that defines behavior of a PSA object or feature. to control billing events.
For all the lookup fields, you can also click Show All Results for “ ”. The search lookup window opens with the searched string populated in the Search field and displays all related items in the grid.
Select the item from the grid that you want and click Select. The selected item is then displayed in the lookup field. For more information, see Using Advanced Lookup.
Fields in the Billing Custom Setting
Setting | Description |
Default Value |
---|---|---|
Disable Billing Closer to Cap |
When a billing cap is applied to a project, this field controls whether PSA is allowed to automatically split billing events in order to bill closer to the billing cap. For example, if you are releasing a billing event with a value of 1000 but the amount remaining in the project's bookings is 250, PSA can split the billing event and release items that together do not exceed the value of 250. The unreleased items are saved to a new billing event. Select this field if you want to prevent PSA from splitting billing events automatically. For more information, see Releasing Single Billing Events When Billing Is Capped. |
Deselected |
Send_Success_Email |
When selected, an email is sent when a billing event mass process, such as Generate, Release, Combine, and so on is successful. |
Deselected |
Send_Failure_Email |
When selected, an email is sent when a billing event mass process, such as Generate, Release, Combine, and so on is unsuccessful. |
Selected |
Configuration Options in the Billing Configuration Group
Setting | Description |
Default Value |
---|---|---|
adhocDisplayBudget |
You can add a value that references the API name of a Budget object's custom field set, where you have defined the fields to be displayed in:
|
|
adhocDisplayExpense |
You can add a value that references the API name of a Expense object's custom field set, where you have defined the fields to be displayed in:
|
|
adhocDisplayMilestone |
You can add a value that references the API name of a Milestone object's custom field set, where you have defined the fields to be displayed in:
|
|
adhocDisplayMiscAdj |
You can add a value that references the API name of a Miscellaneous Adjustment object's custom field set, where you have defined the fields to be displayed in:
|
|
adhocDisplayTimecard |
You can add a value that references the API name of a Timecard Split object's custom field set, where you have defined the fields to be displayed in:
|
|
adhocFilterBudget |
You can add a value that references the API name of a Budget object's custom field set, where you have defined the fields to be displayed in:
|
|
adhocFilterExpense |
You can add a value that references the API name of a Expense object's custom field set, where you have defined the fields to be displayed in:
|
|
adhocFilterMilestone |
You can add a value that references the API name of a Milestone object's custom field set, where you have defined the fields to be displayed in:
|
|
adhocFilterMiscAdj |
You can add a value that references the API name of a Miscellaneous Adjustment object's custom field set, where you have defined the fields to be displayed in:
|
|
adhocFilterTimecard |
You can add a value that references the API name of a Timecard Splits object's custom field set, where you have defined the fields to be displayed in:
|
|
|
If true, billing events and batches remain open when using the Projects Awaiting Billing and Billing Event Generation tabs. Any new billing event and its items are appended to an existing generated billing event or batch that matches its account, project and currency. If false, separate billing events or batches are created. If this option is true when releasing billing events and batches using the Billing Event Generation tab, a billing event that is part of a failed release batch job is treated in one of the following ways:
A release is blocked if one or more billing events match the combination of region, practice, group, account, currency or time period of an active billing event generation. You could reduce the number of billing events to release, or release when generation of the current billing events and batches has completed. When any generation or release job completes, the Billing Event Generation tab is refreshed. If this happens when you are selecting filters for generation or billing events for release, your selections are lost. Before selecting items for generation or release, we recommend that you check the processing status of current jobs. For project and account billing, billing events can be added to open billing event batches. See also the time period setting ignoreTimePeriodWhenAppendingItems |
|
|
If true, the Approved for Billing checkbox must be selected on the related business record for it to be eligible for billing event generation. | |
billingEventGenerationDisplayBillingEvent |
You can add a value that references the API name of a Billing Event object's custom field set, where you have defined the fields to be displayed on the Billing Event Generation page. |
null |
billingEventGenerationDisplayBillingEventBatch |
You can add a value that references the API name of a Billing Event Batch object's custom field set, where you have defined the fields to be displayed on the Billing Event Generation page. |
null |
billingEventGenerationDisplayBillingEventItem |
You can add a value that references the API name of a Billing Event Item object's custom field set, where you have defined the fields to be displayed on the Billing Event Generation page. |
null |
billingInterfaceClear |
When using the PSA API for billing, you can add a value for the name of the class that the API uses when clearing billing. For more information, see Customizing Billing Processes. |
|
billingInterfaceCombine |
When using the PSA API for billing, you can add a value for the name of the class that the API uses when combining billing events. For more information, see Customizing Billing Processes. |
|
billingInterfaceInvoice |
When using the PSA API for billing, you can add a value for the name of the class that the API uses when invoicing billing events. For more information, see Customizing Billing Processes. |
|
billingInterfaceNamespace |
Name of the namespace prefix of the custom classes that implement the various billing interfaces. You can use this option to customize the billing invoice process in PSA. For more information, see Customizing Billing Processes. |
|
billingInterfaceRecalc |
When using the PSA API for billing, you can add a value for the name of the class that the API uses when recalculating billing. For more information, see Customizing Billing Processes. |
|
billingInterfaceRelease |
When using the PSA API for billing, you can add a value for the name of the class that the API uses when releasing billing events. For more information, see Customizing Billing Processes.Customizing Billing Processes. |
|
billingInterfaceRemove |
When using the PSA API for billing, you can add a value for the name of the class that the API uses when removing billing events. For more information, see Customizing Billing Processes. |
|
|
Billing Event Generation tab only. The format of the billing event item Description field for budget records, where {0} is the Actual Date field from the record. |
|
|
Indicates whether a billing event item is prevented from being deleted once a business record references it even when it is not yet billed or invoiced | |
clearBatchSize | Number of records to process in a single batch when clearing billing using the Clear Billing Data button, or reverting billing using the Revert Billing button. | 200 |
|
Indicates whether a confirmation popup is displayed when a user clicks Generate on the Billing Event Generation tab. | |
|
Indicates whether PSA processes some billing trigger functionality asynchronously. | |
|
Indicates whether Billing Event Batches with only one billing event are deleted when that billing event is deleted, or if PSA is configured to do so, indicates whether the batch is deleted when the remaining billing events contain zero amounts. | |
|
Number of records to delete in each batch delete execution. Change this value if you experience Salesforce governor limits. | |
|
When true, the Invoiced checkbox on billing events cannot be selected if the Released checkbox is not selected. | |
|
Billing Event Generation tab only. The format of the billing event item Description field for expense records, where {0} is the resource name and {1} is the expense date. For example, Joe Bloggs on 02/02/2012. |
|
|
The number of records to process each time a billing event batch is generated. | |
generateBillingForCompletedTimePeriodsOnly |
If true, and useFlexiblePeriodMode is also true, billing events are generated for eligible business records that fall only within time periods that are completed on or before the specified cutoff date. Example: If the cutoff date is April 29 and the time period type is Month, billing is generated for eligible business records that fall on or before March 31. Items dated April 1 or later are not included because the monthly time period of April is not complete on April 29. |
false |
group-be-by-master-project |
When true, all projects that belong to a master project are grouped, usually into the same billing event, which references the record ID of the master project that the billing event belongs to. Other configurations for appending, and the billing event batch groupings on account, currency and time period are still respected. This setting works for all billing methods. |
false |
AppendingItems |
If true, and appendGeneratedItems is true, billing events are appended to existing billing event batches that match the account and currency, regardless of time period. For project and account billing, billing events can be added to open billing event batches, regardless of the time period. |
|
|
If true, eligible budget pre-bill amounts are included by default when generating billing events, unless deselected during the billing process. | True |
|
If true, eligible expenses are included by default when generating billing events, unless deselected during the billing process. | True |
|
If true, milestones are included by default when generating billing events, unless deselected during the billing process. | True |
Adjustments |
If true, eligible miscellaneous adjustments are included by default when generating billing events, unless deselected during the billing process. | False |
|
If true, eligible timecard splits are included by default when generating billing events, unless deselected during the billing process. | True |
invoiceBatchSize | Number of records to mark as invoiced in a single batch when using the Invoice button on the Billing Events list view and detail page or the Mark as Invoiced button on the Billing Events Awaiting Invoicing tab. | 200 |
|
The maximum number of zero amount billing event batches to automatically delete. This setting is used when Delete_Zero_Amount_Batches is set to true. Change this value if you encounter Salesforce governor limits. | |
|
The maximum number of zero amount billing events to automatically delete. Change this value if you encounter Salesforce governor limits. | |
The number of billing event items that can be added to a billing event is unlimited, but you can set a maximum. If this is exceeded, more than one billing event is generated. |
zero | |
maxNumberOfDaysPriorToQuery |
Limits the set of records included when generating billing events on the Billing Event Generation or Projects Awaiting Billing tabs. When including prior periods, defines the number of days prior to the end of the selected period to generate billing events for. When scheduling a billing event and including prior periods, defines the number of days prior to the selected period for which to generate billing events for billing event items. |
|
|
Billing Event Generation tab only. The format of the billing event Description field for milestone records, where {0} is the Actual Date field from the record. |
|
|
If selected, and includeMiscellaneousAdjustments is also selected, only miscellaneous adjustments belonging to categories in this list are included when billing events are generated. | |
|
Billing Event Generation tab only. The format of the billing event item Description field for miscellaneous adjustment records, where {0} is the Description field from the record. |
|
nextInvoiceNumber | Optional configuration that you can use to determine the initial invoice number when billingInterfaceInvoice or billingInterfaceInvoice contains the name of an alternative class to customize the invoice process with. Customizing Billing Processes. |
10000 |
|
Indicates whether users can delete billing event batches that have one or more child billing events, which are invoiced or released. | true |
|
The number of time periods to be displayed in the Time Period drop-down list on the Billing Event Generation or Projects Awaiting Billing tabs, when generating billing events. |
10 |
|
The maximum number of items to be displayed on the Billing Event Generation page before starting a new page. A maximum of 100 items are displayed per page, per tab. We recommend you do not change the default value. This is to avoid any volume errors when billing events are generated using the "Release" feature on the page that this setting applies to. If issues continue, set this value lower than the default. | 10 |
|
The maximum number of items to display per page in each Project Billing record tab. A maximum of 100 items are displayed per page, per tab. We recommend you do not change the default value. This is to avoid any volume errors when billing events are generated using the "Release" feature on the page that this setting applies to. If issues continue, set this value lower than the default. | 10 |
recalcBatchSize | The number of records to process in each batch when recalculating billing events. | |
|
The number of records to process in each batch when releasing billing events. | |
|
If true, budget pre-bill amounts are generated into separate billing events from other eligible business record types. |
|
|
If true, expenses are generated into separate billing events from other eligible business record types. |
|
separateExpensesByTypes |
Enables further separation of expenses when separateExpenses is true. Add a value for each separate billing event that is to be created. Each value must contain a comma separated list that contains the expense types to include in the billing event. You must also enter a sort order for the billing events. Expense types that are not listed in the value are included on an ordinary billing event. |
|
|
If true, milestones are generated into separate billing events from other eligible business record types. |
|
Adjustments |
If true, miscellaneous adjustments are generated into separate billing events from other eligible business record types. |
|
|
If true, timecard splits are generated into separate billing events from other eligible business record types. |
|
|
Billing Event Generation tab only. The format of the billing event description field for timecard records, where {0} is the resource name, {1} is the start date, {2} is the end date, and {3} is the total hours or days. For example Beth Gomez between 2021-8-15 and 2021-8-21 for 38.0 total hours/days. |
|
|
Defines the time interval to use when generating billing events. Used as the default value for flexible billing when no time period type is set on the account or project record. | |
|
If set, and unitTypeSubfiltersis true, defines the first Region, Practice, and Group (RPG) selector in the Generate Billing Events section of the Billing Event Generation tab. If set, and unitTypeSubfilters is false, defines whether the Region, Practice or Group selector is shown by default. |
Region |
unitTypeSubfilters |
If true, all of the Region, Practice, and Group (RPG) selectors are shown in the Generate Billing Events section of the Billing Event Generation tab. If false, only the Region selector is shown by default. You can also use this with unitType. |
|
useFlexiblePeriodMode | If true, a cutoff date is used instead of a time period when generating billing events. Billing event items are included when they belong to the time period type that is set on either the account or project record or in timePeriodType, and their date falls on or before the cutoff date. Example: If the cutoff date is April 15 and the time period type is Month, billing is generated for items that fall within April, on or before April 15. If generateBillingForCompletedTimePeriodsOnly is also true, billing event items are included when they belong to the appropriate time period type, and their date falls within a time period that is complete on or before the cutoff date. Example: If the cutoff date is April 29 and the time period type is Month, billing is generated for items that fall on or before March 31. Items dated April 1 or later are not included because the monthly time period of April is not complete on April 29. |
Custom Field Set Limitations for Account Billing and Project Billing
For the Account Billing and Project Billing functionality, you can use custom field sets to customize the fields that display for each of the relevant business records: Timecards, Expense Reports, Milestones, Miscellaneous Adjustments, and Budgets.
For each of these business records, there are fields that always appear by default. There is no need to include these fields in any custom field set.
Fields | Business Record |
---|---|
ID Name Project |
Budgets |
ID Name Project Resource_r.name |
Expense Reports |
ID Name Project |
Milestones |
ID Name Project |
Miscellaneous Adjustments |
ID Name Project Resource_r.name |
Timecards |
If these fields are added to the custom field sets, the following error will display:
"duplicate field selected : <field name>"