What is AppExchange?
AppExchange is an enterprise cloud marketplace with ready-to-install apps, solutions, and consultants that let you extend your Salesforce capabilities.
The Salesforce team introduced AppExchange at Dreamforce 2005. Did you know that the Salesforce marketplace was originally called the “App Store”? The phrase, that we all are accustomed to using in relation to the Apple marketplace, was first created and trademarked by Salesforce (in 2006), and later presented to Apple by Salesforce CEO Marc Benioff as a token of appreciation to Steve Jobs, who inspired him to build a cloud software ecosystem1, now known as AppExchange.
In 2021 AppExchange celebrated 10 million installs2. For someone that may sound like a pretty small number, but if you take into account that the download of a single app may affect hundreds or thousands of users across a company, it will be hard to quantify how many people are using these apps.
Just think, 91% of the Fortune 500 runs at least one app from AppExchange3. With all that in mind, AppExchange is a great way to reach millions of potential users around the world.
How to Start? - First, Join The Salesforce Partner Community
The first step on the path to the AppExchange Marketplace is to become a Salesforce AppExchange Partner.
The Partner Program gives you access to the Partner Community, where you can get help and training information, log cases for support issues, and collaborate with other partners. You will also get access to a bunch of different benefits including Environment Hub, Channel Order App, License Management App, etc.
If you’re planning to build solutions for AppExchange, then it’s worthwhile to sign up! Be prepared to pitch your app idea to Salesforce, when applying for the Partner Program.
Then, Design and Build Your Solution
Be sure to have a viable app idea.
You are to have a clear vision: what problems your application will solve and what value it will deliver to the end users. You're gonna have to decide on whether the application will be free or paid, hybrid or Salesforce native whether is there any need to integrate it with external systems, etc.
You need to clearly formulate what you expect to get out of this app. While it may not be possible to define all its features at this stage, describe the app with all its features as you see them in the first version.
We suggest entering the market fast with an MVP. There is no need to create a complete app with all the planned features, build only core functionality and see if the companies want to download your application. Remember, there is always the possibility of adding more features in version 2. This approach will help you reduce the initial cost of running an app and get important feedback from real users more quickly.
App development is by no means a quick process and comprises a number of milestones: requirements analysis, solution design preparation, development itself, and testing. Before diving into the development process, learn more about Security Requirements for AppExchange Partners and Solutions and Architectural Considerations for Group and Professional Editions.
Don't Forget Your Application Security
Run automated scanning tools and manually test your solution throughout the app development process. The app needs to comply with all Salesforce guidelines in order to be published.
AppExchange provides a list of common security threats that they test for:
- SOQL and SQL injection;
- Cross-site scripting;
- Non Secure authentication and access control protocols;
- Vulnerabilities specific to the Salesforce platform, such as record-sharing violations.
You can find the Source Code Scanner, which is also referred to as the Checkmarx scanner, and the Chimera scanner on the Partner Security Portal. These scanning tools meet the test requirements for many AppExchange solutions.
When all security issues are resolved, your application is ready for submission to the AppExchange Security Review.
Finally, Publish Your Solution on AppExchange
To publish and enable Salesforce users to install and use your app in their orgs, you need to follow these steps:
- Connect your packaging org to the Publishing Console on the Partner Community Portal;
- Create Your Provider Profile;
- Create Your AppExchange Listing;
- Add a Business Plan to AppExchange Listing;
- Submit a Due Diligence and Compliance Certification;
- Select an Installation Option;
- Register & Install the LMA (License Management Application).
After you've done the above steps, complete the Security Review Cycle. The process might seem quite complex, but the Salesforce Checklist makes it a lot easier. Simply keep track of every step that needs to be completed for a successful submission to review.
The AppExchange Security Review can take anywhere between 3-4 weeks. Please, take into account holidays and maintenance days as they can significantly delay the process. If you don’t get a reply, you can always check the review status on your listing’s Security Review tab.
If, however, the reviewer declines your application, you'll need to fix it and resubmit the build again. This cycle can repeat two or three times until the application passes the review.
Once the application has passed security review, make your AppExchange listing public and available for the community. Your app is now on AppExchange! Hello World!
Submitting an app to the AppExchange Marketplace can be both exciting and nerve-racking, even for experienced developers. However, the rewards for millions of Salesforce users worldwide can negate the time and detail spent on the process.
The details provided in the article are expanded from ISVforce Guide: Build and Distribute AppExchange Solutions.