Enabling Additional Options for Unbilled Revenue
When billing subscriptions, the invoice creation may be "decoupled" from the subscription's service period. Your accounting, however, may still require bookkeeping data for those items before they are actually invoiced. To support this scenario, JustOn Billing & Invoice Management can generate preliminary bookkeeping data based on active subscriptions of the type Unbilled Revenue
.
In addition to generally enabling the booking data generation and configuring the booking account allocation, JustOn Billing & Invoice Management provides a number of settings to cover specific use cases:
- Configuring Unbilled Revenue Tax Handling
- Enabling Unbilled Revenue Creation on Subscription Basis
- Enabling Unbilled Revenue Update
Configuring Unbilled Revenue Tax Handling
The global setting Unbilled Revenue Tax
controls the tax handling when generating unbilled revenue bookkeeping data. There are three options:
Option | Description |
---|---|
Net (or empty) |
Creates net booking details for both Unbilled Revenue and Revenue |
Gross |
Creates gross booking details for both Unbilled Revenue and Revenue |
Net+Tax |
Creates net booking details for Revenue and Tax , and gross booking details for Unbilled Revenue |
Depending on your requirements, you specify the appropriate option. This allows, for example, support for automatic accounts (Automatikkonten) in DATEV.
-
Click to enter Setup, then open Custom Settings.
In Salesforce Lightning, navigate to Custom Code > Custom Settings.
In Salesforce Classic, navigate to Develop > Custom Settings.
-
Click Manage in the row of Global Settings.
- Click Edit in the Default row.
- Specify the required option in the field
Unbilled Revenue Tax
. - Click Save.
Enabling Unbilled Revenue Creation on Subscription Basis
By default, JustOn creates unbilled revenue bookkeeping data for all active subscriptions. Certain circumstances may require, however, to exclude specific subscriptions. To support this scenario, you can create the custom checkbox CreateUnbilledRevenue
on the Subscription object. If configured, you use it to control whether the bookkeeping data for a subscription is created or not.
- Navigate to the fields list of the Subscription object.
-
Create the following new field.
API Name Data Type Description CreateUnbilledRevenue
Checkbox
Formula(Checkbox)Controls whether to include ( true
) or exclude (false
) the subscription on unbilled revenue data creation. Using a formula, you can apply custom logic to have the checkbox selected automatically when certain conditions are met.For help about creating fields, see Managing Object Fields.
-
Allow the users who execute the unbilled revenue job read access to the
CreateUnbilledRevenue
checkbox field by adding it to their assigned profiles or permission sets.For details, see Set Field Permissions in Permission Sets and Profiles in the Salesforce Help.
Once created, this checkbox controls whether to include or exclude the current subscription on unbilled revenue data creation.
Info
If the CreateUnbilledRevenue
checkbox is not available, JustOn creates unbilled revenue bookkeeping data for all subscriptions.
Enabling Unbilled Revenue Update
Under certain circumstances, your business may require to update unbilled revenue bookkeeping data. This may be the case, for example, when the start date or the end date of an item has been changed. Ultimately, your business requirements determine based on which modifications to subscriptions or subscription items you must update the unbilled revenue bookkeeping data.
The update of the unbilled revenue bookkeeping data relies on the Unbilled Revenue Job. To perform the update, the job requires the dedicated checkbox UpdateUnbilledRevenue
on the subscription to be set. Depending on your business requirements, you can either have users select the checkbox manually, or create a custom flow to have it set automatically when certain conditions apply.
Configuring the update usually requires the following steps:
- Creating the checkbox
UpdateUnbilledRevenue
- Creating a flow to set the checkbox
Creating Update Checkbox
To trigger the bookkeeping data update, the Unbilled Revenue Job checks for the UpdateUnbilledRevenue
checkbox. You create this field on the Subscription object:
- Navigate to the fields list of the Subscription object.
-
Create the following new field.
API Name Data Type Description UpdateUnbilledRevenue
Checkbox If set true
, the Unbilled Revenue Job updates the preliminary bookkeeping data for the current subscription.
The checkbox is intended to be set by a Salesforce Flow or Salesforce Process.For help about creating fields, see Managing Object Fields.
Once created, this checkbox controls whether to update the preliminary bookkeeping data for the current subscription.
Creating Flow
You can either have users select the checkbox manually, or create a custom flow to have it set automatically when certain conditions apply. For example, you can have the flow triggered to set the checkbox UpdateUnbilledRevenue
when either the item start date or end date is modified, but not if the previous and new date values are in the future (because this does not require updating the existing bookkeeping data).
Note
Remember that your business requirements determine based on which modifications to subscriptions or subscription items you must update the unbilled revenue bookkeeping data. So the flow setup and the objects and fields to involve will vary.
- Click to enter Setup, then navigate to Process Automation > Flows.
- Click New Flow.
- Select
Record-Triggered Flow
and click Create. -
Configure the Start element.
Option Value Object Item
(ONB2__Item__c)Trigger A record is updated
Condition Requirements Any Condition Is Met (OR)
Condition 1 ONB2__StartDate__c
Is Changed
{!$GlobalConstant.True}
Condition 2 ONB2__EndDate__c
Is Changed
{!$GlobalConstant.True}
Optimize for Actions and Related Records
-
Click and add the following Decision element.
Specify labels and API names for the decision node (
Check dates
) and the outcome path (Modified dates
) as required.Option Value Condition Requirements Custom Condition Logic Is Met
Condition Logic (1 AND (2 OR 3)) OR (4 AND (5 OR 6))
Condition 1 {!$Record.ONB2__StartDate__c}
Is Changed
{!$GlobalConstant.True}
Condition 2 {!$Record.ONB2__StartDate__c}
Less Than or Equal
{!$Flow.CurrentDate}
Condition 3 {!$Record__Prior.ONB2__StartDate__c}
Less Than or Equal
{!$Flow.CurrentDate}
Condition 4 {!$Record.ONB2__EndDate__c}
Is Changed
{!$GlobalConstant.True}
Condition 5 {!$Record.ONB2__EndDate__c}
Less Than or Equal
{!$Flow.CurrentDate}
Condition 6 {!$Record__Prior.ONB2__EndDate__c}
Less Than or Equal
{!$Flow.CurrentDate}
In order to not overload the decision logic in one node, you may move the conditions to check for the end date into a second, parallel decision node.
-
On the modified outcome path of the decision node, click and add the following Update Records element.
Specify a label and API name as required, for example
Set update BD checkbox
.Option Value How to Find Records Specify conditions to identify records, and set fields individually
Object Subscription
(ONB2__Subscription__c)Condition Requirements All Conditions Are Met (AND)
Condition Id
Equals
{!$Record.ONB2__Subscription__c}
Set Field Values UpdateUnbilledRevenue__c
←{!$GlobalConstant.True}
The flow may look like this:
Example flow to set the update unbilled revenue checkbox -
Click Save, then Activate.
When item start dates or end dates are modified, JustOn selects the checkbox UpdateUnbilledRevenue
, which will trigger the Unbilled Revenue Job to update the preliminary bookkeeping data for the current subscription on the next scheduled execution.
For help about creating flows, see Flows in the Salesforce Help.