Subscriptions: one shared app and API allowance with optional top-ups
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 434
- Forks
- 21
- Avg merge
- 18m
- Merged PRs (30d)
- 326
Description
Provide a simple free allowance and one monthly subscription, with the same included usage available through the app and authenticated API. Keep the existing account ledger and optional prepaid top-ups.
Product decisions
- One account balance and allowance; no separate developer subscription or API bill.
- Account shows balance and direct Top up / Transfer / Usage links. Usage includes transaction history.
- Pricing clearly states what is free, the monthly price, included allowance and what happens at the cap.
- $40/month is a candidate from discussion, not an agreed or cost-validated price.
- Prefer payment on our site where practical; Stripe-hosted checkout is acceptable. Minimise manual Stripe catalogue setup.
- Keep developer details out of the ordinary subscription flow. No pay-per-article model in this scope.
Remaining work
- Measure actual model/tool costs and realistic light/heavy usage; choose sustainable free and paid allowances, concurrency and spending limits.
- Verify Stripe's supported recurring-payment and embedded-checkout options; automate any required product/price setup rather than assuming these objects can be avoided.
- Define allowance consumption order, reset/renewal, expiry/rollover, cap behaviour and optional top-ups. No automatic paid overage by default.
- Implement subscription lifecycle in account/: start, renew, payment failure, cancellation and expiry, with signed/idempotent webhooks and restart-safe grants.
- Apply the same entitlement checks to app and authenticated API use; preserve existing prepaid balances and service metering.
- Keep x402 pay-per-call settlement distinct; do not grant subscription access based on an unrelated payer address.
- Update Account and Pricing together with concise labels and an explicit monthly commitment.
- Verify duplicate/out-of-order webhook delivery, cancellation, renewal, allowance exhaustion, top-up and existing-account migration in Stripe test mode.
Depends on the delivery/reliability work in #1804 and #1823. v2.1.0 still uses daily quota and prepaid credits; this issue does not claim subscriptions are implemented.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the account/ subscription area and the existing Account and Pricing flows, then review dependencies #1804 and #1823. Use Stripe test mode to verify lifecycle, webhook, allowance, top-up, migration, and duplicate-delivery behavior; the work is done when the listed subscription decisions are implemented for both app and authenticated API use.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, backend, frontend, payments
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100