Salesforce describes the AppExchange as the place where partner apps find customers. We took that at face value. We built an app, joined the partner program, prepared every document we were asked for, and spent most of a month working through approvals.

In the end our listing was declined. Not because of the app, but for reasons of "ecosystem fit".

This is our experience, shared so the next founder knows what to expect. It's one company's story, not a verdict on every partner's journey.

The app was the easy part

AI Lead Qualifier for Salesforce scores leads from Facebook, Instagram and website forms with AI, and tells Meta and Google which leads were actually good, so ads find better customers. It runs entirely inside the customer's Salesforce account.

We built it properly. A released managed package, every test passing, over 90% code coverage, a clean scan for critical issues, documentation for every outside service it touches, a privacy policy, terms, a test account for reviewers, and a security-scanned website. Salesforce gave us a partner business org, a namespace and a Dev Hub. Everything said "you're in".

Two weeks to fix one sign-in setting

To link an app to its listing, you connect your partner org in Salesforce's Partner Console. For us it failed every time.

The cause turned out to be a setting on Salesforce's side. Newer Salesforce accounts have an older sign-in method switched off for security reasons, and the Partner Console still relied on it. In our org the setting was locked, with a note saying it had been disabled by Salesforce and couldn't be changed. So only Salesforce could switch it back on.

We found the likely cause early and put it in our very first message, with the error, the app's name, the status in our login history, the locked setting and screenshots. This is how the case went.

  • Day 1. An automatic reply, forwarding the case to an expert.
  • Day 2. A support engineer takes ownership and asks for time to review.
  • Day 3. The case moves to another team to find the right group.
  • Day 3, again. It moves to Technical Support specialists.
  • Day 9. A new case owner asks for our username, email, a description and screenshots, which were already in the case.
  • Day 12. We're asked for a screen recording of the same error.
  • Day 13. A new case is opened with a copy of our original description, owned by another team.
  • Day 14. Fixed. The setting was switched on and everything worked straight away.

Fourteen days and five teams, for a change that took moments once it reached the right person. Everyone we dealt with was polite. The problem was the path the case took, not the people on it.

Twenty days of "Awaiting Approval"

Meanwhile our listing showed "Awaiting Approval", with no further detail and no timeline. When we asked, we learned it was waiting for a business plan approval by a separate team, which we couldn't trigger ourselves.

This mattered because, as we understood it, the security review fee ($999 when we applied) is waived for free apps only once that approval comes through. So we held off on submitting the security review, and waited.

The answer

The decision came from a team we hadn't been in touch with before. They told us they couldn't move forward with onboarding at this time, that the decision reflected current priorities around "ecosystem fit and market alignment", and that it wasn't about any shortcoming in our application. Our submission stays in review and may be revisited in the future.

It's their store and their call, and we respect that. What we found hard was the timing. We were welcomed into the partner program, given the tools, and went through the listing builder, the brand review, the security review forms and two weeks of support before the question of fit was answered.

What would have helped

We'd offer these as suggestions, from one small partner.

  • Ask the fit question first. If fit can end the process, answering it at the start would save partners weeks of documentation and reviews.
  • Make partner tools work with new partner orgs. Or document the fix, so partners can ask for it on day one.
  • Carry the details across handovers. Each time we were asked again for information already in the case, it added days.
  • Share a little more on decisions. One sentence on what's missing would let a founder fix it or move on.
  • Show where a listing is in the queue. Even a rough timeline makes waiting easier to plan around.

What happens now

The app works and it's ready for customers. AI Lead Qualifier is a released, upgradable Salesforce package that you can install directly, and we're happy to help with setup. The store would have helped people find us. We'll find them ourselves. And if Salesforce takes another look, we'd welcome it.

If you're a founder thinking about the AppExchange, build for your customers first, sell directly from day one, and treat the store as a bonus. Get the "is this a fit?" question answered before you do anything else.

If you use Salesforce and run lead ads, install AI Lead Qualifier or talk to us.