This chapter describes the process of defining and specifying a billing schedule to a service contract.
This chapter covers the following topics:
This group of topics explains how billing works.
A billing schedule determines when the customer is billed for the services they receive. You must specify billing schedules for each contract that you author in Oracle Service Contracts.
Note: Contracts can be indirectly created from Oracle Order Management. You do not need to create billing schedules for such contracts.
Billing schedules can be defined at the contract header, the contract line, or the subline level.
For information about setting up billing schedules at the contract header level, see Entering Billing Schedules.
For information about setting up billing schedules at the line level, see:
Specifying a Billing Schedule (for a service line)
You can set attributes that enable the application to calculate billing for partial periods. A partial period duration is shorter than a full billing period duration, such as 10 days rather than a full month. It is a ratio of the number of days in the partial period to the number of days in the billing period duration (stream period unit of measure (UOM)). The number of days in the billing period duration is based on the selection that is made in the partial period attributes Period Type. For example for billing period duration Month, if you select a Fixed Period Type, then number of days for any month is considered 30, but if you select Actual, then number of days for any month is the actual number of days as per the standard calendar. The application uses the Period Start attributes if service effectivity starts from the middle of a billing calendar period and ends in the middle of a billing calendar period. The Period Start attribute provides two options, Calendar and Service.
You can define partial period attributes at the operating unit level within Global Contracts Defaults. See Entering Contract Defaults
Partial Period Billing Example
Suppose your contract contains:
Service Line Duration: 15-JAN-2006 to 14-JAN-2007
Billing Frequency: Month
Period Type: Actual
Period Start: Calendar
The application generates the first billing schedule period using a partial period with start date as service start date, which is 15-JAN-2006, and end date as first calendar billing period's end date, which is 31-JAN-2006. The application generates the last billing schedule period with start date of the last calendar billing period, which is 01-JAN-2007, and the end date of the service end date, 14-JAN-2007. All other billing schedules start from the calendar month's first date and end with calendar month's end date. For example, the application generates the second billing schedule with a start date of 01-FEB-2006 and an end date of 28-FEB-2006. The following table lists the billing schedules:
Sequence | Start Date | End Date |
1 Partial Period |
15-JAN-2006 | 31-JAN-2006 |
2 | 01-FEB-2006 | 28-FEB-2006 |
3 | 01-MAR-2006 | 31-MAR-2006 |
4 | 01-APR-2006 | 30-APR-2006 |
5 | 01-MAY-2006 | 31-MAY-2006 |
6 | 01-JUN-2006 | 30-JUN-2006 |
7 | 01-JUL-2006 | 31-JUL-2006 |
8 | 01-AUG-2006 | 31-AUG-2006 |
9 | 01-SEP-2006 | 30-SEP-2006 |
10 | 01-OCT-2006 | 31-OCT-2006 |
11 | 01-NOV-2006 | 30-NOV-2006 |
12 | 01-DEC-2006 | 31-DEC-2006 |
13 Partial Period |
01-JAN-2007 | 14-JAN-2007 |
No Partial Period Billing Example
Suppose your contract contains:
Service Line Duration: 15-JAN-2006 to 14-JAN-2007
Billing Frequency: Month
Period Type: Actual
Period Start: Service
The application creates 12 billing schedules, each with full billing period durations. For example, the first billing schedule is 15-JAN-2006 to 14-FEB-2006, and the second billing schedule is 15-FEB-2006 to 14-MAR-2006. The application follows this pattern until the end date. The following table lists the billing schedules:
Sequence | Start Date | End Date |
1 | 15-JAN-2006 | 14-FEB-2006 |
2 | 15-FEB-2006 | 14-MAR-2006 |
3 | 15-MAR-2006 | 14-APR-2006 |
4 | 15-APR-2006 | 14-MAY-2006 |
5 | 15-MAY-2006 | 14-JUN-2006 |
6 | 15-JUN-2006 | 14-JUL-2006 |
7 | 15-JUL-2006 | 14-AUG-2006 |
8 | 15-AUG-2006 | 14-SEP-2006 |
9 | 15-SEP-2006 | 14-OCT-2006 |
10 | 15-OCT-2006 | 14-NOV-2006 |
11 | 15-NOV-2006 | 14-DEC-2006 |
12 | 15-DEC-2006 | 14-JAN-2007 |
From the Billing window, you can define a billing level for the billing schedule. Three levels exist, but not all levels are available to each line type, nor are all levels available at the header level.
The following provides general information about the billing levels, however; to understand which of these levels the header and lines can use, refer to the topics that are noted at the end of each description.
The three billing levels are:
Equal Amount: enables you to bill for equal amounts over the billing period and have control over the amount to be billed as well as the billing periods. You can also use the Prorate button to spread the amount across billing periods. The start and end dates of all top lines and their sublines must be the same. You cannot modify the schedule form after it is generated.
Equal Amount can be set at the header, service line, or subscription line level:
Header, see Creating a Default Billing Schedules
Service lines, see Specifying a Billing Schedule
Subscription lines, see Specifying a Billing Schedule for Subscriptions
Top Level: enables you to define the billing periods. The billing engine calculates the bill amounts, so the amount fields and Prorate button are disabled. With Top Level, line level start and end dates can differ from the sublines. When you are creating billing schedules at this level, the total stream level amounts from the sublines roll up to the line levels. Also, once a line level billing schedule exists, all new sublines that are added will automatically update the billing amount per period without your needing to revisit the line level and click Schedule again.
Whenever the duration of the line is increased, an additional billing stream is created. If the contract has a later end date, the unit of measure of the billing stream is taken from the previous stream. If the duration is reduced, billing streams can be automatically removed, as long as those streams are entirely outside of the new contract duration. If these changes are cascaded to the sublines, billing schedules will be updated when the cascade is initiated. If the changes are not cascaded, only the line level billing schedule will be automatically updated.
Top Level can be set at the header, service line, or usage line level:
Header, see Entering Billing Schedules
Service lines, see Specifying a Billing Schedule
Usage lines, see Specifying a Billing Schedule for a Usage Line
Covered Level: when the covered level effective dates are not the same as the service line effective dates and you want to have different billing frequency for each subline, you can create a covered level-specific billing schedule. As a prerequisite, the service line billing schedule-level must first be set to the Covered Level. By default, all the covered level lines inherit the service line billing schedule. If required, you can modify and update the billing schedule for a given covered level. You can enter amounts for every period and use the Prorate button.
Covered Level can be set at the service line level:
Service lines, see Specifying a Billing Schedule
Note: You can select a billing level default by setting the profile OKS: Billing Schedule Level. If the level that you select is not available to the header or the line, the defined value will not default.
For example, if the default is set to Top Level and you create a subscription line, the defaulted value will not be Top Level, despite the setting. This is because subscription lines must be Equal Amounts, not Top Level.
Additional Information: Although subline totals are the same for Covered Level and Equal Amount, the calculations at the line level are different.
For Equal Amount, the schedule amount is the sum of subline level element amount. However, if you navigate to the subline billing schedule, the subline level amount and equal amount are the same. If you view the schedule from each of the sublines, all stream level and billing schedule amounts and level amounts are the same.
For Covered level billing, the schedule amount is the subline level amount at the top line. It is not rolled up from subline.
Example
A service line has two sublines, each with $100 for a year. The amount in the billing stream for line is calculated as $200/12–16.67 and is same for both Equal Amount and Covered Level. For Equal Amount, each entry in the Billing Schedule at the line level, equals the sum of the individual amounts for each subline. The amount for periods 1 through 11 are $16.68 ($8.34 + $8.34) and the amount for period 12 is $16.52 ($8.26 + $8.26). For Covered Level, each entry in the Billing Schedule at the line level is set to the calculated amount from the stream level ($16.67). Each of the twelve Level Amount entries is always the same amount. The schedule amount is what is billed to AR and not the amount in the billing stream.
All customer account information is set up in Oracle Receivables, which includes a single billing profile that is applicable when you are invoicing all customers. You can set up multiple, ad hoc billing profiles in Oracle Service Contracts. Billing profiles include information about accounting and invoicing rules, type of billing, and its frequency. Invoices are generated according to the billing profile attributes. The billing engine accesses the billing profile and bills accordingly.
For example, you could set up a billing profile, called Monthly Interval, which passes a monthly billing schedule with specific accounting and invoicing rules. You could use this profile to default information and also when renewing contracts if the billing durations are not the same between the original and renewed contracts.
You can use the billing profile to overwrite any existing line level billing schedule on the contract authoring form by selecting it in the Cascade Attributes form.
You can also default billing profile information onto the contract by associate a billing profile template to a customer with the Global Contract Defaults form.
Prerequisites
Define the following options:
Accounting Rules
Invoicing Rules
Billing Levels
Recurring Intervals
From the Navigator, select Setup: Service Contracts, and then select Billing Profiles.
The Billing Profile window appears.
Enter an alphanumeric profile number.
Enter the profile description.
Optionally, select a party, such as Business World.
When a billing schedule is assigned to a party, the profile is limited to that party. If you are creating a contract for another party, you do not see this billing profile in the LOV when you cascade attributes.
Select an Accounting Rule from the LOV.
Select an Invoicing Rule from the LOV.
The Billing Level is set to Top Level by default.
Select One Time or Recurring as the Billing Type option.
For the Recurring billing, select a billing Interval from the LOV, for example, Month.
In the Invoice Offset field, enter the number of days to move forward or push back the invoice date.
In the Interface Offset field, enter the number of days to move forward or push back the date on which the billing period passes to Oracle Receivables.
Save.
Note: A billing profile should be defined according to the billing requirements. If multiple customer accounts have different billing requirements, the number of billing profiles should be defined accordingly.
No restrictions exist for the number of billing profiles.
When you apply the billing profile to subscription contracts during contract renewal, the Billing Level is set to Equal Amount by default.
For usage lines, you can bill customers using different methods. Some of these methods are fixed; others are based on counter readings or estimation values.
To understand how a customer can be charged for usage lines, see Specifying How Customer is Charged.
Oracle Service Contracts integrates with Oracle Receivables to support multiple billing methods.
When you enter billing terms for a contract, you can select a method of payment from a LOV. These methods include Credit Card and Commitment (prepayment). You select a method from the Pricing/Billing subtab of the Summary tab.
If you select the Credit Card method, then you must select a credit card from the LOV. The application displays the credit card number and expiration status.
Important: You can enter an expiry date only when entering new credit card details.
If you select the Commitment method, then the Authoring process requires the entry of a commitment number. Customer commitments must be set up in Oracle Receivables prior to use as a method of payment in Oracle Service Contracts. See:
(header) Specifying Payment by Credit Card or Commitment Number.
(lines) Specifying Payment by Credit Card or Commitment Number.
Situations may occur in which you want to distribute revenue for a contract line to one or more general ledger accounts other than the default account that was specified during the implementation.
You can change the default revenue distribution for an Entered contract. You can also open an Active contract for update, or create a change request. If you are changing the revenue distribution for a contract after a line has been billed, you will change only the revenue distribution for future billing.
If the contract is copied, renewed, or used as a template, these distributions will also be copied to the new agreement.
From the Service Contract Authoring window, select a line to specify multiple general ledger accounts.
From the Tools menu, select Revenue Distribution.
The Revenue Distribution window appears for the line.
Review the account in the GL Account field.
Select the LOV for the Override Account field.
The Operations Accounting Flex window appears.
Select the LOV for the Account Alias field.
The Account Alias window appears.
Select an account alias.
The account number for the account alias appears in the Override Account field.
Note: For some accounts, the Operations Accounting Flex window appears. You can select the overriding account by selecting the segment values, or by selecting from the list of combinations.
For more information, refer to the Oracle General Ledger User Guide.
Enter the percentage to be allocated to the account in the Percent field.
After you have entered all the override accounts, the Total % field must equal 100%.
To add additional override accounts, repeat steps 3 through 7.
Click OK.
To initiate and complete the billing process, you must run the following concurrent programs:
Service Contracts Main Billing
AutoInvoice Import Program
Service Contracts Fetch Receivables Info for Billing
Note: You should run contracts through the quality assurance check prior to submitting them for billing. This helps to ensure that the billing process is successful.
Note: As part of the Multi Org Access Control (MOAC), all billing programs process only those contracts that belong to the operating units that are listed by the security profile associated with the current responsibility
This program is owned by Oracle Service Contracts. It generates a log file of the total value processed, total value successful, and total value rejected for billing. For a description, see About Concurrent Programs.
For usage lines, the Service Contracts Main Billing program calculates billing amounts based upon the usage type. See Specifying How the Customer is Charged.
From the Navigator, navigate to Requests, and then select Run.
The Submit New Request window appears.
Select Single Request and click OK. The Submit Request window appears.
In the Request region, select Service Contracts Main Billing.
In the Parameters window, specify one or more of the following:
Contract Number: Enter the numbers of the contracts to be billed.
Default Date: Enter the date that you want as the default. (The default is the system date on your computer.)
Operating Unit: Enter the operating unit for which all the contracts are to be billed.
Customer Name: Enter the name of the customer for which all the contracts are to be billed.
Category: Enter the category for which all the contracts are to be billed.
Group: Enter the name of the group for which all the contracts are to be billed.
Preview: Change this option to yes to send these transactions to special preview tables to enable you to review the invoice details before you submit them to Oracle Receivables. Leave it at no if you want the transactions passed to Oracle Receivables.
Click OK.
In the Submit Request window, click Submit Request.
The billing program sends the invoice amount to Oracle Receivables, which then generates the invoice. The process also populates some billing transaction history information in the History tab of the Billing Schedule. Because the invoice number is assigned and tax is calculated by Oracle Receivables, neither of these pieces of information can be populated until after the Service Contracts Fetch Receivables Info for Billing program is run. The tax amount will be omitted and the invoice number of –99 will be supplied.
This program is owned by Oracle Receivables. It imports the billing transactions from the Service Contracts Main Billing Program into Oracle Receivables and generates the invoice details.
After you run the Service Contracts Main Billing Program, you must run the Autoinvoice Import Program to import the billing transactions into Oracle Receivables for processing.
For more information about how to run this program, see the Oracle Receivables User Guide.
This program is owned by Oracle Service Contracts. For a description, see About Concurrent Programs.
From the Navigator, navigate to Requests, and then select Run.
The Submit a New Request window appears.
Select Single Request, and click OK.
The Submit Request window appears.
In the Name field, select Service Contracts Fetch Receivables Info for Billing.
Click OK.
In the Submit Request window, click Submit Request.
This updates the invoicing information in the customer's contract. The invoice number and tax appear in the billing details.
Usage averaging is used to give price benefits to the user for higher consumption in a period. This feature enables he user to distribute consumption evenly in multiple billing periods. After the application distributes the consumptions evenly, price breaks are applied to these consumptions to get new billing amounts for the period.
This program is owned by Oracle Service Contracts. For a description, see About Concurrent Programs.
For information about usage lines, see Entering Usage Lines.
In the Navigator, navigate to Requests, and then select Run.
The Submit New Request window appears.
Select Single Request, and click OK.
The Submit Request window appears.
In the Name field, select Service Contracts Usage Averaging.
In the Parameters window, enter the number of the contract.
If you leave this field blank, all contracts will be used.
Click OK. In the Submit Request window, click Submit Request.
Usage billing supports settlement features for Actual Per Period. This program is used to settle the discrepancies between actual consumption and actual billed amount. This type of situation may arise when consumption for billing period is captured after you run the main billing for that billing period. Currently a separate settlement program exists to do settlements of usage lines.
Settlement can also be done by billing program at the time of invoice generation.
The Service Contracts Usage Settlement program is owned by Oracle Service Contracts. For a description, see About Concurrent Programs.
For information about usage lines, see Entering Usage Lines.
In the Navigator, navigate to Requests, and then select Run.
The Submit New Request window appears.
Select Single Request, and click OK.
The Submit Request window appears.
In the Name field, select Service Contracts Usage Settlement.
In the Parameters window, enter the number of the contract.
If you leave this field blank, all contracts will be used.
Click OK. In the Submit Request window, click Submit Request.
You can use the Invoice Details function to review payment, credit, and adjustment information that is applicable to the contract, lines, and sublines.
Prerequisite
Run the necessary concurrent programs to generate billing transactions. See Executing Billing Through Concurrent Programs.
From the Service Contracts Authoring window, select the Tools menu and Invoice Details.
The Invoice Details window appears with the invoice number, date, source, transaction type, and amount.
Click the Payment Details button.
The Payment Details window appears with the payment amount and payment date.
Click OK when finished viewing payment details.
From the Invoice Details window, click the Line Details button.
The Line Details window appears with item names and descriptions, unit of measure, unit price, billed amount, and tax rate for the lines.
Click OK when you are finished viewing the Line Details.
Click OK to return to the Service Contract Authoring window.
You can use the History tab of the Billing window to review billing history. This tab is populated after you run the billing execution programs. See Executing Billing Through Concurrent Programs.
You should understand the following about the details that are associated with the History tab of the Billing window:
Line-level billing schedule histories are populated with the actuals.
Header-level billing schedules do not show any billing history.
Prerequisite
Run the necessary concurrent programs to generate billing transactions. See Executing Billing Through Concurrent Programs.
From the Service Contracts Authoring window, select the Lines tab and Pricing/Products subtab.
Select a line.
Click the Billing button
The Billing window appears.
Select the History tab.
You can view the billing history from this tab, including invoice information and billing dates.
Note: If summary transactions are selected with either a profile option or the contract check box, the history contains one transaction line per billing period. However, if detail transactions are being sent to Oracle Receivables, the billing history shows the details for each subline per billing period. You can view the details of that billing transaction by right-clicking any line in the billing history.
For detailed information about using Oracle Receivables, see the Oracle Receivables User Guide.
From the Navigator, select the Receivables, Vision Operations (USA) responsibility.
Navigate to Transactions, and then select Transactions.
The Transactions window appears.
From the toolbar, select the Flashlight icon.
The Find Transactions window appears.
In the Sales Order Number field, enter the contract number.
Click Find.
The Transactions Summary window appears with the invoice information.
Click Open to view the invoice transaction details.
Note: Event-Based Revenue Management in Oracle Receivables (AR) enables you to define and assign revenue recognition events to contingencies, such as acceptance of goods. For more information, see Understanding the Impact of Contingencies on Revenue Recognition.
Bill Presentment Architecture (BPA) enables you to customize the content and formatting of billing data that your customers view online or print. Oracle Service Contracts is one of the data sources that can be used by the BPA framework.
A number of setups are required to enable this functionality. For more information, see the Oracle Receivables User Guide.
Oracle Service Contracts carries sales credits from the order header to contract header and onto Oracle Receivables. Your administrator can select a variable accounting rule to recognize revenue based on any duration, such as daily, weekly or quarterly.
In addition, Oracle Service Contracts integrates with Oracle Receivables to enable partial period revenue recognition for services that are billed from service contracts. Your administrator can define accounting rules that recognize revenue evenly across all full periods in a schedule, and prorate recognition for partial periods that fall at the beginning or end of a schedule.
The following examples explain the two options that are available for partial revenue recognition. The first option is with daily rate applied to all periods including partial periods, and the second option is with revenue rate applied only to the first and last periods.
Example: Your customer signs a contract on April 17, 2005 for a six-month service and the total price for six months is $600 (with $100 per month rate). The application bills one time in the amount of $600 and recognizes revenue over the contract period. Accounting rule detail is:
Type: Variable
Period: Month
Option 1 Accounting Rule Type: Daily Revenue Rate, All Periods.
The application bases partial periods and full periods on the number of days in the periods.
Calculate daily rate based on the total number of days in the contract. The daily rate is 600/183, which equals 3.28
First period equals number of days multiplied by the daily rate.
Middle period equals the number of days multiplied by the daily rate.
Last period equals the remainder. 600 – (45.92+101.68+98.40+101.68+101.68+98.40) = 52.24 5.
Revenue Schedule is:
GL Date | Period | Amount | Days |
17-APR | Month of April | $45.92 | 14 |
17-MAY | Month of May | $101.68 | 31 |
17-JUN | Month of June | $98.40 | 30 |
17-JUL | Month of July | $101.68 | 31 |
17-AUG | Month of August | $101.68 | 31 |
17-SEP | Month of September | $98.40 | 30 |
16-OCT | Month of October | $52.24 | 16 |
Summary | 7 Periods | $600.00 | 183 |
Option 2: Accounting Rule Type: Daily Revenue Rate, Partial Periods
The application prorates partial periods based on the number of days in the periods. Full periods have equal revenue distributions.
Daily rate equals total amount/total number of days, which is 600/183 = 3.28
First period equals the number of days multiplied by the daily rate.
Last period equals the number of days multiplied by the daily rate.
Middle periods equals (total amount less (the sum of the first period and last period))/number of middle periods), which is (600 – (45.92+52.48))/5 = 100.32
Revenue Schedule is:
GL Date | Period | Amount | Days |
17-APR | Month of April | $45.92 | 14 |
17-MAY | Month of May | $100.32 | 31 |
17-JUN | Month of June | $100.32 | 30 |
17-JUL | Month of July | $100.32 | 31 |
17-AUG | Month of August | $100.32 | 31 |
17-SEP | Month of September | $100.32 | 30 |
16-OCT | Month of October | $52.48 | 16 |
Summary | 7 Periods | $600.00 | 183 |
Accounting rules are set up in Oracle Receivables. For more information, see the Oracle Receivables User Guide
To review the billing details for the contract use the Contract Billing History page.
To view billing history
Open the contract for which you want to view the billing history.
Click the Contract Details link.
In the contract header region, from the Actions list, select View Billing History.
The Contract Billing History page appears.
This page displays the billing details for all the contract lines. Only for the usage lines, the Amount column displays a hyperlinked number that you can click to view the pricing adjustments.