Summary
This article describes the configuration and use of Contracts in EngageIP in relation to accounts and packages.
A contract in EngageIP represents a period of time in which a user is obligated to stay with a particular package before they can cancel or change to another service or package.
For example, if there is a three year contract for a mobile phone, the customer must continue paying each month for 3 years. If the customer ends the contract prematurely, a penalty and/or the remaining amount is charged to their account (depending on how you have configured the contract). These charges exist to discourage changing packages and to recoup the prices of the discounted hardware or monthly fee if applicable.
Package Level Contracts
Contacts at the package level (added as a component on a package) affect only the package in question, if you need multiple packages associated with a single contract see the Account Level Contracts section below.
Adding a Contract to a Package
The instructions below describe how to add a contract at the package level so that a contract will be created whenever the package is added to an account. If you wish to add a contract to an existing package on a customer's account then see the 'Adding a Contract to a User-Package' section below.
In the AdminPortal load the Setup tab
Select the Packages option
Click on the name of the package you wish to add the contract component to
Under the Components section click the Add button
Select the Contract option from the pop-up menu and populate the contract details (required fields are in red)
Term - this is a unit of time which works in conjunction with the Base Time Unit Type below. For example, if you are setting up a 3 year contract you would enter the number 3 in this field and select Year in the Base Time Unit Type field
Base Time Unit Type - this is the quantity of time that works with the Term value (e.g. 'Year', 'Month')”
Penalty - this is the amount to charge the account if the package is canceled before the term period specified above is reached. Note: enter '0' if you do not want to apply a penalty. An empty field is not valid
Charge Remainder - if selected, the account will be charged the remaining amount owing to fulfill the contract upon early cancelation. For example, if a customer cancels with 6 months left in their contract period a charge will be added to their account for the amount of the remaining 6 months
Transaction Penalty Service - this is the service that we will tag the transaction with for GL code purposes and taxing purposes
Click the Save button
Adding a Contract to a User-Package
Contracts can be added to User-Packages on customer's accounts on the fly, to do this follow the steps below.
Load the appropriate customer account
On the Overview tab click on the name of the package you wish to add the contract to in the packages section, or alternatively click on the Packages tab and then click the appropriate package
On the user-package edit page under the Components section click the Add button and then select Contract from the components listing
Complete the fields as outlined in the section above
Specify the Start Date for when the Contract will take effect
Click the Save button
Sample Contract
Below is an example of a contract added to a user-package.
Once you save the contract the date range / contract period is calculated and displayed (the date range applied as of the last bill day on the account).
In the sample case above, the contract term is three months. If the user-package is canceled prior to meeting the contract term (April 1st) the amount for the remainder of the contract period will be charged along with a $50.00 penalty fee for early cancelation.
Account Level Contracts
The 'User Contract' component allows multiple user-packages on an account to be tied to a single contract.
In addition to existing package contract features the user contract component supports:
Automatic contract renewal with configurable renewal term length
Threshold configuration which determines if cancelation charges are applicable when a package tied to the contract is canceled
The ability to charge a minimum invoice amount on each invoice if the amount billed for packages under the contract do not reach a minimum value
Requirements
The EngageIP Job Service, EngageIP Event Manager Service and EngageIP Billing Service must be running to ensure proper execution of User Contract functionality.
Adding a User Contract to an Account
In the AdminPortal load the proper customer account
On the Overview tab under the Components heading click Add then User Contract
On the Add User Contract page populate the fields shown below (required fields are in red)
Term - this is a unit of time which works in conjunction with the Base Time Unit Type below. For example, if you are setting up a three year contract you would enter the number 3 in this field and select Year in the Base Time Unit Type field
Base Time Unit Type - this is the quantity of time that works with the Term value
Penalty Amount - this is the amount charged if a package connected to the User Contract is canceled before the contract end date is reached and the total monthly recurring charge of the remaining active packages under the User Contract do not meet or exceed the Threshold value (see the Threshold notes below). The Penalty Amount will only be charged once, it will not be charged if subsequent packages under the User Contract are canceled before the end of the contract term. If you do not want to apply any penalty fee for early cancelation then leave this field value as zero (an empty value in this field is not valid). For more information on how fees are applied see the Canceling Contracts section below
Penalty Service - this is the service you wish to associate with the transaction for GL code and taxing purposes
This date indicates when the current contract term started. If the User Contract is set to renew this date will be updated to reflect the start date of the new term at the time the renewal is triggered. Once this value is set and saved this value cannot be changed, if you need to set a different Start date for the contract you will need to delete and re-add the User Contract component on the User
Initial Start Date - this date is automatically populated and indicates when the contract was initially started. Once set this value is static and will not change
End Date - this date is automatically populated based upon the 'Start Date' and the 'Term' length of the User Contract. If the contract is set to be renewed this date will be updated to indicate the new end date of the contract when the renewal is triggered
Charge Remainder - this setting determines if the account will be charged the remaining amount owed when a package under the User Contract is canceled before the contract term is up and the total monthly recurring charge of the remaining active packages under the User Contract do not meet or exceed the Threshold value (see notes on Threshold below). For example if the contract term has four months remaining when a package under the contract is canceled and the Threshold value is not met/exceeded then the account will be charged a 'Contract Remainder' amounting to the canceled package price over four months. For more information on how early cancelation charges are applied see the Canceling Contracts section below
Threshold - NOTE: Threshold must be HIGHER than the charges to be applied otherwise no charges will apply. This value determines if cancelation charges will apply based on the total monthly recurring charge of the active packages associated with the User Contract. For instance if the Threshold value is set at $100 and the active packages connected to the User Contract are priced at $40/mth and $70/mth ($110 total MRC) then the Threshold has been met and the 'Penalty Amount' and/or 'Charge Remainder' will not be applied. To never apply fees on User Contract cancelation leave this value at $0, to always apply early cancelation fees set this value to a MRC that will never be reached (e.g. $99999999)
Auto Renewable - this setting will cause the contract to renew for another term when the End Date is reached (as of 11:59:59 on the End Date). The 'Renewal Term' and 'Renewal Base Time Unit Type' must be set for auto-renew to function. The User Contract will auto-renew indefinitely until the Auto Renewable option is unchecked or the User Contract component is deleted from the Account. The contract component added will be updated itself to have a new renewal date according to the renewal term and type configured
Renewal Term - this unit of time works with the Renewal Base Time Unit Type to determine how long to renew the User Contract Term for (Term: 1, Renewal Base Time Unit Type: Year = Renew the contract for one year)
Renewal Base Time Unit Type - set this value to sync with the Renewal Term in order to define the Renewal term length
User Contract Status - If set to a status of type "Active" then fees will be applied upon package/account cancelation. If set to another status (of type Canceled, Suspended or Prospect) fees will not be applied if a package under the contract is canceled or the user account is canceled. To add contract statuses load the Setup tab and select 'User Contract Status'
Invoice Minimum Amount - this permits a minimum charge to be applied when the account is invoiced, for example if this value is set to $100 and monthly invoice (non-prorated) charges total $80, then a charge will appear on the invoice adding $20 to increase the invoiced amount to $100. The monthly invoice totals do not include prorated charges, only full-period charges will be calculated against the Invoice Minimum Amount. If the contract expires but remains as a component on the account then the contract will function on a month to month basis, i.e. the Invoice Minimum Amount will continue to be applied after contract cancelation unless the User Contract is switched to a deactivated/suspended/prospect Contract Status, the Invoice Minimum Amount value is switched to $0 or the User Contract Component is deleted from the account
Invoice Minimum Amount Service - this is the service you wish to associate with the transaction for GL code and taxing purposes
Charge Description - this allows you to define what the Invoice Minimum Charge is listed as on the invoice. If populated the invoice will display the text and the user contract number. If left empty the invoice will display "Minimum Invoice Charge Adjustment - User Contract #xx"
4. Click Save
Associating Packages with the User Contract
Note: only active user-packages can be connected to a user contract. User-packages in prospect, canceled or suspended status cannot be connected to a user contract
Once the user contract has been added to the account you will be able to connect active packages to it. To do this follow the steps below:
On the Overview tab under the Components section click on the User Contract to edit it
At the bottom of the window you will see an empty section that will list all packages connected to the user contract. Click Add in the lower right
On the next screen select a package to associate with this contract
Click Save or Save/New if you need to connect multiple packages to the User Contract
After you click Save the connected user-packages will be shown on the edit User Contract page
Click Save on the User Contract edit page when you are finished connecting user-packages
Upgrading Packages Connected to Contracts
Upgrading a package involves configuring packages to be upgradable using the Upgrade component. Without the Upgrade component one package cannot be upgraded to another package. See the article Package Upgrade Configuration for more information.
Package Level Contracts
When upgrading a Package with a Contract Component the Contract Component will propagate to the new (upgraded) package.
If the package that you are upgrading to doesn't have a Contract Component attached to it then the existing Contract details on the old package will be passed on to the new package (the penalty fee, charge remainder, start date, end date, etc. will remain the same).
If the upgrade package has a Contract Component on it then the configuration of the Contract on the upgrade package will override the old package Contract settings, including the package Start Date and End Date (term). In this scenario the Start Date of the Contract will be the date that the upgraded package was activated (the user-package Effective Date), and the new End Date will be in sync with the term of the new contract (6 months, 1 year, etc.). The original contract is NOT considered breached, any penalties associated are not applied.
User Level Contracts
A package upgrade will trigger the cancellation of the existing package before the new (upgraded) package is added to the account. If the package being upgraded is connected to a User Contract then the package cancellation will trigger a check to see if cancellation fees (the penalty amount & charge remainder) should be applied. Depending on your business processes you may not want to apply fees when upgrading a package tied to a User Contract, to avoid charging these fees do the following:
On the Overview tab under Components click on the User Contract to edit it
Capture all of the contract details including the packages connected to it
Return to the Overview tab and click Delete to the right of the User Contract
Upgrade the package. See the Upgrading a Package guide if you are unfamiliar with this process
On the Overview tab under the Components heading click Add then User Contract
Populate the contract details based on the information you captured earlier
Note: depending on your internal business procedures the contract start period may need to be set to the current date at this pointAssociate the new User Contract with the upgraded package and all other packaged that should be bound to it
Canceling Contracts
Cancellation Process
Canceling a contract and applying any applicable fees (Penalty Fee and Charge Remainder) is fairly straight forward. Simply follow the standard package cancelation process outlined here: Managing Packages – Adding / Updating / Canceling). For more information on how fees are applied during cancellation continue reading this article.
Note: If you cancel a package that is tied to a user contract using the option Immediately With No Transaction then contract transactions (Penalty Fee and Charge Remainder as described above) will still be charged (assuming all of the criteria are met for applying the fees, see below for details on how user contract fees are applied)
How User Contract Fees are Determined
Penalty Amount - the penalty amount is applied if the user contract is canceled before the contract end date is reached and the remaining (active) packages connected to the contract have a total monthly recurring charge that does not equal or surpass the set Threshold value. Only the MRC is calculated, prorated charges are not factored in when determining the total MRC of the packages connected to the contract. If the penalty fee is applicable it will only be applied once, it will not be charged if subsequent packages under the user contract are canceled before the end of the contract term.
Scenario: a user package is setup with a threshold of $100 and three connected packages with the
following monthly recurring charges:
Package A: MRC $70.00
Package B: MRC $20.00
Package C: MRC $80.00
Package A is canceled before the user contract end date. EngageIP checks the total MRC of the remaining active packages (B & C), the MRC of these packages is $100 ($20+$80). The connected package MRC equals the threshold value ($100) set on the user contract so no penalty amount is applied to the account.
Subsequently if Package B is canceled before the user contract end date, the MRC of the only remaining active package connected to the user contract (Package C at $80) is less than the $100 threshold. In this case the penalty amount is charged.
Should Package C (the last active package) be canceled within the user contract period no penalty will be applied (the penalty amount is only applied once).
Charge Remainder - this setting (in combination with the threshold value) determines if an account should be charged the remaining amount owing when any packages connected to the user contract are canceled within the contract period.
Scenario: a user package is setup with an end date six months from the current date, the threshold
value is $100 and the following monthly packages are connected to the user contract with the
following monthly recurring charges:
Package A: MRC $70.00
Package B: MRC $20.00
Package C: MRC $80.00
If package A is canceled in the first month of the user contract period then the charge remainder is not applied (MRC of active packages B+C = $100, the threshold value is $100, the active package MRC has not dropped below the threshold value).
If package B is canceled in the second month of the contract the charge remainder fee is applicable (the remaining package (C) MRC = $80, less then the $100 threshold). The charge remainder amount applied to the account will be the total price of the remaining months for Package B (4 months * $20) and the prorated amount for the days left in month two ($80 + prorated amount).
If package C is canceled in the final month of the contract the charge remainder fee will also apply (MRC of active packages under the contract = $0 vs. threshold value of $100). In this case the charge will simply be the prorated amount for the remaining days left in the last month of the contract ($80 or less).
If an account that contains a user contract is canceled (even using the cancelation option 'Immediately With No Transaction' set) and the charge remainder option is enabled on the contract then the same logic applies. The packages under the user contract will be canceled one by one as EngageIP executes the account cancelation process, with the charge remainder applicable for the periods left in the contract term if the active package MRC drops below the threshold value. Like the scenario above, during account cancelation the final package connected to the User Contract will apply the charge remainder fee if the threshold value is greater than $0 (as cancelation of the last package connected to the user contract will bring the MRC of connected packages down to $0). If the Threshold is set at $0, then charges are not applicable.
Reversing Fees
If you need to reverse the fees you may do so after canceling the package, see the article: Managing Transactions (Debits, Credits and Refunds) for instructions.
Preventing Fees From Being Applied
There may be scenarios where you do not want transactions to be applied to the customers account. For example if you are upgrading a package, or packages within a User Contract and are simply deleting the old contract in favor of a new one you may want to avoid going through the cancelation and reversal process above. Which approach is used for particular scenarios will need to be in line with the business practices of your organization. The process below will not apply (and therefore not log) any Penalty Fee or Charge remainder Amounts (assuming those options have been setup on the contract component). This may or may not be desirable depending on what data your organization needs to log or desires to omit from Reports.
Process:
Load the proper customer account
Click on the package name from the Overview tab or the Packages tab
Under the Components heading locate the Contract component
If you wish to delete the contract simply click the Delete link to the right
Note: If you need to match the contract configuration on a new package (package upgrade) or
new User Contract capture the contract details (particularly the Start and End Dates) before you
delete the existing contract componentIf you wish to leave the contract in place (to be canceled normally) but avoid charging penalty fees
Click the Contract link to edit the contract details
For user contacts you can simply set the threshold value to $0 to ensure no fees are applied, or alternatively adjust the penalty and charge remainder options as listed below
Package or User Contracts: Set the Penalty to $0 to charge no penalty fee is applicable
Package or User Contracts: Uncheck Charge Remainder to charge no residual fee upon package cancelation
Click Save