What You’ll be Doing to Earn This Superbadge
- Create validation and assignment rules
- Create roll-up summary fields
- Create a formula field that returns text from dates
- Create a sales process and associated record type
- Create an invocable process to send emails and create tasks
- Create a process to submit opportunities for approval and create related records
- Create an approval process
- Create a flow and distribute that flow with a Flow component in a Lightning page
- Create a process to evaluate dates and update records
Pre-work and Notes
- Grab a pen and paper. You may want to jot down notes as you hear about the requirements.
- Create a new Trailhead Playground for this superbadge. Your new org will have all the special data you need. (Be sure to create a Trailhead Playground, and not a regular Developer Edition org. Only Trailhead Playgrounds have the correct data for these challenges.) Using this org for any other reason might create problems when validating the challenges.
- Use Lightning Experience.
- Install the Process Automation superbadge unmanaged package. If you have trouble installing a managed or unmanaged package or app from AppExchange, follow the steps in this article.
- Although you can only create a single user in your Trailhead Playground org, you can create as many permissions (profiles, roles, public groups, and so on) as you need to complete this challenge. We recommend creating a user to test your various automations. Create a user named Nushi Davoud for this purpose. Assign Nushi as your manager for approvals.
- Because this superbadge involves USD currency, you may need to update your personal preferences. From your personal settings, go to Personal | Language & Time Zone and change the Locale to English (United States) and the Language to English and click Save.
- Don’t use Workflow to solve any challenges.
RB Robotics makes and installs automated assembly systems for US factories. Until last year, sales were strong and steady. Then the founder’s eight-year-old granddaughter built a multicolored wheeled robot for her school science project, and on a whim the founder added the design to RB’s list of products. To everyone’s surprise, those sassy RainbowBots became a smash hit. Toy stores, online retailers, and maker faires can’t keep them in stock. The RainbowBot publicity has created fresh buzz around RB’s traditional assembly system products as well. Sales in both divisions are booming, and the company is scrambling to keep up with demand.
Like all your friends, you have a RainbowBot at home. It’s colorfully adorable. And helpful! You’ve programmed it to water your plants and put away the socks your dog likes to “rescue” from your bedroom floor. When you land a job as a Salesforce admin at RB Robotics, you’re super excited, and you can’t wait to tell everyone all about it.
Until you report to work on Day 1. Then you learn that the company hasn’t yet automated their processes in Salesforce. A robotics company that does everything by hand? Oh, the irony. Reps request deal approvals by emailing a manager. Managers evaluate leads one by one before assigning them to the right team. The list of inefficient, error-prone business processes goes on and on. Meanwhile, the company is missing out on opportunities because the sales team spends too much time keeping records and not enough time closing deals. If RB Robotics is going to capitalize on its RainbowBot moment, the company needs to get automated, fast. Fortunately, you know just the Salesforce tools to handle the job.
RB Robotics uses the following standard objects to store all deal-related data.
- Account - Businesses that purchase from RB Robotics (Customer - Direct and Customer - Channel) and businesses that might purchase in the future (Prospect)
- Contact - Prospective and existing customers of RB Robotics
- Opportunity - Potential sale of Rainbowbots or RB Robotics assembly systems
For the purposes of this Superbadge, RB Robotics uses one custom object.
- Robot Setup—Information about RB Robotics robot setup. Each robot setup record has a Master-Detail relationship to an opportunity.
- Day of the Week
Your first step is to set up a series of video calls with RB's head of sales. She's on the road a lot, but automating the sales process is a high priority for her. Dial in to listen to her describe how she wants her reps to use Salesforce, and then configure your Trailhead Playground org to meet her requirements. If you need them, you can download the transcripts of the videos and the slide presentation here.
1. Automate Leads
Hi there. It’s so great to have you on board! This last year has been pretty crazy. Thanks to RainbowBots, we have a ton of new leads. That’s fantastic, but we’re actually having a hard time managing our leads now.
There are two main reasons: we’re creating leads where there’s no fit with our offerings, and we’re losing time getting promising leads assigned to the right team.
The first issue is the leads where there’s no fit. We’re a US-based company, and for now we can only do business in the United States. I can’t do anything with international leads. But sometimes international leads get entered into Salesforce anyway, and then we have to go in and disqualify them. Dealing with those disqualified leads costs us time. Is there any way you can prevent a lead from being created if the lead isn’t located in a US state?
Also I know there’s a State/Province field and a country field in Salesforce. Can you make sure that all leads have the standard 2-character US state abbreviation in the State/Province field and either US, USA, United States, or nothing in the Country field? OK, so that’s the first issue.
The second issue is routing leads to the right group. We have two sales teams: Rainbow Sales and Assembly System Sales. Last year we created a new website to promote our RainbowBots. The Rainbow sales team should be handling all the leads that come from the web. A bunch of other leads come from our partners and from lists that we buy--all those leads are potential buyers of our assembly systems. So the Assembly System team should get those leads.
Right now, I’m the one who checks each lead as it comes in, and then I assign it to the right team member. It would be great if you could make sure that leads from the website get assigned to the Rainbow Sales team, and leads from partners and purchased lists get assigned to Assembly System Sales.
If each group had a queue in Salesforce they could work from as the leads come in that would be best. Thank you!
2. Automate Accounts
Great job on leads! Your work has already made a huge difference to the sales teams. So the next thing we need help with is accounts.
We have new customers who call us directly, and the sales reps qualify them on the spot and create accounts. But reps who talk and type at the same time sometimes make mistakes and enter bad data, and then our finance and logistics divisions aren’t happy. We really have to make sure that nobody can save a new account unless the shipping and billing state fields are valid US state abbreviations, and the country field is either blank or US, USA, or United States.
Another thing that drives the other divisions crazy is when customer account names change. It’s fine for everybody to see all accounts created in Salesforce, but if the account type is either “Customer - Direct” or “Customer - Channel” we don’t want anybody to change the name.
Oh, speaking of what reps can see, we want them to have all the information they need as quickly as possible. For example, on the account detail they should be able to see the number of deals, number of won deals, when the last deal was won, what our win percentage is, and the total amount of deals we won.
I also want to add a “Call for Service” field to the account detail. We have a great reputation for quality robots and superior service, and I want to keep it that way. So if the last time we won a deal on the account is more than two years ago, the “Call for Service” field should say YES. If not, it should say NO. Then our reps will know it’s time to call on that account to see how our robots are doing.
3. Create Robot Setup Object
Thanks for your work on accounts! That was amazing. Now let’s talk about robot setup. All of our products have to be delivered and set up by our technician team. The good news is that our technician team also uses Salesforce. But that team doesn’t need to be clicking around through all our opportunities looking for information about when to deliver and set up an order. So for every sale we close and win, we need a setup record created that we can use for scheduling. If we delete a deal for any reason the setup record should also be deleted. We need to see the setup date and we also need a spot for the technician or the rep to make notes about the setup.
It would be great to automatically calculate and display which day of the week the setup date is, like Monday, Tuesday, Friday, or whatever.
Our tech team head says the records can just be auto-numbered--they don’t need the name of the account or anything. Just use a term before the number like ROBOT SETUP so we know it’s a delivery and setup record. Since this is a totally new system for setups you can start the numbering for these records at zero.
4. Create Sales Process and Validate Opportunities
Hey, nice work on the setup records! Now let’s talk about our sales process. Most of the stages we use are already in Salesforce, but one of the stages we track doesn’t come standard so it would be great if you’d add it. These are the stages we use: Prospecting, Qualification, Proposal/Price Quote, Negotiation/Review, Awaiting Approval, Closed Won, and Closed Lost. We want all our reps to follow the same process, so everyone should see those stages for every opportunity.
Oh, and the biggest deals--anything over $100K--have to be approved before they can close. We should have a way to show on the record that the deal is approved--maybe you can add an “Approved” checkbox to the opportunity. Obviously the sales reps shouldn’t be able to check that box. Only system administrators like you and sales managers should be able to check it. By the way, all of us sales managers here have the Custom: Sales Profile in Salesforce.
5. Automate Opportunities
Our finance group wants to know whenever we create opportunities for any prospect account or customer account. They also want to know when we win deals. It’s a lot of busywork for our reps to send emails one by one to that group every time they create an opportunity and win a deal. Oh, and for prospect accounts, the account owner really should be sending out our welcome packet of marketing materials, but sometimes they forget. I remember that when we interviewed you for this job, you talked about a Salesforce tool called Process Builder that you use to automate work like this. I was especially impressed when you talked about how you can re-use one process in multiple other processes. That sounds like just the kind of efficiency we’re trying to achieve here. For example, we’re always sending emails to finance and creating tasks for account owners, so you can probably create a process for those that you can use more than once.
Basically we want to send an email to the finance group whenever an opportunity is created for a prospect or customer account, and at the same time to create a task for the account owner, but only if the account is a prospect.
And when we win a deal, we want another email sent to the finance group.
Here are some details for these tasks on some slides I created.
OK, now let’s talk about what should happen when opportunities are in various stages of our sales process. Because now that I think about it, it makes sense to do some of those things I just mentioned only if an opportunity is in the Prospecting stage, and other things happen later.
When an opportunity is in Negotiations, we want to automatically submit it for approval if the amount is over $100,000.
When we win a deal, we want to create a setup record and set the setup date for 180 days from the close date. And don’t forget that Finance wants to know about it, so we have to email them again.
Now, about that approval process. The opportunity owner’s manager has to approve all deals over $100,000. We don’t want anyone making changes to the opportunity after it’s been submitted for approval. At this point, it should be in the Awaiting Approval stage.
If the manager approves, the opportunity goes to the Closed/Won stage.
If the manager doesn’t approve, the opportunity should go back to Negotiation/Review stage. Changes to the record are OK at that point.
6. Create Flow for Opportunities
One of the things that’s happened since we’ve been growing so fast is that we have a ton of new sales people coming on board, and they can’t always find the products they want easily when they talk to customers. Reps who are looking for RainbowBots have to scroll through all the assembly system products, and reps who are trying to find assembly systems have to go through all the RainbowBots. And we’re also launching a new line of flying CloudyBots, so the number of product choices is growing.
We need some kind of product quick search thingy or widget on the page that lets reps filter products on the type of robot they want to buy and see a list right on the opportunity record.
I want a rep who’s talking to a customer to just check a box on the opportunity for the type of robot the customer wants, and like magic that widget thingy shows all products of that type. You’ll probably be glad to hear that our products are already in Salesforce. Every product has either RainbowBot, CloudyBot, or Assembly System in the product name.
7. Automate Setups
First off, I have to apologize. I forgot to tell you in one of our earlier meetings that our technicians don’t work on weekends. The tech team manager ran a report and saw that some robot setup dates are on Saturday or Sunday. We need to make sure that any robot setup date that would fall on Saturday or Sunday is set to the following Monday instead. You don’t have to worry about any robot setups we already have in the system--just focus on new records. I bet you can use that Process Builder tool again to have Salesforce automatically update the robot setup record when it’s created.
Thanks so much for all your help!