A managed package is a vendor-built Salesforce app installed in your org under a permanent namespace prefix; the vendor owns and upgrades its code, and your admins configure it.
A worked example
Example, with made-up numbers: an org moving from Salesforce CPQ to Kugamon runs both for one quote cycle. Because they are managed packages with different namespaces, they sit side by side without colliding: Salesforce CPQ's quotes are SBQQ__Quote__c records, Kugamon's are Quote records in the kugo2p namespace, and both read the same 500 Products and the same Price Book entries. For two weeks, reps create each quote in Kugamon and an admin re-creates it in CPQ to compare totals. On cutover day the admin removes create access on the old package and keeps read access for 30–90 days. Uninstalling SBQQ later deletes its objects and their data, so history is archived first. The steps are in the parallel-run playbook.
Managed is not the same as native
A managed package puts its objects in your org, which is necessary for Salesforce-native but not enough. Some packages still price on an outside engine or keep the quote of record on the vendor's platform and sync it in; Conga's optional TurboPricing, for example, runs pricing on Conga's compute platform under a separate license. Ask four things of any package: where the record of the sale lives, where pricing runs, which catalog it reads, and who can change it. Then ask how upgrades arrive, and test each one in a sandbox before production. The full test is on Salesforce-native CPQ, and the questions to ask a CPQ vendor cover the rest.
In Salesforce
Managed packages are how AppExchange vendors ship apps. Every object, field and class the package adds carries the vendor's namespace prefix, such as SBQQ__ for Salesforce CPQ or Apttus_ for Conga, and a namespace can't be renamed. The objects are custom objects in your org, so reports, permissions, Flow and the APIs work on them, but the package's own code is locked: only the vendor changes it, through upgrades. Licensed packages are assigned to users under Setup, Installed Packages, Manage Licenses. Uninstalling a package deletes its objects and their data. Revenue Cloud Advanced is not a managed package; it runs on core Salesforce objects.
How Kugamon handles it
Kugamon is a set of managed packages. Kugamon Quote to Cash, namespace kugo2p, holds quotes, orders, invoices, payments, shipments, the catalog, pricing and tax; the Subscription Management add-on, namespace kuga_sub, adds subscriptions, contract roll-ups, asset tracking and renewals. Revenue Management and Inventory are optional add-ons. Kugamon uses the standard Product, Price Book, Account, Opportunity, Contract and Asset objects alongside its own. It ships one or more major releases a month as package upgrades, to customer sandboxes first and to production about two weeks later. Kugamon licenses are managed separately from Salesforce licenses, so deactivating a user doesn't free their Kugamon license; remove it in Manage Licenses.
Related terms
Source: appexchange.salesforce.com