Billing & Credits
Pricing tiers, credit lifecycle, and Layer-A usage metering.
Overview
sovseal features a transparent, metered billing system. Because our architecture is zero-knowledge, the server cannot read or decrypt your memories. Metering is strictly calculated at Layer A (using resource counts, operation logs, and ciphertext storage sizes).
Pricing Plans
The pricing tiers are defined in our canonical pricing package:
| Plan | Price | Billing Period | Included Sync Ops | Included Seats | Additional Seat Price | Key Recovery |
|---|---|---|---|---|---|---|
| Hobby | $0 | forever | 30-day cloud-sync trial | 1 | N/A | No |
| Starter | $19 | month | No usage meters (fair-use throttled) | 1 | N/A | No |
| Growth | $79 | month | No usage meters (fair-use throttled) | 5 | $25/mo | Shamir-split escrow |
| Pro | $199 | month | No usage meters (fair-use throttled) | 15 | $25/mo | Shamir-split escrow |
| Enterprise | Custom | custom | No usage meters (unbounded) | Custom | Custom | HSM-backed custody |
Per-Seat Team Billing
For collaborative teams utilizing Growth and Pro tiers:
- Automatic Scalability: When an admin grants access to a new member in a team, the billing engine checks the current active members against the purchased seats limit. If the limit is met, a Polar subscription seat update is automatically triggered via Polar's API (
PATCH /subscriptions/{id}). The new seat is immediately invoiced and added to the subscription. - Manual Adjustments: Users can manually scale up the number of seats from the Billing tab in the dashboard by clicking the Add Seat button, which updates their Polar subscription and issues a prorated invoice.
- Webhook Syncing: Any updates to seats via the Polar dashboard, seat claims (
customer_seat.claimed), or revocations (customer_seat.revoked) are asynchronously synced back to the local database via signature-verified webhooks to ensure immediate quota adjustment.
Layer-A Usage Metering
Our billing engine tracks and charges based on three metadata parameters:
- Sync Operations: Count of background replicate calls (
replicate.ts). There are no usage meters or per-operation charges, subject to soft fair-use limits per tier (Hobby limited to a 30-day cloud-sync trial). - Encrypted Storage Space: Sum of bytes stored in the
public.agent_state_snapshotstable and thesovseal-romcloud storage bucket. - API Keys (Sub-keys): Programmatic credentials issued for the project (Unlimited across all tiers to encourage secure, environment-isolated key separation).
[!TIP] Cryptographic Privacy Guarantee The Edge database tracks usage without ever needing or accessing your decryption key. We measure billing solely on ciphertext size and operation metadata, preserving absolute client confidentiality.
Polar Billing Integration
sovseal integrates with Polar to manage checkouts, subscriptions, seat additions, and billing statements.
sequenceDiagram
participant User as User / Browser
participant Dashboard as Dashboard UI
participant Edge as Edge Function (Frankfurt)
participant Polar as Polar checkout API
User->>Dashboard: Click "Upgrade to Pro"
Dashboard->>Edge: POST /billing/create-checkout
Edge->>Polar: Create checkout (User External ID)
Polar-->>Edge: Checkout URL
Edge-->>Dashboard: Return URL
Dashboard->>User: Redirect to Polar Checkout
User->>Polar: Provide Payment Info
Polar-->>Edge: Webhook subscription.created
Note over Edge: Upgrade database record plan limitsManaging Subscriptions
To upgrade, downgrade, or manage invoices, visit Billing in the dashboard and click Manage Subscription to securely open the Polar customer portal.