Skip to content

Commit edc45f8

Browse files
author
Neo
committed
fix: remove subscription pricing from public repo
Move all pricing definitions to MTRX iOS app. Remove TIER_PRICES dict, replace hardcoded dollar amounts with environment variables in revenue reporter, and update all public-facing references to point users to the MTRX app for current pricing.
1 parent 94a8531 commit edc45f8

11 files changed

Lines changed: 115 additions & 57 deletions

File tree

README.md

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -110,16 +110,18 @@ curl -fsSL https://raw.githubusercontent.com/ItsDardanRexhepi/0pnMatrx/main/inst
110110

111111
## Current Status
112112

113-
0pnMatrx is **build-complete and offline-ready**. Every one of the 30
114-
blockchain services is wired through `ServiceDispatcher` and exercised
115-
by automated tests in `tests/test_e2e_flows.py` and
116-
`tests/test_dispatch_integration.py`.
113+
0pnMatrx is **build-complete and offline-ready**. The complete Web3
114+
surface — 50+ blockchain services spanning DeFi, NFT, identity,
115+
governance, payments, privacy, prediction markets, supply chain,
116+
insurance, compute, AI, energy, legal, and social — is wired through
117+
`ServiceDispatcher` and exercised by automated tests in
118+
`tests/test_e2e_flows.py` and `tests/test_dispatch_integration.py`.
117119

118120
What works today, no chain required:
119121

120122
- **Trinity / Morpheus / Neo agents** — full ReAct loop, tool use, session memory
121123
- **Contract Conversion pipeline** — pseudocode/Solidity/Vyper → optimised Solidity → Glasswing security audit → compile artifacts
122-
- **All 30 blockchain services** — return a standardised
124+
- **All 50+ blockchain services** — return a standardised
123125
`{"status": "not_deployed", ...}` response with a deployment guide
124126
whenever the chain is not yet configured. No fake addresses, no
125127
fabricated transaction hashes
@@ -149,7 +151,7 @@ Every decision made by every agent on 0pnMatrx passes through the Unified Rexhep
149151

150152
## Blockchain Infrastructure
151153

152-
30 core blockchain services run natively on Base (Ethereum L2) and
154+
50+ blockchain services run natively on Base (Ethereum L2) and
153155
return a well-formed `{"status": "not_deployed", ...}` envelope
154156
whenever a chain is not configured, so every flow is safe to exercise
155157
offline. All transaction fees are covered by the platform paymaster
@@ -203,8 +205,8 @@ User → MTRX iOS App → Bridge (/bridge/v1/) → Gateway → ReAct Loop → Pr
203205
Vision · Trajectory · Morpheus
204206
Rexhepi · Glasswing · Omega
205207
206-
30 Blockchain Services
207-
136 Platform Actions
208+
50+ Blockchain Services
209+
200+ Platform Actions
208210
```
209211

210212
---
@@ -333,8 +335,8 @@ See `SPONSORS.md` for the full sponsor list and `docs/SPONSORSHIP.md` for detail
333335

334336
## Subscription Tiers
335337

336-
| Feature | Free | Pro ($4.99/mo) | Enterprise ($19.99/mo) |
337-
|---------|------|----------------|----------------------|
338+
| Feature | Free | Pro | Enterprise |
339+
|---------|------|-----|------------|
338340
| Contract conversions | 5/month | 100/month | Unlimited |
339341
| NFT mints | 3/month | 50/month | Unlimited |
340342
| DeFi loan volume | $5,000/month | $500,000/month | Unlimited |
@@ -343,7 +345,7 @@ See `SPONSORS.md` for the full sponsor list and `docs/SPONSORSHIP.md` for detail
343345
| Team accounts ||||
344346
| Priority support ||||
345347

346-
All tiers include a 3-day free trial. See `/pricing` for full details.
348+
Subscription pricing available in the MTRX app. All tiers include a 3-day free trial.
347349

348350
---
349351

education/course-01-intro-to-0pnmatrx/03-understanding-the-gateway.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -93,11 +93,13 @@ Both methods are equivalent. Use whichever fits your HTTP client or framework. A
9393

9494
API keys are tied to subscription tiers:
9595

96-
| Tier | Price | Rate Limit | Features |
97-
|------|-------|------------|----------|
98-
| Free | $0/mo | Base tier | Core services, community support |
99-
| Pro | $4.99/mo | Elevated | All services, priority processing |
100-
| Enterprise | $19.99/mo | Highest | All services, dedicated support, custom plugins |
96+
| Tier | Rate Limit | Features |
97+
|------|------------|----------|
98+
| Free | Base tier | Core services, community support |
99+
| Pro | Elevated | All services, priority processing |
100+
| Enterprise | Highest | All services, dedicated support, custom plugins |
101+
102+
Subscription pricing available in the MTRX app.
101103

102104
## Rate Limiting
103105

extensions/README.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,13 @@ Returns a single component entry by ID.
5353

5454
## Tier Requirements
5555

56-
| Tier | Price | Description |
57-
|------|-------|-------------|
58-
| `free` | $0/month | Generous limits for personal use |
59-
| `pro` | $4.99/month | Higher limits, priority responses, early access |
60-
| `enterprise` | $19.99/month | Unlimited usage, team accounts, API access |
56+
| Tier | Description |
57+
|------|-------------|
58+
| `free` | Generous limits for personal use |
59+
| `pro` | Higher limits, priority responses, early access |
60+
| `enterprise` | Unlimited usage, team accounts, API access |
61+
62+
Subscription pricing is defined in the MTRX iOS app.
6163

6264
A limit of `-1` means unlimited. Boolean limits (`true`/`false`) indicate
6365
feature availability rather than count-based limits.

runtime/subscriptions/__init__.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,13 @@
55
what the client claims.
66
"""
77

8-
from runtime.subscriptions.tiers import SubscriptionTier, TIER_LIMITS, TIER_PRICES, get_limit, is_unlimited
8+
from runtime.subscriptions.tiers import SubscriptionTier, TIER_LIMITS, get_limit, is_unlimited
99
from runtime.subscriptions.usage_tracker import UsageTracker
1010
from runtime.subscriptions.feature_gate import FeatureGate
1111

1212
__all__ = [
1313
"SubscriptionTier",
1414
"TIER_LIMITS",
15-
"TIER_PRICES",
1615
"UsageTracker",
1716
"FeatureGate",
1817
"get_limit",

runtime/subscriptions/feature_gate.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
from runtime.subscriptions.tiers import (
2020
SubscriptionTier,
2121
TIER_LIMITS,
22-
TIER_PRICES,
2322
FEATURE_DESCRIPTIONS,
2423
get_limit,
2524
is_unlimited,

runtime/subscriptions/revenue_reporter.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
and referral_manager to produce unified revenue reports.
66
77
Revenue streams tracked:
8-
- Subscriptions (Pro $4.99/mo, Enterprise $19.99/mo)
8+
- Subscriptions (Pro, Enterprise — pricing defined in MTRX iOS app)
99
- Audit Service (Standard $299, Advanced $599, Enterprise $999)
1010
- Security Badges ($99/year per badge)
1111
- Certifications (per-track assessment fees)
@@ -18,6 +18,7 @@
1818
from __future__ import annotations
1919

2020
import logging
21+
import os
2122
import time
2223
import uuid
2324
from datetime import datetime, timezone
@@ -119,8 +120,8 @@ async def record_revenue(
119120
async def get_mrr(self) -> float:
120121
"""Calculate current Monthly Recurring Revenue.
121122
122-
Counts active Pro subscriptions * $4.99 plus active Enterprise
123-
subscriptions * $19.99 plus the sum of metered billing base
123+
Counts active Pro and Enterprise subscriptions at their
124+
configured price points plus the sum of metered billing base
124125
charges for all active metered API subscriptions.
125126
126127
Returns
@@ -162,7 +163,10 @@ async def get_mrr(self) -> float:
162163
)
163164
metered_base = row["metered_base"] if row else 0.0
164165

165-
mrr = (pro_count * 4.99) + (enterprise_count * 19.99) + metered_base
166+
# Pricing is defined in the MTRX iOS app — fetch from Stripe at runtime
167+
pro_price = float(os.environ.get("STRIPE_PRO_PRICE_AMOUNT", "0"))
168+
ent_price = float(os.environ.get("STRIPE_ENTERPRISE_PRICE_AMOUNT", "0"))
169+
mrr = (pro_count * pro_price) + (enterprise_count * ent_price) + metered_base
166170
return round(mrr, 2)
167171

168172
# ------------------------------------------------------------------

runtime/subscriptions/tiers.py

Lines changed: 66 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
"""Subscription tier definitions and limits for 0pnMatrx.
22
3-
Three tiers gate access to the platform's 30 blockchain services:
4-
- FREE ($0) — generous limits for personal use
5-
- PRO ($4.99) — higher limits, priority, early access
6-
- ENTERPRISE ($19.99) — unlimited usage, team accounts, API access
3+
Three tiers gate access to the platform's blockchain services:
4+
- FREE — generous limits for personal use
5+
- PRO — higher limits, priority, early access
6+
- ENTERPRISE — unlimited usage, team accounts, API access
7+
8+
# Pricing is defined in the MTRX iOS app
79
"""
810

911
from __future__ import annotations
@@ -44,6 +46,21 @@ def from_str(cls, value: str) -> "SubscriptionTier":
4446
"api_access": False,
4547
"priority_support": False,
4648
"early_access": False,
49+
"flash_loans": False,
50+
"bridge_per_month": 5,
51+
"private_transfers_per_month": 3,
52+
"prediction_market_bets_per_month": 10,
53+
"decentralized_storage_gb": 0.1,
54+
"streaming_payments_active": 3,
55+
"rwa_fractional_buy_per_month": 2,
56+
"perp_trading": False,
57+
"leveraged_positions": False,
58+
"ai_model_trading": False,
59+
"carbon_credits_per_month": 5,
60+
"game_tournaments_per_month": 3,
61+
"social_posts_per_month": 20,
62+
"zk_proofs_per_month": 5,
63+
"compute_jobs_per_month": 3,
4764
},
4865
SubscriptionTier.PRO: {
4966
"contract_conversions_per_month": 100,
@@ -61,6 +78,21 @@ def from_str(cls, value: str) -> "SubscriptionTier":
6178
"api_access": False,
6279
"priority_support": False,
6380
"early_access": True,
81+
"flash_loans": False,
82+
"bridge_per_month": 50,
83+
"private_transfers_per_month": 25,
84+
"prediction_market_bets_per_month": 200,
85+
"decentralized_storage_gb": 10,
86+
"streaming_payments_active": 25,
87+
"rwa_fractional_buy_per_month": 20,
88+
"perp_trading": False,
89+
"leveraged_positions": False,
90+
"ai_model_trading": False,
91+
"carbon_credits_per_month": 50,
92+
"game_tournaments_per_month": 25,
93+
"social_posts_per_month": 200,
94+
"zk_proofs_per_month": 50,
95+
"compute_jobs_per_month": 25,
6496
},
6597
SubscriptionTier.ENTERPRISE: {
6698
"contract_conversions_per_month": -1,
@@ -78,15 +110,24 @@ def from_str(cls, value: str) -> "SubscriptionTier":
78110
"api_access": True,
79111
"priority_support": True,
80112
"early_access": True,
113+
"flash_loans": True,
114+
"bridge_per_month": -1,
115+
"private_transfers_per_month": -1,
116+
"prediction_market_bets_per_month": -1,
117+
"decentralized_storage_gb": -1,
118+
"streaming_payments_active": -1,
119+
"rwa_fractional_buy_per_month": -1,
120+
"perp_trading": True,
121+
"leveraged_positions": True,
122+
"ai_model_trading": True,
123+
"carbon_credits_per_month": -1,
124+
"game_tournaments_per_month": -1,
125+
"social_posts_per_month": -1,
126+
"zk_proofs_per_month": -1,
127+
"compute_jobs_per_month": -1,
81128
},
82129
}
83130

84-
TIER_PRICES: dict[SubscriptionTier, float] = {
85-
SubscriptionTier.FREE: 0.00,
86-
SubscriptionTier.PRO: 4.99,
87-
SubscriptionTier.ENTERPRISE: 19.99,
88-
}
89-
90131
# Human-readable feature descriptions for upgrade messages
91132
FEATURE_DESCRIPTIONS: dict[str, str] = {
92133
"contract_conversions_per_month": "contract conversions/month",
@@ -104,6 +145,21 @@ def from_str(cls, value: str) -> "SubscriptionTier":
104145
"api_access": "direct API access",
105146
"priority_support": "priority support",
106147
"early_access": "early access to new features",
148+
"flash_loans": "flash loans",
149+
"bridge_per_month": "cross-chain bridges/month",
150+
"private_transfers_per_month": "private transfers/month",
151+
"prediction_market_bets_per_month": "prediction market bets/month",
152+
"decentralized_storage_gb": "decentralized storage (GB)",
153+
"streaming_payments_active": "active payment streams",
154+
"rwa_fractional_buy_per_month": "RWA fractional purchases/month",
155+
"perp_trading": "perpetual trading",
156+
"leveraged_positions": "leveraged positions",
157+
"ai_model_trading": "AI model trading",
158+
"carbon_credits_per_month": "carbon credit purchases/month",
159+
"game_tournaments_per_month": "tournament entries/month",
160+
"social_posts_per_month": "on-chain social posts/month",
161+
"zk_proofs_per_month": "zero-knowledge proofs/month",
162+
"compute_jobs_per_month": "compute jobs/month",
107163
}
108164

109165

tests/test_subscriptions.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
from runtime.subscriptions.tiers import (
1212
SubscriptionTier,
1313
TIER_LIMITS,
14-
TIER_PRICES,
1514
get_limit,
1615
is_unlimited,
1716
)
@@ -95,11 +94,6 @@ def test_from_str_unknown_defaults_to_free(self):
9594
assert SubscriptionTier.from_str("unknown") == SubscriptionTier.FREE
9695
assert SubscriptionTier.from_str("") == SubscriptionTier.FREE
9796

98-
def test_tier_prices(self):
99-
assert TIER_PRICES[SubscriptionTier.FREE] == 0.00
100-
assert TIER_PRICES[SubscriptionTier.PRO] == 4.99
101-
assert TIER_PRICES[SubscriptionTier.ENTERPRISE] == 19.99
102-
10397
def test_all_tiers_have_limits(self):
10498
for tier in SubscriptionTier:
10599
assert tier in TIER_LIMITS

web/landing.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -496,8 +496,8 @@ <h3>Free</h3>
496496
<!-- Pro -->
497497
<div class="price-card featured">
498498
<h3>Pro</h3>
499-
<div class="price-amount">$4.99<span>/mo</span></div>
500-
<div class="price-period">per user</div>
499+
<div class="price-amount">Pro</div>
500+
<div class="price-period">See MTRX app for pricing</div>
501501
<ul class="price-features">
502502
<li>Everything in Free</li>
503503
<li>Managed cloud gateway</li>
@@ -512,8 +512,8 @@ <h3>Pro</h3>
512512
<!-- Enterprise -->
513513
<div class="price-card">
514514
<h3>Enterprise</h3>
515-
<div class="price-amount">$19.99<span>/mo</span></div>
516-
<div class="price-period">per user</div>
515+
<div class="price-amount">Enterprise</div>
516+
<div class="price-period">See MTRX app for pricing</div>
517517
<ul class="price-features">
518518
<li>Everything in Pro</li>
519519
<li>Dedicated infrastructure</li>

web/pricing.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -336,8 +336,8 @@ <h1>Simple, <em>Transparent</em> Pricing</h1>
336336
<!-- Pro -->
337337
<div class="price-card featured">
338338
<div class="price-tier">Pro</div>
339-
<div class="price-amount">$4.99<sub>/mo</sub></div>
340-
<div class="price-period">per user</div>
339+
<div class="price-amount">See MTRX app</div>
340+
<div class="price-period">for pricing</div>
341341
<div class="trial-badge">3-Day Free Trial</div>
342342
<ul class="price-features">
343343
<li class="highlight">100 contract conversions / month</li>
@@ -358,8 +358,8 @@ <h1>Simple, <em>Transparent</em> Pricing</h1>
358358
<!-- Enterprise -->
359359
<div class="price-card">
360360
<div class="price-tier">Enterprise</div>
361-
<div class="price-amount">$19.99<sub>/mo</sub></div>
362-
<div class="price-period">per user</div>
361+
<div class="price-amount">See MTRX app</div>
362+
<div class="price-period">for pricing</div>
363363
<div class="trial-badge">3-Day Free Trial</div>
364364
<ul class="price-features">
365365
<li class="highlight">Unlimited contract conversions</li>
@@ -390,8 +390,8 @@ <h2 class="section-title">Full Feature Comparison</h2>
390390
<tr>
391391
<th>Feature</th>
392392
<th>Free</th>
393-
<th>Pro &mdash; $4.99/mo</th>
394-
<th>Enterprise &mdash; $19.99/mo</th>
393+
<th>Pro</th>
394+
<th>Enterprise</th>
395395
</tr>
396396
</thead>
397397
<tbody>

0 commit comments

Comments
 (0)