Contracts, Deferred Revenue, and partial contract refunds

Bowen, Peter pbowen at aboutws.com
Tue Jan 20 09:28:37 PST 2004


I'm lumping these three items together, because I think that they're
related.  If not - let's discuss...

	Contracts: 
		- Contract revenue should be tracked with three values:
			o Total Value
			o Recognized/Used Value
			o Deferred/Unrecognized Value
		- Setup fees need to be able to be prorated across x months
		- Cancellation fees must be tracked and applied upon early
cancellation
		- Remaining Balances should be credited and applied for
upgrades.
		- We may need some concept of contract level
			--which downgrades incur a cancellation fee
		- We can add a contract level that contains packages, or
		- We can beef up packages to be contracts (Since they pretty
much are)

	Basic Functionality:
		- Contract Inception:
			o Contract total value calculated based on the
length of the contract
				-- Prorating, free months, etc could affect
this
			o Apply the first month's usage to recognized and
against deferred.
		- Daily
			o Apply revenue based on billing cycle against
deferred

		- Contract Upgrade/Downgrade
			o Adjust recognized and deferred based on actual
used
			o Apply Cancellation fee(s) (if applicable)
				-- Apply to revenue against deferred
			o Create new contract (Contract Inception)

		- Contract Cancellation
			o Adjust recognized and deferred based on policy
(actual vs. end of period)
			o Apply cancellation fee(s) to revenue against
deferred
			o Refund remaining deferred as credit
				
	Note that some of these could apply to monthly contracts as well -
if the user upgrades to an annual contract, mid cycle, s/he should get
credit toward the new contract.


	I know that this is a big bite to chew, but let's discuss since this
is what I have to implement.  I'm going to use either in a home grown biller
or by contributing to Freeside. :)

-Peter



More information about the freeside-devel mailing list