As long as a contract is active i get recurring revenue from it ever period (depending on the contract this is typically: monthly, quarterly, or yearly). Most contracts renew on the calendar year, but some renew on the contract signing date. Some are flat commission, some the commission changes yearly.
I had initially started doing this via a custom module, but hit the lookup field limitations, so I'm going to now do this with deals.
So i have a custom products module that will have the commission structure in it, putting custom fields in the deals sections and use functions to pull the data from the products module, and then calculate commissions are paid. Finally have a fucntion to 'auto create' a new deal every calendar/contract year, so i can track yearly expected commissions. If contracts get terminated early i figure i'll have to also add some extra logic to pro-rate the amount of commission expected.
Is this the best way to do this I do have zoho one, so possibly it could be done with subscriptions? or something else? But i'm a little confused on how to best implement it.