Skip to content

Max subscribers: full developer payout + no third-party discounts#301

Merged
simonhamp merged 1 commit intomainfrom
max-sub-full-payout
Mar 27, 2026
Merged

Max subscribers: full developer payout + no third-party discounts#301
simonhamp merged 1 commit intomainfrom
max-sub-full-payout

Conversation

@simonhamp
Copy link
Copy Markdown
Member

Summary

  • Full payout for Max subscribers: When a Max subscriber purchases a third-party plugin, the developer receives 100% of the sale (0% platform fee instead of the usual 30%)
  • No subscriber discounts on third-party plugins: Third-party plugin prices are always shown at the regular price tier — subscriber/EAP discounts only apply to official plugins
  • Adds User::hasMaxTierAccess() to detect Max tier via Stripe subscriptions or Anystack licenses
  • Adds optional platformFeePercent parameter to PluginPayout::calculateSplit()

Test plan

  • Unit tests for calculateSplit() with default, zero, and custom platform fee percentages
  • Feature tests for hasMaxTierAccess() across Max, Pro, Mini, and no subscription
  • Feature tests verifying third-party plugins always return regular price for all user tiers
  • Feature tests verifying official plugins still get subscriber/EAP discounts
  • Feature tests for payout creation: Max subscriber → 0% fee on third-party, normal 30% on official
  • Feature tests for payout creation: Pro/non-subscriber → normal 30% fee on third-party
  • Updated existing tier pricing tests to use official plugins where discounts are expected
  • All 67 tests pass

🤖 Generated with Claude Code

…r discounts on third-party plugins

- Add User::hasMaxTierAccess() to check Max subscription via Stripe or Anystack
- Waive platform fee (0% instead of 30%) when Max subscriber buys third-party plugin
- Third-party plugins always show regular price (no subscriber/EAP discounts)
- Official plugins retain existing tier-based discount behavior
- Add PluginPayout::calculateSplit() optional platformFeePercent parameter

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@simonhamp simonhamp marked this pull request as ready for review March 27, 2026 12:16
@simonhamp simonhamp merged commit 35fb99c into main Mar 27, 2026
2 checks passed
@simonhamp simonhamp deleted the max-sub-full-payout branch March 27, 2026 16:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant