Creating a Salesforce extension: From idea to listing on AppExchange

Slava Pautaran on May 11, 2020
With more than 6 million AppExchange installs, it's no wonder that 89% of Fortune 100 companies are using apps from Salesforce's AppExchange to get things done smoothly and efficiently. Salesforce gives you access to its platform tools and infrastructure to create apps and extensions without having to configure anything from scratch. This saves you on R&D as well as maintenance, keeping your costs low.

Salesforce lets you start with an idea and turn it into a business. Take a look at the journey from ideation to being listed on AppExchange.

1. Start with an Idea

Maybe you have an idea for a stand-alone product, or perhaps you want to create an app that extends Salesforce's existing functions or customizes them to accomplish new tasks.

A couple of examples: Docusign is a standalone product that you may have used to manage signatures on electronic documents—and one that you can integrate with Salesforce. Do you have an idea for a similar app? If so, you can create it as an AppExchange app. Once you've added it to the AppExchange marketplace, it's available not only for you to use but also for others, and sending earnings your way.

Another option: You can customize existing Salesforce functions to accomplish a task that you need to handle in your business. For example, if you're a hotel owner using Salesforce to manage reservations, you might create an app that converts Salesforce leads into guests and adds a Salesforce calendar to handle rooms and reservations. Once you've created your customization, you can publish it on AppExchange.


2. Build Your App

Taking your app from the idea stage to the development stage involves two steps: finding the right people to build it and creating a development environment. The development environment includes development, staging, and production servers, all of which developers normally use for a fee and have to set up specifically for the technology they are using. Salesforce makes it easy to create this all-important development environment and does it as part of your subscription. Once you know what you want to create, all you have to do is fill out a simple form, and within five minutes, you'll be ready to start developing in the new environment. You'll also need to register the namespace for your final package. Choose carefully, as this can't be changed later in the process.

Are you planning to develop your app yourself, with in-house talent? If so, you're ready to begin creation. If you need to bring developers on board, now is the time to do so.

You can also publish a beta version of your new app to let your colleagues, or even a few selected customers, try it out. This functionality on the Salesforce platform lets you deal with any bugs before releasing your app into the marketplace.

3. Register as a Salesforce Partner

The Salesforce Partner Program gives you access to the Partner Community and the Environment Hub. Registering with the Partner Program is done via Salesforce's signup wizard. Salesforce guides you through the process step-by-step with online instructions delivered via email.

You don't have to complete the process in one sitting. In fact, you have 30 days to handle all the required steps. Especially important are filling in the Due Diligence Questionnaire and submitting the Compliance Certification. Salesforce requires this to make sure that its partners comply with applicable laws. The due diligence process, which can take several weeks, will require you to submit important documentation about your company, such as registration details, information about stakeholders, and code of conduct. Once registered, you're invited to join the Partner Community. You can expect to receive an invite within several days after completing the process.

4. Join the Partner Community

When you join Salesforce, you have the opportunity to create Partner Organization accounts. If you're already an app publisher and haven’t created a Partner account, you can still do so to take advantage of the valuable extended stats you'll receive on app downloads and usage.

Most companies choose to create several organizations, or orgs, as part of the app development process. To start a new org, all you have to do is click the Create Org button, which you'll find inside the Environment Hub.

It's a good idea to create at least a couple of orgs. Start with a development org and a packaging org. Inside your development org, you can write code and handle any customization as you create your app. Migrate the components of your app to the packaging org and use it to create a managed package. You may want to create a separate test org and a trial org as well. Part of creating an app is the security review, which ensures that apps aren't allowing unauthorized access to the Salesforce platform. The Salesforce security team also runs a check to detect code vulnerabilities and compliance with the platform’s security standards. Salesforce requires keeping customer data secure so that companies and individual users feel confident and safe when using AppExchange apps.

Once you're part of the Partner Community, you have everything you need to complete your app and get it ready for publishing. The basic steps you'll follow once you've created your orgs are:

  • Creating a listing with your company information
  • Choosing whether your app will be paid or free
  • Paying any required fees
  • Creating your app
  • Preparing and submitting documents for your security review
  • Undergoing your security review
  • Scanning your code to detect security vulnerabilities and ensure it's as efficient as possible
  • Receiving approval for your listing
  • Publishing your app

5. Follow up on Your App

Once you've completed, published, and released your app, you can expect to see installs and responses from customers. But what do you do if you realize you need to update your app with new features? Salesforce makes that easy.

If you're releasing a new version of your app within a year of your last security review, your updated version is automatically approved. All you have to do is update your AppExchange listing, and your customers will automatically get the most recent version of your app. If your last version was released more than a year ago, you may have to submit your updated app for a new security review before publishing it.

Salesforce also provides you with easy-to-use analytics tools to track purchases and understand and refine your customers' journeys. Various tools let you capture customer data and details about their behavior, giving you the information you need to optimize customer journeys and recalibrate your marketing goals and strategies. Salesforce's tools also integrate smoothly with Google Analytics, if you're already using that tool for other purposes.

Have you used Salesforce's AppExchange to get your apps onto the market? Tell us about your experiences in the comments.