KamoCRM

The platform org is not gated by its own catalog

FixBillingService
Shipped
27 ஆகஸ்ட், 2026 அன்று 8:10 AM UTC
Author
Kamo
Commit
1dc0157

The platform org was told "Requires the KamoPBX Hosting add-on" on its own phone-server screen, for an add-on it publishes. It owns the plan catalog, the add-on catalog and the Stripe products every other organization is sold from, and nobody invoices it - so its empty active_addon_codes means "there is nobody to bill us", not "not entitled". Reading that emptiness as a missing entitlement is circular. Fixed in both entitlement endpoints, because the mail gating had the identical defect and would have said the same thing about KamoMail Hosting. Also exempted from the two removal gates, which would otherwise refuse an add-on change on an organization that was never going to be charged for it. Keyed on orgs.is_top_level - the same flag PlatformRightsResolver uses to decide who may operate the platform - so "exempt from billing gates" and "may administer the platform" cannot drift into two different answers. Fails closed on a null flag or a missing row.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing