1.2 AppExchange Solutions & Package Selection
Key Takeaways
Native solutions primarily use Salesforce platform components. Verify actual integrations, permissions, data exports, mobile support, and compliance requirements; a marketplace label does not guarantee them.
Managed packages provide intellectual property protection for publishers, support seamless push upgrades, and certified packages do not count against the subscriber org's custom object or field limits.
Unmanaged packages distribute open-source metadata that can be freely edited by the subscriber, but they do not support automated upgrades and their components consume standard org edition limits.
Composite applications execute business logic or data storage on external infrastructure via APIs, requiring rigorous review of third-party SLAs, latency, and regulatory compliance standards like HIPAA or GDPR.
AppExchange Solutions & Package Selection
The Salesforce AppExchange is the enterprise cloud marketplace for pre-built business applications, Lightning Web Components, Flow templates, data enrichment services, and certified consulting partners. For a Salesforce Platform App Builder, knowing when to purchase or install an AppExchange package versus building a custom solution is a cornerstone of effective solution architecture.
Adopting an existing AppExchange solution can accelerate deployment timelines from months to days, reduce custom development, while leaving the customer responsible for configuration, testing, access, and upgrade review. However, installing third-party metadata introduces architectural implications regarding security boundaries, org edition limits, licensing management, and upgrade lifecycles.
Application Architecture Classifications: Native vs. Composite vs. Non-Native
When evaluating third-party solutions on the AppExchange, app builders must analyze where the application's code executes and where its data resides. AppExchange solutions are categorized into three primary architectural tiers:
1. Native Applications
- 100% Platform Architecture: Built exclusively on the Lightning Platform using custom objects, Apex, Flow, and Lightning Web Components.
- Zero External Infrastructure: Requires no external servers, cloud databases, or third-party web hosting.
- Data Residency & Trust Boundary: Review every callout, export, email, analytics feature, and connected service before concluding where data travels; the native label alone is insufficient evidence.
- Platform Inheritance: Uses platform security capabilities, but custom Apex must enforce the appropriate sharing and CRUD/FLS context. Encryption compatibility and backup coverage require separate verification.
- Offline Support: Mobile and offline functionality depends on the components and vendor implementation; test the required devices and disconnected workflows.
2. Composite Applications
- Hybrid Architecture: Combines native Salesforce components (such as custom objects, tabs, or Lightning components) with external cloud infrastructure (e.g., Amazon Web Services, Microsoft Azure, Google Cloud, or Heroku).
- External Processing: Complex computational engines, heavy document generation services, or machine learning algorithms execute on external compute servers and communicate with Salesforce via bi-directional REST or SOAP APIs.
- Security & Compliance Boundary: Customer data is transmitted across the internet to third-party endpoints. App builders must verify whether the external vendor maintains required compliance certifications (e.g., HIPAA for healthcare, SOC 2, or GDPR).
- Availability & Latency: Dependent on external infrastructure uptime and API network latency. If the vendor's external servers experience an outage, composite features within Salesforce fail.
3. Non-Native Applications
- External Software-as-a-Service (SaaS): Standalone external web applications that connect to Salesforce exclusively via API integrations to sync, extract, or push records.
- Minimal Salesforce Metadata: Typically install little or no custom metadata inside the Salesforce org, relying instead on API integrations to interact with standard CRM objects.
Note
The Native Seal of Trust: Look for the "Native App" badge on AppExchange listings when evaluating solutions for highly regulated industries (banking, healthcare, defense). Verify the listing documentation and actual data flows. A native badge or passed security review does not establish compliance with a customer's legal or residency obligations.
Managed Packages vs. Unmanaged Packages: Core Mechanics
AppExchange software is distributed through packages—containers that hold metadata components such as custom objects, fields, Apex classes, flows, and page layouts. The two primary package models possess radically different operational characteristics:
Managed Packages
Managed packages are the primary vehicle for Independent Software Vendors (ISVs) selling commercial products on the AppExchange:
- Intellectual Property (IP) Protection: The publisher's Apex code and proprietary algorithms are completely obfuscated and hidden. Subscribers cannot view or extract the underlying Apex logic.
- Seamless Upgrades: Publishers can push automatic updates, bug fixes, and major version releases directly to subscriber orgs subject to component manageability rules; subscribers must still regression-test upgrades.
- Namespace Isolation: All packaged components are prefixed with a unique, globally registered namespace (e.g.,
cve__Claim__corcve__calculatePayout()). This prevents any naming collisions with custom fields or objects created by the subscriber org. - Org Limit Exemption: Packages that have successfully passed the rigorous Salesforce AppExchange Security Review and achieved "AppExchange Certified" status do not count against the subscriber org's eligible edition allocations for apps, tabs, objects, and fields; hard org limits and other allocations still apply.
- Licensing Control: Publishers manage user access, site-wide licenses, and expiration dates dynamically using the License Management App (LMA).
- Component Immutability: Subscribers cannot delete packaged fields, alter packaged validation rules, or modify core packaged components, protecting the application against accidental corruption.
Unmanaged Packages
Unmanaged packages are used primarily to distribute open-source code, starter kits, application templates, or proof-of-concept accelerators:
- Zero IP Protection: All underlying source code, Apex classes, flows, and components are 100% visible and accessible in the subscriber org.
- Fully Editable: Once installed, the metadata becomes part of the subscriber's local org configuration. Developers and administrators can edit, extend, or delete components freely.
- No Upgrade Path: Unmanaged packages cannot be upgraded. Once installed, there is no ongoing connection to the original publisher. If the publisher releases an updated version, the subscriber must manually reconcile code diffs or uninstall and reinstall.
- Hard Limit Consumption: Every custom object, custom field, and tab installed via an unmanaged package counts directly against the subscriber org's hard edition limits (e.g., the 200 custom object limit in Enterprise Edition).
- Uninstallation Hazards: Uninstalling an unmanaged package permanently deletes the packaged components and all associated record data unless explicitly backed up beforehand.
Architectural Comparison: Managed vs. Unmanaged Packages
| Architectural Dimension | Managed Package | Unmanaged Package |
|---|---|---|
| Primary Intended Use Case | Commercial ISV solutions, production enterprise tools | Open-source templates, code samples, training assets |
| Source Code Visibility | Obfuscated / Hidden (IP Protected) | 100% visible and editable |
| Upgrade & Patch Path | Supports automated push upgrades and patch releases | No upgrade path; independent after install |
| Namespace Prefix | Required; isolates components (e.g., ns__Object__c) | No namespace; merges into subscriber default schema |
| Edition Limit Impact | Eligible edition-limit exemptions; hard limits remain | Counts 100% against org edition limits |
| Component Modifiability | Core components and Apex logic are locked from editing | All components can be edited, extended, or customized freely |
| Licensing Control | Managed dynamically via License Management App (LMA) | No license management; available to all assigned org users |
| Uninstallation Behavior | Cleanly removes components; data can be backed up | Uninstalls components and associated data permanently |
Vetting Criteria for Third-Party Packages
Before installing any AppExchange solution into an enterprise environment, an app builder must perform structured due diligence across five architectural gates:
- Salesforce Security Review: Verify that the package has successfully passed the official Salesforce AppExchange Security Review. This multi-tiered evaluation includes static code analysis, software dependency vulnerability scanning, and dynamic penetration testing by Salesforce security engineers.
- Edition & Feature Compatibility: Confirm that the package is compatible with the subscriber org's Salesforce edition (Professional, Enterprise, Unlimited, Performance) and does not require missing platform features (such as Person Accounts, Multi-Currency, or Digital Experiences).
- Governor Limits Footprint: Certified managed packages receive their own isolated namespace governor limits for SOQL queries (100) and DML operations (150). However, critical system resources—specifically total CPU time (10,000 ms) and heap size (6 MB)—are shared across the entire transaction! A poorly optimized managed package can exhaust shared CPU time and crash client transactions.
- Sandbox Installation Protocol: Never install an AppExchange package directly into a production org. Always deploy to a Developer Pro or Full Sandbox first. Execute regression testing to verify that packaged triggers or validation rules do not conflict with existing automations.
- Release Cadence & Support SLAs: Review the publisher's release history to ensure rapid adoption of Salesforce's triannual major releases (Spring, Summer, Winter) and verify formal vendor support tiers.
Important
Shared Governor Limits in Managed Packages: While certified managed packages have their own isolated 100 SOQL query limit for their namespace, CPU execution time and heap size limits are strictly global. If your org's native Apex uses 7,000 ms of CPU time and an installed managed package trigger takes 3,500 ms in the same transaction, the entire transaction fails with a System.LimitException: Apex CPU time limit exceeded error.
Tip
Unmanaged Packages as Starter Kits: Use unmanaged packages only when you require a one-way scaffolding tool or customizable template that your internal engineering team intends to own, modify, and maintain indefinitely without vendor intervention.
Note
AgentExchange and marketplace evolution: AgentExchange launched in 2025 for Agentforce building blocks such as actions, topics, prompt templates, and agent templates. In April 2026 the new AgentExchange unified AppExchange, AgentExchange, and Slack Marketplace discovery. Inspect each listing’s solution type, distribution model, and dependencies; the current catalog also includes traditional apps. Section 12.2 covers the extension decision framework.
Official Source Check
Checked October 19, 2026: Package field allocations and hard limits.
An internal software engineering team wants to distribute a reusable set of standard Lightning Web Components, custom helper classes, and dashboard templates across multiple internal business unit orgs. Each org's developers must be able to view, adapt, and rewrite the underlying code to suit localized regional logic, and no centralized version upgrades will ever be pushed. Which packaging mechanism should be selected?
A Certified Managed Package with subscriber-editable custom settings
An Unmanaged Package distributed via URL or package repository
A Managed Package with Beta namespace activation
A Change Set configured with Inbound Deployment connections
Cloud Kicks is currently utilizing 196 of their Enterprise Edition allotment of 200 custom objects. The executive team requires an off-the-shelf warranty management application from the AppExchange that introduces 14 custom objects to track warranty claims, parts, and return authorizations. How can the app builder fulfill this requirement without purchasing additional custom object licenses?
Install an unmanaged package and convert 10 obsolete custom objects into standard objects
Submit a request to Salesforce Support to temporarily expand custom object limits for unmanaged code
Install an AppExchange Certified Managed Package whose objects do not count against the org limit
Deploy a composite application and map the 14 objects externally using Salesforce Connect indirect lookups
A hospital requires document generation entirely inside Salesforce with no transfer of patient data to third-party services. Which candidate should the team evaluate first, confirming the documented data flow and configuration before installation?
A 100% Native AppExchange application built entirely on the Lightning Platform
A Composite AppExchange application utilizing an external cloud microservice for PDF rendering
A Non-native SaaS application connected via bi-directional OAuth REST APIs
An Unmanaged Package configured with external Named Credentials to a third-party document engine
Sections you finish are checked off in the contents.