Billing Modes
Configure Mode 1 (Self-Billed) or Mode 2 (Platform-Billed via Stripe Connect) — holdback reserves, settlements, and per-client pricing.
Billing Modes
The Agency Platform offers two billing modes. Choose based on whether you want to handle invoicing yourself or let Voisnap bill your clients directly.
Mode 1: Self-Billed
You invoice your clients directly. Voisnap bills you (the agency) for the consolidated usage of all your clients. You set your own prices and collect payment using your own invoicing system.
Client A → pays you → you pay Voisnap
Client B → pays you → (consolidated)
Client C → pays you → (consolidated)
Best for: Agencies with existing billing relationships, those who want full pricing flexibility, or those on usage-based contracts.
How it works:
- Voisnap generates a single monthly invoice to your agency covering all client usage
- You receive detailed per-tenant usage breakdowns in the API
- You set any markup and invoice clients however you prefer
- No payment processing infrastructure needed from Voisnap
Configure:
curl -X PUT https://api.voisnap.ai/api/v1/agency/billing/mode \
-H "Authorization: Bearer vsnp_live_..." \
-H "Content-Type: application/json" \
-d '{ "mode": "self_billed" }'
Mode 2: Platform-Billed (Stripe Connect)
Voisnap bills your clients directly on your behalf via Stripe Connect. You set the prices, Voisnap collects the money, takes its platform fee, holds a reserve, and pays out the remainder to you monthly.
Client A → Stripe charges client → Voisnap takes fee + reserve → pays you
Client B → (same flow)
Client C → (same flow)
Best for: Agencies that want zero billing overhead, subscription-based pricing for clients.
Stripe Connect setup
- Go to Console → Agency → Billing → Connect Stripe
- Complete the Stripe Express onboarding (takes ~5 minutes)
- Set per-client pricing (see below)
Holdback reserve
To protect against chargebacks and fraud, Voisnap holds back 10% of each monthly settlement for 90 days.
| Month | Revenue collected | Platform fee (15%) | Reserve held (10%) | Payout to you |
|---|---|---|---|---|
| June | $10,000 | $1,500 | $1,000 | $7,500 |
| July | $12,000 | $1,800 | $1,200 | $9,000 |
| Aug | $11,000 | $1,650 | $1,100 | $8,250 |
| Sept | — | — | June reserve released | +$1,000 |
Reserves from month N are released at the start of month N+3.
Per-client pricing
In Platform-Billed mode, you configure the price each client pays. Voisnap handles the subscription and metered billing:
curl -X PUT https://api.voisnap.ai/api/v1/tenants/ten_01HXABC/billing \
-H "Authorization: Bearer vsnp_live_..." \
-H "Content-Type: application/json" \
-d '{
"billingMode": "platform_billed",
"currency": "USD",
"subscription": {
"planName": "Business Voice",
"monthlyFeeCents": 49900,
"billingInterval": "monthly"
},
"usageRates": {
"llmPerMillionInputTokensCents": 800,
"llmPerMillionOutputTokensCents": 2400,
"ttsPerMillionCharsCents": 2000,
"sttPerMinuteCents": 1,
"telephonyInboundPerMinuteCents": 2,
"telephonyOutboundPerMinuteCents": 3,
"phoneNumberMonthlyCents": 300
}
}'
Monthly settlement report
At the end of each month, a detailed settlement report is available:
curl "https://api.voisnap.ai/api/v1/agency/billing/settlement?month=2025-06" \
-H "Authorization: Bearer vsnp_live_..."
Response:
{
"month": "2025-06",
"currency": "USD",
"totalRevenue": 10000.00,
"platformFee": 1500.00,
"platformFeeRate": 0.15,
"holdbackAmount": 1000.00,
"holdbackRate": 0.10,
"reserveReleased": 850.00,
"netPayout": 8350.00,
"payoutDate": "2025-07-05",
"tenantBreakdown": [
{
"tenantId": "ten_01HXABC",
"tenantName": "Acme Corp",
"revenue": 4990.00,
"usage": { "conversations": 1482, "totalMinutes": 4812 }
},
{
"tenantId": "ten_01HXDEF",
"tenantName": "Beta Inc",
"revenue": 3490.00,
"usage": { "conversations": 924, "totalMinutes": 2840 }
}
]
}
Switching billing modes
You can switch between modes at the start of a billing period. Contact support@voisnap.ai to initiate a mode switch with at least 7 days notice before month end.
Billing alerts
Configure automatic alerts when a client approaches their spending limits:
curl -X PUT https://api.voisnap.ai/api/v1/tenants/ten_01HXABC/billing/alerts \
-H "Authorization: Bearer vsnp_live_..." \
-H "Content-Type: application/json" \
-d '{
"monthlySpendLimitCents": 500000,
"alertThresholds": [50, 80, 100],
"alertEmails": ["billing@youragency.com", "cto@acme.com"],
"actionAt100": "notify_only"
}'
actionAt100 options:
notify_only— send alert, service continuespause_agents— deactivate all agents (no new calls)hard_limit— reject all API calls
Thresholds fire at 50%, 80%, and 100% of the monthly limit.