Monetization Platform

Sign inSign up

Marvia-16

One financial engine. Many monetization models.

Every paid action in the ecosystem — an extension run, a connector sync, an AI call, a marketplace purchase — is priced, reserved, metered and settled by this one platform.

WorkspaceWalletCreditsUsageBillingRevenueMarketplace

Credit-first

Credits are the universal currency; every paid action is priced in credits before it runs.

Workspace-scoped

Every wallet, ledger row, invoice and subscription belongs to exactly one workspace.

Usage-based

A workspace pays for consumed resources, metered at the point of execution.

Provider-agnostic

Payment providers live behind adapters; no provider name appears outside its adapter.

Marketplace-ready

Revenue sharing, platform fees and creator earnings are part of the engine, not an add-on.

Extension-friendly

Extensions and connectors declare costs; the platform performs every charge.

Transparent

Every credit movement is traceable to an actor, a reason and a source record.

Immutable

Financial records are append-only; a correction is a new entry, never an edit.

Wallet engine

One wallet per workspace, derived from the ledger

Balance is never written directly. Reservations hold credits for pending work without spending them.

Wallet structure

balance
Credits available to spend right now.
reserved
Credits locked against pending operations.
pending
Credits awaiting payment confirmation.
bonus
Promotional credits, spent before purchased credits.
lifetimeUsage
Historical consumption, never decremented.
planId
The active subscription plan.
limits
Daily and monthly caps with soft-limit and grace policy.
status
active, suspended, overlimit or closed.

Status

activesuspendedoverlimitclosed
  • A workspace has exactly one wallet, created with the workspace itself.
  • Balance is derived from the ledger; it is never written directly.
  • A reservation reduces spendable credits without touching the balance.
  • An overlimit wallet blocks new paid actions but never deletes credits.

Credit ledger

Seven sources, seven operations, append-only

Expiring credits are spent first so nothing is wasted, and every movement is hash-chained to the previous entry.

Credit sources

purchasednever expires
Credit pack or invoice payment.
bonusexpires
Promotion, coupon or goodwill grant.
subscriptionexpires
Monthly or yearly plan allowance.
marketplace-rewardnever expires
Creator reward or referral payout in credits.
developerexpires
Grant for extension and connector development.
trialexpires
Trial allowance for a new workspace.
enterprisenever expires
Negotiated allocation under a custom contract.

Spend priority

trialbonussubscriptiondeveloperpurchasedmarketplace-rewardenterprise

Operations

credit-incredit-outrefundadjustmentexpirationreservationrelease

Ledger entry

{
  "id": "led_01J9M",
  "workspace_id": "wsp_2f18",
  "operation": "credit-out",
  "source": "subscription",
  "amount": -42,
  "reason": "SEO audit extension run",
  "actor_id": "usr_9c31",
  "reference_type": "usage",
  "reference_id": "use_7ab2",
  "at": "2026-08-05T02:00:00.000Z",
  "previous_hash": "b71f…02ad",
  "hash": "e4c8…7719"
}
  • Entries are append-only, hash-chained and workspace-scoped.
  • Every entry carries an actor, a reason and a source reference.
  • A reservation is released or committed; it never lingers past its deadline.
  • Expired credits leave an expiration entry, not a silent balance change.

Usage metering

Estimate, reserve, execute, settle

No paid operation runs without a reservation, and a failure always returns the credits.

01

Estimate

The caller declares an estimated cost before execution.

02

Reserve

The platform reserves the estimate against the wallet.

03

Execute

The operation runs; the platform measures actual consumption.

04

Meter

A usage record is written with context and timestamps.

05

Settle

Actual cost is committed; the difference is released back.

06

Report

Usage rolls up per feature, extension, connector and provider.

  • No paid operation executes without a reservation.
  • Actual cost always settles against the reservation, even on failure.
  • A failed execution refunds the reserved credits automatically.
  • Usage records are immutable and joined to a ledger entry.

Pricing and subscriptions

Plans are data; features read flags, never plan names

Credit and seat pricing combine on the same plan, and a state machine governs every lifecycle change.

Free

free

200 credits · 1 seats · monthly

snapshotsreports.basic

Starter

$19

2,000 credits · 3 seats · monthly

snapshotsreports.basicconnectors.core

Pro

$79

10,000 credits · 10 seats · monthly

snapshotsreports.fullconnectors.allextensions.premium

Business

$249

40,000 credits · 25 seats · monthly

snapshotsreports.fullconnectors.allextensions.premiummarketplace.sell

Enterprise

custom

200,000 credits · 100 seats · custom

everythingssoaudit.exportsla

Custom

custom

0 credits · 0 seats · custom

Subscription states

trialingactivepast-duepausedcancellingcancelledexpired
  • A workspace holds at most one active subscription.
  • Every state change writes a ledger reference and an audit record.
  • A failed renewal moves to past-due and enters the grace period, never straight to cancelled.
  • Subscription credits are granted on renewal and expire at the end of the next cycle.

Lifecycle actions

upgrade
Applies immediately; credits are prorated and granted at once.
downgrade
Applies at renewal; existing credits stay until they expire.
pause
Suspends renewal and credit grants; the wallet keeps its balance.
resume
Restarts the billing cycle from the resume date.
cancel
Runs to the end of the paid period, then expires.
renew
Charges the provider and grants the plan's credit allowance.

Billing and payments

Provider-agnostic by contract

Invoices, tax and discounts live in the billing engine; every provider implements the same adapter.

paddle

available

checkout · webhook

duitku

available

bank-transfer · webhook

telegram-manual

available

manual · manual verification

stripe

planned

checkout · webhook

paypal

planned

checkout · webhook

xendit

planned

bank-transfer · webhook

midtrans

planned

bank-transfer · webhook

Payment states

initiatedpendingcompletedfailedexpiredrefunded
  • Every provider implements the same adapter contract; the billing engine calls only that contract.
  • Webhook signatures are verified before any state change.
  • Manual providers require an operator verification step recorded in the audit log.
  • A provider outage queues the payment for retry; it never loses the invoice.

Billing rules

  • An invoice is issued before a charge and receipted after it.
  • Tax is computed from declared rules, never hard-coded per provider.
  • A paid invoice is immutable; a correction is a credit note.
  • Payment status is reconciled from the provider, not assumed from the redirect.

Revenue and marketplace

Every sale splits into platform fee and creator net

Commission tiers reward verified and partner creators; a refund reverses both sides together.

Revenue streams

workspace-paymentmarketplace-saleextension-purchasecreator-earningplatform-revenuerefundcredit-grant

Commission tiers

standard · 30%
Default rate for every marketplace listing.
verified · 20%
Creator passed verification and quality review.
partner · 15%
Partner agreement with sustained revenue.

Rules

  • Every sale writes gross, platform fee and creator net in the same entry.
  • Creator earnings accrue immediately and become eligible after the refund window.
  • A refund reverses the creator earning and the platform fee together.
  • Payout processing is a future provider adapter; the ledger is ready for it today.

Operational engines

Coupons, refunds and packages

Discounting, reversal and bundling are engines with declared policies, not per-feature code.

Coupons

percentagefixed-amountcredit-bonusbundle
  • A coupon is validated server-side at checkout, never trusted from the client.
  • Redemptions are counted atomically; an exhausted coupon fails closed.
  • Credit-bonus coupons grant bonus credits through the ledger, not the wallet.
  • Workspace targeting restricts a coupon to named workspaces only.

Refund policy

failed-execution · automatic
Immediate — reserved credits are released on failure.
duplicate-charge · automatic
Detected during reconciliation, within 24 hours.
customer-request · manual
14 days from payment, approved by a billing admin.
marketplace-dispute · manual
30 days; reverses creator earning and platform fee.
goodwill · manual
Any time, super admin only, always audited.
provider-error · automatic
On webhook reconciliation mismatch.

Packages

1,000 credits
$10
5,000 credits
$45
20,000 credits
$160
SEO extension pack
$49
Knowledge pack
$29
Academy bundle
$99
Agency bundle
$399
Enterprise bundle
custom

Integration

Declare the cost, the platform performs the charge

Extensions, connectors and AI providers publish their pricing; an undeclared cost cannot run.

Extensions

  • Estimated and actual credit cost
  • Billing category
  • Premium features
  • Marketplace price

Connectors

  • Sync and refresh cost
  • Premium sync option
  • Quota limits

AI providers

  • Token to credit estimation
  • Workspace budget enforcement
  • Cost prediction (future)
  • An undeclared cost means the operation cannot run.
  • Declared estimates are enforced as reservations before execution.
  • A connector exceeding its quota is throttled, not silently billed.
  • AI calls are budget-checked per workspace before the provider is called.

Permissions and SDK

Seven billing permissions and a ten-function SDK

The SDK is the only monetization surface an extension may call; no function touches a balance directly.

Permissions

wallet.read
View balance, reservations, limits and transaction history.
wallet.write
Adjust balances and limits; restricted to platform billing roles.
credits.consume
Reserve and spend credits by running paid operations.
billing.manage
Manage invoices, tax settings, coupons and refunds.
payments.manage
Configure providers, verify manual payments, retry failures.
subscriptions.manage
Change plan, seats, pause, resume or cancel.
marketplace.payout
Review creator earnings and approve payouts.

SDK surface

(workspaceId) => Wallet
Read the workspace wallet, including reservations and limits.
(operation, units) => CostEstimate
Price an operation before offering it to the user.
(workspaceId, estimate) => Reservation
Lock credits before a paid operation runs.
(reservationId, actualCredits) => UsageRecord
Commit the actual cost and release the difference.
(reservationId, reason) => void
Refund a reservation when execution fails.
(workspaceId, feature) => boolean
Check a plan feature flag without knowing the plan.
(workspaceId) => Invoice[]
Read billing history for the workspace surface.
(packageId, provider) => PaymentIntent
Open a provider-agnostic checkout for a package or plan.
(workspaceId, code) => Discount
Validate and apply a coupon server-side.
(listingId, grossCents) => RevenueEntry
Split a marketplace sale into platform fee and creator net.

Surfaces

Workspace billing dashboard and platform billing console

Both are widget-driven; a widget the operator may not read is absent, not empty.

Workspace dashboard

Wallet balance
metric · wallet.read
Current plan
metric · wallet.read
Credit trend
chart · wallet.read
Recent usage
table · wallet.read
Renewal date
metric · subscriptions.manage
Buy credits
action · billing.manage
Transaction history
table · wallet.read

Platform console

Plan management
table · platform.billing.manage
Credit packages
table · platform.billing.manage
Transactions
table · platform.billing.read
Payment tracking
table · platform.payments.manage
Revenue analytics
chart · platform.revenue.read
Creator earnings
table · platform.payout.manage
Coupon administration
table · platform.billing.manage
Manual adjustment
action · platform.credits.adjust

Standards

Coding, performance and implementation notes

The contract that keeps a second billing path from ever appearing.

Coding standards

  • One wallet engine, one ledger, one billing engine, one pricing engine.
  • No duplicated payment logic in features, extensions or connectors.
  • No direct credit manipulation — only ledger operations.
  • Financial records are immutable and strongly typed.

Performance

  • Billing pages load lazily; the wallet summary is cached per workspace.
  • Reconciliation runs in the background, never in the request path.
  • Payments are queued and retried with exponential backoff.
  • Manual verification workflows exist for providers without callbacks.

Implementation notes

  • All financial actions flow through the monetization platform.
  • No feature implements its own billing logic.
  • Every paid action declares its credit cost up front.
  • Credits are deducted exclusively by the platform.
  • Full auditability for every financial transaction.
  • Provider abstraction prevents vendor lock-in.
  • Workspace-scoped data guarantees financial isolation.