Actual MRR vs. Booked MRR
Hi Zuora team,
I was wondering what the best way is to report booked MRR?
Just to avoid confusion: Let's say a customer signed a deal with an MRR of 1000 on 27.09.2016, with the subscription not starting before 01.10.2016 though. For us the booked MRR would kick in already on the 27th of September, whereas actual MRR would not be affected until 1st of October.
I know that Zuora has the contracted MRR, but from what I can see there's no specific date that I can attach to it. The only date I can see is the contract effective date when setting up a subscription, but that reflects actual MRR then not booked. When I go in the reporting section and choose subscriptions I can see a field called "customer acceptance date", I don't see that field though when actually setting up a subscription.
Also I would need to be able to put a different booking date/customer acceptance date to upsells.
- Base contract for 1000 MRR signed on 27.09.2016, starting 01.10.2016 for 12 months.
- Upsell to that contract (additional users) for 200 MRR signed on 24.12.2016, starting 01.01.2017 for the remaining 9 months.
With the above scenario the BOOKED MRR for that customer should show 1000 in sep + oct + nov and 1200 from dec onwards whereas ACTUAL MRR would show 0 in sep, 1000 in oct + nov + dec and then 1200 from jan onwards.
Could you please advise on how to properly set up the booking dates/customer acceptance dates for base contracts and upsells and what is the best report to run for a booked MRR overview/how to set it up.
Re: Actual MRR vs. Booked MRR
Since your booked MRR is focused on WHEN the subscription or amendment was created and not when it takes effect (Contract Effective Date) you probably want a report focused on the subscription object CreatedDate. Every Zuora object always captures a created date and an updated date, these are always set by Zuora (unlike Contract Effective Date you can't set them directly in any way) and these are always exposed in the data sources and so are available for reporting.
So with your example, the subscripton was created on 27.9, so use the MRR from the associated charges belonging to that subscription object. You created the upsell on 24.12 with an amendment, that created a new version of the subscription, meaning a new subscription object was created by cloning the original one, which will have a created date of 24.12. So with this example, the new booking number is the sum of MRR of the associated charges on that newly created subscription object.
If it's not obvious already, you'll need to use the RatePlanCharge data source as the data source for your report.
Also all of the above assumes you understand the Zuora concept of cloning the subscription object everytime an amendment is applied. The cloned subscription object picks up a new version number (going from 1 to 2 in your example). You can determine easily that this is the most up to date subscription object, and not one of the old versions, as it's Status field will be 'Active'. That original version 1 subscription object will now have a status of 'Expired'. This is often confusing for customers as a subscription Status of Expired doesn't mean the subscription has expired, it means that particular subscription object is no longer the most recent version of the subscription, it means that that subscription object has 'expired', not the entire actual subscription. Also if a subscription status is 'Active' that ONLY means it's the most recent version of the subscription, it doesn't actually mean the subscription itself is active. If your example subscription didn't renew and termed out after 12 months with no further changes, the v2 subscription object will still say 'Active' for ever. 'Active' in this context just means that this subscription object is the most recent version of the subscription and not that the subscription is actually active. It usually is, as most subscriptions don't quietly end, they're usually cancelled, when the pick up a status of 'Cancelled', but not always.
I also have to caution you can't just sum MRR for all the charges on that v2 subscription object that has a status of Active. Your example didn't include a situation where a remove product amendment was applied, but when a remove product is applied to a subscription the rate plan charges all still stay attached to the new subscription object, but the RatePlanCharge 'Effective End Date' is set to be the removal date. So when you're scanning all the charges belonging to a subscription you need to filter on the Effective Start Date and Effective End Date of the charges, those dates tell if you this is a charge that was removed in the past (Effective End Date is in the past) or a charge that's active today (Effective Start Date is on or before today AND Effective End Date is after today) or a charge that's been added but won't take effect until the future (it's Effective Start Date is after today).
Since you want a booking number you need to filter out any charges where the charge's Effective End Date is before 'today', the day you are running the report for - for the subscription object with a status of 'Active' and a 'CreatedDate' in the period you care about, December, in your example.
Great question, sorry the answer is so complicated, but Zuora needs to track changes over time. Just post any follow up questions here.