Fee economics
| Stream | Who pays | Rate | Developer share |
|---|---|---|---|
| Subscription | Subscriber monthly | You set monthlyPrice | 80% of invoice (platform 20% via Stripe application_fee_percent) |
| Success fee | Subscriber on profitable closed trades | You set successFeePercent (e.g. 10-20% of profit) | 80% of collected success fee (platform 20%) |
| Both | Subscribers | Subscription + success fee | Combined per above |
Worked example: success fee
A subscriber follows your signal with a 2,000 profit USD). Your agentsuccessFeePercent is 15% (applied to profit on close, not entry notional):
- Success fee assessed: 300**
- Platform share (20%): $60
- Your net success fee: $240 (claimable via strategy-fee claims)
Success fees accrue on realized profit when trades close (
accrueSubscriberFeesOnClose). Fees are not charged on entry notional unless you configure legacy feeConfiguration.chargeOnPerformance: false on non-marketplace bots.Worked example: subscription
You setmonthlyPrice: 29. Ten subscribers pay for one month.
- Gross: $290
- Platform fee (20%): $58
- Creator share via Stripe Connect: $232
Monetization models
Set on agent create/update (pricingModel):
| Model | Fields |
|---|---|
subscription | monthlyPrice + Stripe Connect |
success-fee | successFeePercent |
both | monthlyPrice + successFeePercent |
free | No charge |
Revenue streams
| Stream | Description | Claim path |
|---|---|---|
| Subscriptions | Monthly agent subscription revenue (creator share via Stripe Connect) | POST /v1/developers/claim-subscription-earnings |
| Strategy success fees | Per-trade success fees from subscriber executions | POST /v1/developers/claims/agents/{agentId} or /claims/all |
| Weekly payouts | Automated weekly settlement (gross, platform fee, net) | Recorded in payout history - no manual claim |
Key endpoints
Earnings summary
totals- lifetime success-fee totals from weekly payoutsbyAgent/byPeriod- breakdownsfromSubscriptions- subscription ledger withclaimableUsdfromTrading.claimableUsd- claimable strategy success feestotalClaimableUsd- combined claimable balance
Payout history
Claim subscription earnings
CLAIMABLE subscription creator earnings as CLAIMED. Returns total USD claimed and number of ledger rows updated.
Returns 400 when there is nothing to claim. Call GET /earnings first to check fromSubscriptions.claimableUsd.
Strategy success fee claims
CLAIMED, and support legacy bot feeEarnings. Capped at CLAIM_MAX_USD per agent per call.
Returns 404 if the agent is not found or not owned by the caller.
Stripe Connect
Paid agent subscriptions route creator share (80%) via Stripe Connecttransfer_data. Complete onboarding before publishing paid agents.
Start onboarding
account.updated webhooks.
Check status
Dashboard link
Typical workflow
Register as a developer
Complete developer registration in the Dev Portal or via
POST /api/v1/developers/register.Set up Stripe Connect
Call
POST /stripe-connect/onboarding and complete the hosted flow before enabling paid subscriptions.Publish agents
Create marketplace agents with subscription pricing. Subscriber payments flow through Connect.
Monitor earnings
Poll
GET /v1/developers/earnings for claimable balances and GET /payouts for settlement history.Dashboard analytics
Additional developer dashboard routes (subscribers, performance, signal history) are under the Developer dashboard tag in the API Reference. These complement earnings data for operational monitoring.Related guides
- Sandbox testing - test signal flows without affecting live subscribers
- Signal envelope - how signals become executable trades that generate success fees
- Error codes - handling 400/404 claim errors and rate limits