Contracts
Contracts create retail agreements, define terms, conditions, check compliance, reward suppliers, and customers. As sales manager, create contracts between suppliers, customers for selling products. Manage terms, conditions that govern pricing, compliance, accrual, payment, mutual business, and requirements of parties.
As your businesses enter into various contractual agreements with the trading partners, you can optimize all such operations using the contract feature.
Here's how you can create and monitor the contract:
-
Create contracts and contract templates from the web and mobile applications.
-
Define the benefits, conditions, and terms for your contract.
-
Estimate your contract costs for negotiation and fund allocation.
-
Manage contract approvals and history.
-
Manage partial accrual of the contract benefits for partial compliance.
-
Create settlement records automatically for the benefits.
-
Associate activities and execute the tasks during the store visit.
-
Exclude certain benefits from accrual for custom logic.
-
Capture a contract snapshot at critical points in contract negotiation and approval.
-
Validate contract terms and verify the success of terms and conditions of a contract.
-
Automate compliance and payment settlement schedules.
-
Reward the beneficiaries with the contracted benefits.
You can create Contracts and Contract Templates from the web and mobile applications.
Create Contract Template
Contract template serves as a blueprint using which you can instantly create contracts from the field. You can create multiple contracts quickly from the available contract templates which in turn can improve retail efficiency and speed. Let's see how to create a contract template:
-
Sign in as a sales administrator or marketing manager.
-
On the springboard, go to
-
Specify the values for the fields such as the contract template name, renewal, currency, compliance, and settlement details.
-
Click Save and Close.
Contract template is now created.
-
Navigate to the Clusters subtab.
-
Search and select a cluster from the Clusters list and click Save.
Cluster is now associated with your contract template.
Your team can use these contract templates to create more contracts.
-
Select Print Template from the available list to print the contract templates from mobile applications during store visits.
-
Select Initiative values such as contract and promotion.
-
Select Default Compliance values such as compliant and not compliant.
For each benefit, you can indicate the default compliance value. When you don't specify the compliance value for the current compliance period, the contract uses the default compliance value.
-
Select Exclude From Settlement when you have a custom settlement logic. When you enable this field, your contract isn't considered for settlement. Use this option selectively, for example, when you want to hold or defer the settlement process of a specific customer. Remember, when you select this option, you skip the contract from the automated settlement process.
Note:Use this option selectively.
-
Click Save and Close.
Contract template is now created.
-
Go to contracts template summary page, select Actions > Publish for a full publish. Or, you can Actions > Incremental Publish to publish only the new changes.
Contract templates are now published to the accounts associated with the clusters.
Publish and Incremental Publish
Improve publishing efficiency with a full Publish where you publish all the records or an Incremental Publish where you selectively publish the new changes.
-
Incremental Publish: Use incremental publish when you manage large data for publishing. For example, when you add two thousand new accounts to the clusters or add new clusters to the contract templates, you can opt to publish only those two thousand changes instead of publishing all the records. As you publish only a limited number of records, this option can save time and improve performance.
-
Publish: Use this publish option for a full publish of all the records. Based on your data size, this option can take longer to publish all your records.
Ensure you republish an object when the object data including the object child data changes. For example, when a new condition is added or the benefit guardrail values for a benefit changes, you must republish the Contract Template.
Contract Approval and History
Contract history is the complete copy of the primary details of the contract that includes contract summary, benefits, terms and conditions. Each contract history record is read-only.
You can manage the approvals and history of the contracts:
-
Go to contracts template summary page, select Actions > Submit Contract.
The contract template status changes to Pending Approval.
-
Go to Actions > Approve Contract to activate the contract or Actions > Cancel Contract.
Once the contract template status changes to Pending Approval, a scheduler process job triggers with to manage contract history.
-
On contracts template summary page, go to Contract History subtab to track the history of the contract, benefits, conditions, and terms.
If you want to view the stages through which a contract is progressed, you can view the history on the Contracts History page. These stages can be of revision or approval. You can see multiple records of contract history displayed for a single contract that are sorted in the reverse chronological (latest record at the top) order.
Create Contract from Template
You can instantly create contracts from a ready-made contract template which can help you streamline the entire contract creation process and save you time. When you create a contract from the template, your new contract includes the benefits, terms, conditions, tasks, and activities by default.
Here's how you can create a contract from the available templates while you're on the field.
-
Sign in as a salesperson.
-
On the springboard, go to
-
To create a contract from the template, select the contract template from the available list and specify the contract name and primary account. Alternatively, specify the values for the fields such as contract name, currency, renewal, and settlement details.
Note:You can create contracts from the templates in the Active state.
-
Click Save and Close.
Draft contract is now created.
-
Go to contracts summary page, select Actions > Approve Contract to activate the contract.
Note:You can't edit the contract attributes when the contract is Active. However, you can configure a superuser role to edit the contract.
You can also create contracts from Accounts > Primary Contracts.
You can now proceed to add the benefits.
Add Benefits
Define the reward for your contract beneficiary when the terms and conditions are met by selecting the benefit type. Let's understand what a benefit is:
-
A benefit is a reward that's offered in recognition of sales efforts.
-
A benefit is usually in the form of a price discount, monetary gain, or any other form of advantage on satisfying the conditions.
Here's how to add benefits to a contract template or a contract:
-
Sign in as a sales administrator or salesperson.
-
Go to Benefits > Create.
-
Specify the values for the fields such as the benefit name and type. Here's a list of some benefits:
-
Direct Compensation You reward the beneficiary of the contract a fixed amount on satisfying the conditions of the contract.
-
Product Discount You reward the beneficiary with an amount proportional to the quantity of the products sold. The discount can be a total amount, price, or percentage. The current discount model for product discount supports entering attainment in terms of quantity of products sold. However, contracts with product benefits that are based on the net sales of a product are also important to properly account for discounts, returns, and in many markets, account for rapidly changing prices or inflation. The product discount of type percentage supports two types of attainment models. While creating a benefit, customer can select either cases or revenue discount basis. Based on the choice, attainment is either in terms of quantity of products sold or in terms of net sales of a product.
-
Loyalty Point Benefit You reward the beneficiary with the points.
-
Loyalty Level Attainment You reward the beneficiary with the next loyalty level.
Note:For all the above benefit types, the payment settlement happens across multiple distribution schedules based on your terms. See the sample calculation for contract costs.
-
-
Based on your benefit type, specify the following details:
-
Select when the benefit is applicable.
-
Select if the benefit is negotiable.
Note:For a negotiable benefit, a salesperson is free to change the benefit amount after negotiating with prospective customers. However, you can set benefit guards such as minimum and maximum values.
-
Specify the compliance schedule interval and frequency and other details.
-
Select one of the funding methods from the list; Bill back or Off Invoice. Remember, the bill back benefit calculates the benefit amount during the entire distribution period and settles the amount at the end of the period.
-
-
Specify if the beneficiary is eligible for the benefit upon satisfaction of all conditions or any condition.
-
Go to Guard rails > Create to specify the benefit guards.
Select the guard rails by specifying the range of negotiation such as maximum and minimum percentages and values. Save your benefit guards.
-
Go to Fund Allocations > Create.
Specify the values for the fields such as the requested amount, currency type, and select trade fund from the available list. Save your fund allocation.
Note:Ensure the funds are allocated to each benefit before settlement.
-
Select Exclude From Accrual when you have a custom accrual logic. When you enable this field, your benefit isn't considered for accrual. Remember when you select this option, you skip the benefit from the automated accrual process.
Note:To avoid manual accrual process, don't select this option. Use this option selectively.
-
Go to Benefit Attainment > Create.
Specify the values for the fields such as the distribution index, product, and attainment. Save your benefit attainment.
-
When you create a benefit, the distribution schedule is created automatically with the distribution index and distribution date. For the direct compensation benefits, the amount and percentage are also populated.
-
Record of the number of products sold during a particular distribution period is available here for Product Discount Benefit settlement.
-
-
Go to Products > Add to add or remove the products for the benefit.
-
Based on your conditions, the distribution schedule records the distribution index and distribution date. You can view the same from Benefit Summary > Distribution Index subtab.
-
Click Save and Close.
-
Your benefit options are now saved.
Note:These settings generate the benefit transaction and resolutions when the benefit terms are met. For more information, see the Compliance and Attainment section.
You can specify payment preference such as check or electronic fund transfer for settlement. Remember to add the lookup and add values for ORA_ACO_CNTRCT_PAY_PREF
Calculate Accrual Amount
Direct Compensation
Accrual Amount = Benefit Amount
for the Distribution Index
Product Discount
Attainment or (Net Sales or Quantity Sold) of the product for a given distribution schedule is entered in benefit attainment.
For Discount Type, Amount
Accrual Amount = Sum (Discount
Amount * Attainment)
For Discount Type, Price
Accrual Amount = Sum (( List
Price of Product in Price Book of Primary account of Contract - Discount
Price) * Attainment)
For Discount Type, Percentage and Discount Basis, Cases
Accrual Amount = Sum (Discount
Percentage * List Price of Product in Price Book of Primary account
of Contract * Attainment)
For Discount Type, Percentage and Discount Basis, Revenue
Accrual Amount = Sum (Discount
Percentage * Attainment)
Order Discount
Attainment is entered as the Order Amount for the given distribution index in benefit attainment.
For Discount Type Amount
Accrual Amount = Sum (Attainment)
For Discount Type Percentage
Accrual Amount = Sum (Discount
Percentage * Attainment)
Loyalty Point
Accrual Points = Benefit Amount
Points for the Distribution Index
Loyalty Level isn't applicable.
Exclude from Accrual
When you have a custom logic for accrual, here's how you can exclude the accrual from the out-of-the-box accrual process:
-
As a sales administrator, you can set a benefit for manual accrual while creating a contract template. Any account contracts that are created from this template can inherit this attribute on the benefit.
-
As an account manager or salesperson, you set a benefit for manual accrual when creating the account contract.
-
As an implementation consultant, you set this attribute through import or script from an implementation automation perspective. For example, record creation by REST or Import Management.
-
You can't modify this field after your contract is active.
Exclude from Settlement
When you have a custom logic for settlement, here's how you can exclude the accrual from the out-of-the-box settlement process:
-
As a sales administrator, you can set a contract for manual settlement while creating a contract template. Any account contracts that are created from this template can inherit this attribute.
-
As an account manager or salesperson, you set a contract for manual settlement.
-
As an implementation consultant, you set this attribute through import or script from an implementation automation perspective. For example, record creation by REST or Import Management.
-
You can't modify this field after your contract is active.
Define Terms and Conditions
To be rewarded, the contract beneficiary has to satisfy the contract terms and conditions. Let's see how to define the terms and conditions.
-
On contracts summary page, go to Terms > Create.
-
Specify values for the fields such as the terms name and description.
-
Set the owner for the terms.
-
Click Save and Close.
The terms are now saved for a contract template.
Proceed to add conditions for the benefit.
-
Go to Conditions > Create.
-
Specify the values for the fields such as the condition name, type, target parameters, and store-level compliance.
-
Select one of the two condition types:
-
Manual Conditions: Indicates that you must fill in both condition attainment and condition compliance history. Condition Attainment represents the attainment of the condition for a specific distribution schedule index (for example, total sales).
-
Automatic Condition Indicates that you must fill only the condition attainment.
Note:You can use the user interface, REST, or web services to fill the details.
When you don't specify any attainment for the condition,
-
-
Alternatively, select the condition template from the available list to quickly create the conditions.
-
Alternatively, you can select a KPI library from the available list to quickly generate condition name and UOM by using the existing KPI details
-
For a negotiable condition, you can set condition guards such as minimum and maximum values.
-
Go to Guard rails > Create to specify condition the guards.
Select the guard rails by specifying the range of negotiation such as maximum and minimum percentages and values. Save your condition guards.
-
Click Save and Close.
Conditions are now saved.
Note:You can override the contract level default compliance by configuring default compliance for condition.
Leverage KPI Library in Contract Conditions
As account manager, you plan KPIs to track account behavior and performance.
-
As an account manager, define one or more conditions for each benefit and select a predefined KPI from the KPI library. You can measure the condition compliance KPIs.
-
As a marketing manager or administrator, select a predefined KPI from the KPI library at while creating the condition or condition template.
-
As a business intelligence analyst, you can see condition report to track and measure the performance.
Contract Activation and Distribution Schedule
Profile option ORA_ACO_DIST_SCHED_BEN_BATCH_LIMIT is used to control batch size for the ESS job that creates distribution schedules. The default value is 20. Profile option ORA_ACO_CONT_DIST_SCHED_LOG_LEVEL is used to set logging level from 0 to 5 with 5 being the highest. The default value is 0 or not logging.
Estimate Costs
As a salesperson or sales manager or account manager, you can estimate the contract costs for each benefit and contract. This estimation guides you with negotiation and fund allocation. You can see this forecast value from the summary pages of contract and benefit. Based on your conditions, terms, and attainment, your contract value is estimated.
How is a Contract Value Calculated?
-
Direct Compensation
Under direct compensation, the benefit value is the same as the benefit amount.
benefit value = benefit amount.
-
Product Discount Benefit
For each benefit, the value is calculated based on a math formula when benefits are compliant for the compliance period. See the following use case and calculation of a benefit value:
Use Case |
Sample Calculation |
---|---|
Let's consider a contract (c1) with two months duration with two products:
Let's look at the benefit type and terms:
Let's look at the forecast attainment details:
|
|
Check Compliance and Attainment
Contracts have an inbuilt mechanism to process the benefit settlement by checking the benefit attainment and compliance across distribution periods. As a salesperson, you can verify the contract terms, compliance, condition attainments, benefit accruals, and eligible values. On successful fulfillment of contract terms, you can schedule the payment settlement.
You can verify benefit accruals and attainment from the following compliance checkpoints and scheduler jobs.
Compliance Checkpoints
-
Benefit Attainment
As and when the benefit transaction happens, the benefit attainment is created with distribution index, product, and attainment quantity information. You can view the details from Benefit Summary > Benefit Attainment subtab.
-
Condition Attainment
As and when one or all conditions are compliant, the condition attainment is created. You can view the details from Condition Summary > Condition Attainment subtab.
-
Benefit Transactions
As and when the benefit is compliant, the benefit transaction is created with accrual amount and date. You can view the benefit transaction details from Benefit Summary > Benefit Transaction subtab.
-
Benefit Resolutions
As and when the benefit settlement succeeds, the resolution is created with benefit amount, date, and other information. You can view the resolutions from Benefit Summary > Resolutions subtab. When you select Exclude from Accrual, the benefit isn't considered for accrual and resolution.
Enterprise Scheduler Service Jobs
You can run the following jobs to verify the compliance history and generate the benefit settlement.
-
Compliance History Job
-
Generate Benefit Settlement Job
You can configure the superuser to override the latest benefit compliance history.
For more information about these jobs, see the Enterprise Scheduler Service (ESS) jobs section of Consumer Goods Getting Started Guide.
Contract Forecast
During the contract negotiation, sales representative, sales manager, and account manager need to know the estimated cost of contract and each benefit to guide them through the negotiation and fund allocation. It can be initiated by using the Calculate Forecast action on the Contract Details Page. After the button is clicked, an ESS job runs in the background. After it finishes, the Contract Value field is updated with the latest value. For each benefit, its value is calculated based on Math formula. Assuming that benefits are compliant for all compliance periods. All benefit values are rolled up to one single contract value.
Direct Compensation:
Benefit value = benefit amount
Loyalty Point:
Benefit value = benefit amount
Order Discount:
Discount Type is Amount.
Benefit Value = sum ( Forecast Number of orders * contract length in month * Discount Amount)
Discount Type is Percentage.
Benefit Value = sum ( forecast attainment * contract length in month * Discount Percentage)
Product Discount:
Discount Type is Amount.
Benefit Value = sum (discount amount * forecast attainment * contract length in month)
Discount Type is Price.
Benefit Value = sum ((Discount Price - List Price of Product in Price Book of Primary account of Contract) * forecast attainment * contract
length in month
Discount Type is Percentage.
Benefit Value = sum (Discount Percentage * List Price of Product in Price Book of Primary account of Contract * forecast attainment * contract length in month)
For example, consider Product A (List price 100$ in pricebook) and Product B (List Price 200$ in pricebook). Consider a Contract c1 with length (end date-start date) as 2 months.
Let's say this contract has a benefit b1 of type Product Discount, with Discount Type as Percentage and discount percentage as 10%. Both the products A and B are added to the benefit.
For product A and account if the customer has entered its forecast attainment (projection in sales) as 50 units, and for product B as 40 units.
Total Benefit Value = sum (Discount Percentage * List Price of Product in Price Book of Primary account of Contract * forecast attainment * contract length in month)
= 0.01*100*50*2+ 0.01*200*40*2
=100+160
=260$
ORA_ACO_FORECAST_BEN_BATCH_LIMIT profile option can be used to control the batch size for the ESS job. Default Value is 1000. ORA_ACO_CONT_FORECAST_LOG_LEVEL profile option can be used to enable logging for the ESS job from 0 to 5. Default Value is 0.
Forecast Attainment
Forecast attainment is the projected attainment to be entered by the customer for projecting the benefit. It is mostly in terms of sales of a product account combination.
- For each account and each product, the external integration will populate the forecast monthly quantity.
- For each account there is a default forecast monthly quantity that will be used for any products that were not specifically in the forecast. It is unlikely that you will populate forecast attainment for account and product. You will only populate forecast attainment for top products for each account.
Case 1: Create Forecast Attainment record
Expose the Forecast Attainment object as related object under Account in layout. Also expose Default Forecast Attainment field in Account layout.
Create form of the Forecast Attainment contains:
Account: The account to which the product is associated.
Product: The product for which the monthly forecast attainment is to be recorded.
Attainment: The monthly forecast attainment.
Type: Indicates whether this is for order discount or product discount. If not entered, product discount is considered.
- Go to Account, set Default Forecast Attainment.
- Go to Forecast Attainment subtab, click Create.