Happy Sipping, and Happy Salesforce-ing! 🌟☕📈
Let’s dive into the world of Salesforce Billing to debug Revenue Recognition rules.
My name is Smriti Sharan. I am an avid blogger and YouTuber. I break down complex concepts with fun relatable real-time examples so that learning is fun. Wow!!!
You Can connect with me on:
Subscribe to my YouTube Channel
Whatsapp Link for Salesforce CPQ Group to make Salesforce CPQ and Billing learning fun and easy!
I have covered every topic in Revenue Recognition in Detail so that you have complete knowledge after reading this article.
Topics Covered:
- Basic Terminology of Revenue Recognition
- Revenue Transaction Workflow
- Step by Step Process Explanation using Flow Chart
- Revenue Transaction and Revenue Schedule with Diagram Explanation
- Revenue Recognition Data Model
- Understanding Every Single Object and Field Used in Revenue Recognition
- Step by step to Execute Revenue Recognition in the Org
Let’s Begin our learning with a coffee sipping!
Use Case
Imagine you are running a chain of Starbucks stores across different states. and your store offers a variety of tasty treats 🌟✨
:
Three Key Rules:
When a customer visit Starbucks, he must decide how he’ll pay for his coffee. Think of this like creating a product in Salesforce Billing.
There are three main things to consider:
- Billing Rule – First, the customer decides how he wants to pay.
- Tax Rule – Second, he thinks about taxes.
- Revenue Recognition Rule – Third, he considers when Starbucks should count its payment as revenue.
In this article we will dive deep into Revenue Recognition
Basic Terminology
Revenue Recognition
Imagine you go to Starbucks and pay ₹150 for a coffee. But in Starbucks’ accounts, that ₹150 isn’t counted as earned just yet. Think of it as a promise between you and Starbucks.
They owe you a coffee ☕worth ₹150. Only when you have that coffee in your hand, does Starbucks mark that ₹150 as truly earned. This ensures transparency and honesty in their financial dealings.
So, in essence, Revenue Recognition is the practice of waiting until a sale’s obligations / responsibilities are met before considering the money from that sale as earned revenue.
Revenue Transaction Workflow
Let’s understand with an example. Smriti orders her Caramel Macchiato for ₹200, and Rahul chooses his Frappuccino for ₹250 at Starbucks, these orders trigger the Revenue Transaction Workflow in Salesforce Billing. This isn’t about the coffee itself, but the financial representation of that coffee. The moment Smriti’s payment processes, a ₹200 Revenue Transaction is documented. Similarly, Rahul’s choice adds another ₹250 transaction.
But what does this mean?
It means that every item sold, every service rendered, and every rupee exchanged at Starbucks is tracked, documented, and prepared for the eventual Revenue Recognition through Salesforce Billing.
Based on the pre-set configuration, revenue transactions are automatically generated, ensuring there’s a seamless flow from a customer’s order to its financial representation in Starbucks’ books.
Step by Step Process with help of Flow Chart
Let’s understand this flow chart with help of another Example!
Scenario – Imagine Starbucks has just introduced a new loyalty subscription service, called “Starbucks Monthly Sip”. For a fixed fee of ₹2000 per month, subscribers get a special coffee drink every day of the month.
Here’s how Salesforce would help Starbucks recognize revenue for this subscription:
1.Event Occur:
Event occurs as first things like on order activation or invoice posted, credit note posted, Debit note posted.
In this example, Smriti, Starbucks lover, signs up for the “Starbucks Monthly Sip” subscription on the 1st of January. The event occurs i.e. The order is activated, and she’s charged ₹2000.
2.Revenue Transaction Generated:
Now, while Smriti has paid the full ₹2000 upfront, Starbucks hasn’t yet delivered all the coffee drinks she’s paid for. So, Salesforce tags this ₹2000 as ‘deferred revenue’. Imagine this as Starbucks saying, “We owe you 30 coffees, Smriti!” By default, status is deferred and not recognized.
3.Finance Period Closes:
The revenue transaction will be connected to a particular finance period. At close of financial period the status field will have three values – Open, Pending Close and Close.
Let’s jump to the end of January. Starbucks, with the help of Salesforce, examines how many of those special coffee drinks Smriti has availed. Let’s say Smriti had her special coffee on 25 days of January.
4.TAX Debit Account US (revenue Transaction Updated):
When the financial period closes, revenue recognition record will be updated. In the current example, out of the ₹2000, Starbucks recognizes ₹1666.67 (₹2000/30 days x 25 days) as the revenue for January. The remaining ₹333.33 will be recognized as revenue only when Smriti avails of her pending 5 coffees. On the tax front, the appropriate taxes on the recognized revenue (₹1666.67) are calculated and updated in the TAX Debit Account for the US (assuming Starbucks is following US-based accounting standards, even in India).
Salesforce ensures that Starbucks recognizes revenue only for the services it has rendered.
Revenue Transactions & Revenue Schedules with Diagram explanation
Let’s dive deeper into the “Starbucks Monthly Sip” scenario in relation to the provided diagram.
1. Order Product
When Smriti subscribes to the “Starbucks Monthly Sip”, this is captured in the “Order Product” section of Salesforce. Her commitment to the ₹2000 subscription fee is registered here. It’s like placing an order for a bulk package of coffee drinks for the entire month.
2. Invoice Line
After Smriti’s order, an invoice is generated. This “Invoice Line” in Salesforce is a formal request for her payment of ₹2000. It represents her entire obligation for the month. Think of it as a bill sent to Smriti, detailing her subscription service and the amount due.
3. Revenue Transaction
Once Smriti makes her payment of ₹2000, Salesforce processes this under “Revenue Transaction”. At this point, even though Starbucks has her money, they recognize it as ‘deferred revenue’. In simple terms, while the cash is in Starbucks’ bank, on their books, it’s as if they’re saying, “Thanks for the advance, Smriti! We owe you 30 special coffees now.”
4. Finance Period
This refers to the duration or period being considered for financial reconciliation, in this case, January. By the end of January, Starbucks, using Salesforce, will evaluate how many special coffees they’ve actually served to Smriti.
5. Revenue Schedule
Here’s where the revenue recognition process gets detailed. Based on Smriti’s usage, Salesforce’s “Revenue Schedule” component calculates the exact revenue to be recognized. If Smriti enjoyed her special coffee for 25 out of 30 days in January, Starbucks would recognize a proportionate amount of her ₹2000. Specifically, for those 25 days, ₹1666.67 (₹2000/30 days x 25 days) will be counted as ‘earned revenue’.
6. Credit and Debit Note Line:
Let’s assume that midway through January, Smriti felt the service wasn’t up to the mark one day and demanded a partial refund for that day. Salesforce would then generate a “Credit Note Line” for that specific day’s value. Conversely, if there were any additional charges or corrections needed, a “Debit Note Line” would be used.
7. Visualization:
The bar graph at the bottom of Diagram showcases a real-time view of how much revenue is recognized versus deferred. With each coffee Smriti avails, the recognized amount increases, while the deferred revenue decreases. By the end of January, all should ideally be recognized if Smriti drank her coffee daily.
Revenue Recognition Data Model
This diagram illustrates the “Revenue Recognition Data Model” within Salesforce. It breaks down the process of recognizing revenue, connecting products to revenue recognition treatment.
Let’s discuss the Revenue Recognition model in Depth.
Now that we have got a basic understanding. We will go into a more detail understanding every Single Object and Field Used in Revenue Recognition. It will be actually very Detailed.
Don’t worry, I will make learning as easy as possible. After reading through this material, you will get a complete end-to-end overview of this concept.
Are you ready to deep dive with me into the ocean of Revenue recognition?
let’s go!
1. Product Object:
This represents the actual goods or services that a company sells. In our Starbucks example, the “Product” would be the “Starbucks Monthly Sip” subscription.
2. Order Product Object:
This is the formal record of the order once a customer, like Smriti, chooses to purchase a product. It’s essentially the agreement or commitment that the customer makes to buy the product.
3. Revenue Recognition Rule:
This is a predefined set of guidelines that determine how and when revenue from a sold product should be recognized. For our coffee subscription, the rule might state something like: “Recognize revenue daily as each coffee is availed.
Please focus on a field on Revenue Recognition Rule called – ‘Create Revenue Schedule (Yes / No)’?
Based on the Starbucks “Starbucks Monthly Sip” we would create a Revenue Schedule. The “Starbucks Monthly Sip” subscription involves multiple performance obligations spread over a month (i.e., delivering a special coffee drink every day of the month). Since the recognition of revenue is spread out over a period and isn’t realized all at once upon payment, it necessitates the creation of a Revenue Schedule.
This schedule would allow Starbucks to allocate and recognize the revenue accurately daily as each coffee is delivered to the subscriber.
4. Revenue Recognition Treatment Object:
This object give details how much revenue to recognize. For instance, if Smriti avails herself of her coffee for a day, then 1/30th of the subscription fee would be recognized as revenue for that day.
Let’s break down each field in Revenue Recognition Treatment using the Starbucks “Starbucks Monthly Sip” subscription:
1. Processing Order Field:
It’s the sequence in which Starbucks would apply different treatments if they had multiple options.
Example: Let’s assume Starbucks had two types of treatments: Regular Subscribers and Premium Subscribers. If Smriti is a Premium Subscriber, Starbucks will apply the premium treatment first before any other.
2. Type Field:
This defines how Starbucks calculates the value of each coffee served to Smriti. It has three values – Percentage, Flat Amount, Remainder.
For the “Starbucks Monthly Sip”, it’s a Flat Amount – every coffee is part of the ₹2000 subscription.
Let’s understand the picklist values:
Field Values | Explanation |
Percentage | If Starbucks wanted to recognize a specific portion of the revenue from Smriti’s subscription, they’d choose this.
Let’s say Smriti’s ₹2000 subscription is split where 80% covers the coffees and 20% covers additional benefits like a free snack. Starbucks would set this type to “Percentage” and specify “80%” for the coffees. |
Flat Amount | If Starbucks has a fixed amount to recognize for each coffee or service they provide to Smriti, they’d choose this.
If each coffee from the subscription is priced at a fixed ₹50, irrespective of its actual cost, they’d set this type to “Flat Amount” and specify “₹50”. |
Remainder | If Starbucks wanted to recognize whatever is left after other treatments have been applied, they’d choose this.
Let’s say ₹1800 of Smriti’s subscription is recognized through other treatments, and they want to capture the remaining ₹200 automatically without specifying a percentage or flat amount. They’d set this type to “Remainder”. |
3. Percentage Field:
If Starbucks were to recognize a part of the revenue based on a percentage, this is where it would be defined.
If only 75% of ₹2000 was for the coffee and 25% was for additional benefits (like a free snack), then Starbucks would use this field to split the payment.
4. Revenue Schedule Creation Action Field:
This is the action that starts the process of recording how much Starbucks owes Smriti in terms of coffee and how much they’ve served.
Every time Smriti has a coffee, this action helps Starbucks note it down against the ₹2000 she paid.
The “Revenue Schedule Creation Action” dropdown specifies when Salesforce Billing should create a revenue schedule, based on different transaction-related events.
Let’s dive into each option using our Starbucks “Starbucks Monthly Sip” subscription scenario.
Field Value | Explanation |
Order Activation | A revenue schedule would be created when Smriti’s coffee subscription order is activated.
Example: As soon as Smriti subscribes to the “Starbucks Monthly Sip” plan and the order is confirmed, a revenue schedule is generated. This schedule lays out when and how the ₹2000 she paid will be recognized over the month. |
Invoice Posting | A revenue schedule would be created when an invoice related to Smriti’s subscription is posted.
Example: Starbucks sends Smriti an invoice at the start of the month for her subscription. When this invoice is posted in Salesforce Billing, a corresponding revenue schedule is made to determine revenue recognition. |
Credit Note Posting | A revenue schedule is created when a credit note for Smriti is posted.
Example: Suppose Smriti faced an issue, and Starbucks issued a ₹500 credit note. When this credit note is posted in Salesforce Billing, a new revenue schedule will be generated to adjust the revenue recognition for the month. |
Debit Note Posting | A revenue schedule is generated when a debit note related to Smriti’s subscription is posted.
Example: If Starbucks had to charge Smriti an additional ₹300 for an add-on, she chose midway through the month, posting this debit note would trigger a new revenue schedule. |
5. Revenue Distribution Method Field:
It defines how Starbucks spreads out or recognizes the ₹2000 over a period (in this case, a month). Since Smriti gets a coffee every day, the distribution method would recognize approximately ₹66.67 (₹2000/30) daily.
6. Revenue GL Rule Field:
This is the rule that ensures all transactions (every coffee Smriti drinks) are recorded correctly in Starbucks’ financial books.
It ensures that for each coffee Smriti drinks, around ₹66.67 is no longer ‘owed’ to her and is instead recognized as revenue for Starbucks.
7. Revenue Finance Book Field:
The official record where all of Smriti’s coffee transactions (and everyone else’s) are recorded for financial purposes.
In this case at the end of January, Starbucks can check this book to see how many coffees they owe Smriti or if they’ve served her all 30 coffees.
8. Revenue Legal Entity Field:
This represents the legal entity (the specific branch or franchise) of Starbucks that is responsible for serving Smriti her daily coffee.
If Smriti always goes to the Starbucks branch at Connaught Place, New Delhi, then that branch is the legal entity responsible for her subscription.
9. Revenue Agreement Association Field:
The “Revenue Agreement Association” dropdown allows businesses to determine how revenue recognition treatments link to different agreements or changes in the order products. Using our ongoing Starbucks “Starbucks Monthly Sip” subscription scenario with Smriti
Field Value | Explanation |
Not Applicable | This implies that there isn’t a specific revenue agreement associated with Smriti subscription.
Example: Starbucks simply offers the “Starbucks Monthly Sip” without any additional agreements or special terms, so there’s no need to associate a revenue agreement. |
New Agreement | A revenue recognition treatment would be associated when a new revenue agreement is created for Smriti’s subscription.
Example: Smriti decides to modify her subscription and enters into a new agreement with Starbucks, like a 3-month prepayment for some discount. When this new agreement is made, the revenue recognition will adhere to the terms of this new agreement. |
Manual | This allows Starbucks to manually associate a revenue recognition treatment to a specific agreement or scenario for Smriti.
Example: Suppose Smriti has a unique arrangement with Starbucks due to some promotional event. Starbucks can manually determine how they want to recognize the revenue from her subscription. |
Revised Order Product | If there are changes to the original subscription order product for Smriti, a revenue recognition treatment would be associated based on those revisions.
Example: Midway through the month, Smriti decides to upgrade her “Starbucks Monthly Sip” to include an extra drink daily. This revision to her order would trigger a new revenue recognition treatment based on the changed terms. In the Starbucks scenario, if there’s no special agreement or modification to Smriti’s subscription, “Not Applicable” would be the appropriate choice. |
10. Revenue Schedule Amount Field:
Imagine Smriti, our loyal Starbucks customer, walks into a Starbucks store to buy her special coffee using her “Monthly Sip” subscription. Every time she does, Starbucks has to decide how to account for the money she’s already paid for the subscription in their financial books. These accounting decisions are based on the choices from the dropdown you’ve shown.
Let’s explore the “Starbucks Monthly Sip” using the Revenue Schedule Amount options:
Field Value | Explanation |
Revenue Allocation Amount | This is the amount Starbucks decides to allocate or set aside for each cup of coffee Smriti receives. Let’s say, for some reason, each coffee’s value isn’t the same – maybe one day it’s a fancy espresso and the next it’s a simple latte. |
Transaction Amount | This is the actual amount charged for a particular transaction. In Smriti’s case, she’s already paid ₹2000 for the whole month. So, each day, when she gets her coffee, the transaction amount would be a fraction of that ₹2000 based on the number of days in that month. |
Revenue Expected Amount | This would be the amount Starbucks expects to recognize for that cup of coffee. Maybe they anticipate recognizing more revenue on weekends when more people come in. |
Revenue Liability Amount | It’s the money Smriti has paid, but Starbucks hasn’t yet recognized as revenue. If Smriti’s 15 days into her subscription, the liability amount would be the money set aside for the remaining 15 days. |
Bookings Amount | This is the total value of the deal. For Smriti’s monthly subscription, this would be the total ₹2000 she paid upfront. |
Now that Field related to Revenue Recognition Treatment Object are discussed, we will move to next object.
5. Revenue Distribution Method Object:
If Starbucks uses a system like Salesforce Billing for its “Monthly Sip” subscription. The revenue from Smriti’s ₹2000 monthly payment doesn’t just land in Starbucks’ account all at once. It’s recognized bit by bit, every day when she comes in for her coffee.
But how does Starbucks decide this breakdown?
Good Question. That’s where “Revenue Distribution Methods” come in.
The “Revenue Distribution Method” is Starbucks’ rulebook for spreading out or recognizing the ₹2000 over the month. It determines if they should recognize the revenue all at once or spread it over the month.
Let’s understand all the fields of Revenue Recognition Model in detail.
Name Field: Specify the record Name.
Monthly Recognition Proration Field:
It only has one value i.e., Number of Days.
Imagine Smriti subscribes to the “Monthly Sip” on the 10th of July. Instead of recognizing the entire ₹2000 on this day, Starbucks chooses to spread it out over the entire month. So, with a Monthly Recognition, they’d distribute the revenue based on the number of days in July, not just from the 10th onward.
Type:
Choose the action that causes Salesforce Billing to create a revenue transaction when an order product activates. For instance, if you choose an invoice, Salesforce Billing creates the revenue transaction when invoice posts.
Let’s discuss all the picklist values in depth.
Field Value | Explanation |
Order | This is when Smriti decides she wants to subscribe to the “Monthly Sip” program and places an order for it. At this stage, no money might have exchanged hands, but she has expressed a clear intention to purchase. |
Invoice | After placing her order, Starbucks would generate an invoice detailing the cost of the “Monthly Sip” subscription. It’s essentially a bill asking Smriti to pay ₹2000 for her subscription. |
Credit Note | Imagine after a week, Smriti realizes she won’t be available for the rest of the month and decides to cancel her subscription. Starbucks, wanting to keep a loyal customer happy, might decide not to refund her money but instead give her a credit note. This note means that she has a credit of a certain amount with Starbucks, which she can use later. |
Debit Note | On the contrary, suppose Starbucks made an error and undercharged Smriti for the “Monthly Sip”. They could issue a debit note, indicating that Smriti owes them a bit more money than what was initially billed. |
Revenue Transaction Creation Process Field:
This is how Starbucks automatically makes a note of each coffee given to Smriti. If she collects her coffee every day, this process will record it daily Automatically. However, if Starbucks sets this to ‘Manual’, they’ll have to note down every time Smriti has her coffee by hand. Most of times we choose ‘Automatic.’
Distribution Method Field:
Field Value | Explanation |
Monthly | Starbucks would divide her ₹2000 by the days in the month. So, if she signed up on 10th July, they would recognize the revenue for the full month, not just from the 10th onward. |
Full Recognition | This is like Smriti paying ₹2000 upfront, and Starbucks counting that full amount immediately, irrespective of how many coffees she has during the month. |
Manual | Think of this as Starbucks manually recording every coffee drink Smriti gets from them. They don’t use an automatic system here but choose when and how to note down each transaction |
Revenue Schedule Term Start Date and Revenue Schedule Term End Date Field:
This defines when Smriti’s subscription starts and ends. Let’s say she subscribes from 10th July to 10th August. Starbucks would use these dates to decide how to spread out the ₹2000.You can pull start and end date from order product, invoice line, credit note or debit note.
Full Recognition Date Field:
It’s like the date when Starbucks acknowledges the money Smriti paid. If they choose ‘Full Recognition’, they recognize the whole ₹2000 right when she pays.
6. Finance Book Object:
Represents the company’s financial records. All revenue transactions are recorded in this book, ensuring that every entry matches to the appropriate accounting standards and regulations.
7. Finance Period:
This is the specific time frame (like January) during which the revenue is recognized. By the end of this period, a reconciliation is performed to ensure all revenues are recognized appropriately.
8. Revenue Transaction Object:
This is the formal record of recognized revenue. Each time a portion of the revenue is recognized (like when Smriti avails herself of her daily coffee), a transaction is recorded here.
Now you are done with the hard part of understanding minute details of Revenue recognition objects and fields.
Yay!
Step by Step Guide to Execute Revenue Recognition in Salesforce Billing
1. Create Revenue Finance Book and Periods
2. Create GL Accounts for Revenue
3. Create Revenue GL Rule and Treatments for Coffee Transactions:
- Navigate to the Revenue GL Rules section.
- Create a rule named “Coffee Sales Rule” that applies when a product category is “Beverage”. For treatments, set actions such as recognizing the revenue immediately upon sale.
4. Create Revenue Distribution Method for Coffee
- Go to Revenue Distribution Method.
- Create a method named “Daily Coffee Sales”. This might mean revenue is recognized daily as coffees are sold.
5. Create Revenue Recognition Rule for Coffee Sales:
- In the Revenue Recognition Rule section, define a rule named “Coffee Rule”.
- Set criteria like “Product = Coffee”.
- Link this rule with the “Daily Coffee Sales” distribution method.
6. Create Revenue Recognition Treatment for Coffee:
- Navigate to Revenue Recognition Treatment.
- Create a treatment that outlines how coffee sales revenue should be handled. For example, “Recognize revenue when coffee is sold”.
7. Update the Coffee Product Record with New Revenue Recognition Rule:
- Go to the Product Records section.
- Search for the “Coffee” product.
- Update its details to reflect the “Coffee Rule” for revenue recognition created in step 5.
That’s how Salesforce Billing handles revenue recognition rule at Starbucks.
Happy Sipping, and Happy Salesforce-ing! 🌟☕📈
Revenue Recognition Salesforce Billing