mirror of
https://github.com/profullstack/agentbbs.git
synced 2026-08-13 14:27:27 +00:00
Rebrand paid tier to $99 Founding Lifetime Member
Replace the $10 "Premium" pitch with a $99 Founding Lifetime Member offer (first 1,000 accounts) and list every bonus feature in the join@ upgrade prompt: personal email + webmail, custom domains, Tor access, and lifetime locked-in pricing. - payments: PremiumPriceLabel/default amount $10 -> $99, add FoundingCap - join@ offer + already-paid welcome + gated-route upsell copy - README + interface doc comments Price stays env-overridable via AGENTBBS_PREMIUM_AMOUNT. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
52b06d8cfe
commit
2a9d841ddb
4 changed files with 30 additions and 19 deletions
|
|
@ -1,4 +1,4 @@
|
|||
// Package payments gates the one-time $10 lifetime Premium membership on
|
||||
// Package payments gates the one-time $99 Founding Lifetime membership on
|
||||
// CoinPay (coinpayportal.com). It talks to the CoinPay REST API directly over
|
||||
// HTTP — no `coinpay` CLI needs to be installed on the host.
|
||||
//
|
||||
|
|
@ -7,7 +7,7 @@
|
|||
// COINPAY_API_KEY Bearer key for the CoinPay API (cp_live_…)
|
||||
// AGENTBBS_COINPAY_MERCHANT_ID merchant/business id payments are created under
|
||||
// AGENTBBS_COINPAY_API_URL API base (default https://coinpayportal.com/api)
|
||||
// AGENTBBS_PREMIUM_AMOUNT fiat amount (default 10)
|
||||
// AGENTBBS_PREMIUM_AMOUNT fiat amount (default 99)
|
||||
// AGENTBBS_PREMIUM_CURRENCY fiat currency (default USD)
|
||||
// AGENTBBS_PREMIUM_BLOCKCHAIN settlement chain (default eth)
|
||||
//
|
||||
|
|
@ -35,11 +35,15 @@ const PodTerm = 31 * 24 * time.Hour
|
|||
|
||||
// PremiumPriceLabel is the human-readable price for the one-time lifetime
|
||||
// membership offered at join@.
|
||||
const PremiumPriceLabel = "$10 (lifetime)"
|
||||
const PremiumPriceLabel = "$99 (lifetime)"
|
||||
|
||||
// FoundingCap is the marketing cap on Founding Lifetime memberships — the offer
|
||||
// is pitched as available to the first this-many accounts.
|
||||
const FoundingCap = "1,000"
|
||||
|
||||
// Premium charge parameters — overridable via env so the offer can change
|
||||
// without a rebuild.
|
||||
func PremiumAmount() string { return envOr("AGENTBBS_PREMIUM_AMOUNT", "10") }
|
||||
func PremiumAmount() string { return envOr("AGENTBBS_PREMIUM_AMOUNT", "99") }
|
||||
func PremiumCurrency() string { return envOr("AGENTBBS_PREMIUM_CURRENCY", "USD") }
|
||||
func PremiumBlockchain() string { return envOr("AGENTBBS_PREMIUM_BLOCKCHAIN", "eth") }
|
||||
|
||||
|
|
|
|||
|
|
@ -82,8 +82,8 @@ type Store interface {
|
|||
// SetPremiumPayment records the CoinPay payment id of a pending premium
|
||||
// charge so a later visit can verify whether it settled.
|
||||
SetPremiumPayment(userID int64, payID string) error
|
||||
// GrantPremium marks the account as a lifetime premium member (the $10
|
||||
// one-time membership), recording the CoinPay payment reference. Idempotent.
|
||||
// GrantPremium marks the account as a lifetime premium member (the $99
|
||||
// Founding Lifetime membership), recording the CoinPay payment reference. Idempotent.
|
||||
GrantPremium(userID int64, paymentRef string) error
|
||||
|
||||
RecordSession(userID int64, username, remote, route string) (int64, error)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue