Premium-route sticker shock
You priced a US-domestic call at $0.0085. The invoice landed at $0.014 because traffic took a route nobody told you about. Your CFO wants a model. The model assumes one rate.
Calling, conferences, IVR, real-time streaming — every call control verb, one API. 30–60% cheaper than Twilio. Real billing transparency, no premium-route surprises.
The hidden tax of legacy voice — and why building on top of it bleeds margin every day.
You priced a US-domestic call at $0.0085. The invoice landed at $0.014 because traffic took a route nobody told you about. Your CFO wants a model. The model assumes one rate.
Production wants per-participant broadcast. The SDK exposes mute and nothing else. Now you're patching TwiML strings in your handler. The carrier itself supports the verb — but you can't.
Carrier CDR says 1.84 minutes. Your invoice says 1.92. Multiply by ten thousand calls and the gap funds someone's quarter — not yours. You want to SELECT * from that drift. You can't.
Everything you need to ship a voice product. Carrier-grade infrastructure exposed as REST — not XML markup, not SDK lock-in.
Carrier-grade outbound and inbound. Every verb 1:1 — dial, bridge, refer, fork, hangup, gather, AMD.
Per-participant mute, hold, broadcast, record. Conferences-as-bridges: the only primitive you need.
gather · play · speak · DTMF. Build menus in your app, not in XML markup.
Real-time PCM/Opus media to your STT + LLM at 8/16/24 kHz. Bidirectional, sub-200ms.
Lease US, EU, APAC numbers. Local presence in 60+ markets. Port in / port out, no penalty.
Two-channel recording on the conference. Diarized real-time transcripts. WebM, MP3, WAV.
The pitch in four cards. Real numbers, real method names. No marketing flourish.
Direct per-minute carrier rates with transparent flat pricing. Every call shown line-by-line in your ledger — no premium routes hidden in the small print.
View live rate cardCalls, conferences with hold/mute/broadcast, IVR primitives, recording, AMD, real-time streaming, transcription. Carrier-grade and complete from day one.
See full surfaceTop up via Stripe. Watch your balance debit in real time. Every charge has a row you can SELECT * from. Daily reconciliation against carrier CDRs — drift over 1% pages on-call.
See pricingCarrier → answer → conference → bridge → record. The full inbound-router pattern works through one API. Carrier SIP retry dedup is built in.
See the patternFrom signup to a real call: three steps, no install, no card, no demo on the calendar.
Sign up. We seed your account with $5 of test balance and a real US number. The sandbox key works against the same surface as production — no card, no contract.
One curl, one webhook URL. Verb names match the docs. Response shapes match production. Replay traffic from your existing handler with two header swaps.
Flip the env var. Watch your ledger debit per call in real time. Set a per-tenant spend cap. Reconciliation runs nightly — drift over 1% pages on-call, not you.
Same surface for the things that matter — dial, hangup, gather, record. We expose call control directly via REST, not XML markup.
import twilio from 'twilio'
const client = twilio(SID, TOKEN)
await client.calls.create({
from: '+15125550100',
to: '+15558675309',
url: 'https://example.com/twiml.xml',
})
import { voepy } from '@voepy/sdk'
const client = new voepy({ apiKey: KEY })
await client.calls.dial({
from: '+15125550100',
to: '+15558675309',
record: 'on-demand',
})
Stuck on XML markup? An adapter shim lets you point your existing <Response> URL at us and migrate piece-by-piece. Otherwise, prefer call control: it's faster to debug, and the latency tail is half.
No SIP refer dance, no custom bridge orchestration. Conferences are the bridge. Recording starts on the conference, not the leg.
// 1. Mount the inbound webhook
app.post('/webhooks/voepy', async (req, res) => {
const { event_type, payload } = req.body.data
if (event_type === 'call.initiated') {
await client.calls.answer(payload.call_control_id)
const conf = await client.conferences.create({
call_control_id: payload.call_control_id,
name: `call-${payload.call_session_id}`,
})
// dial leg B → connect an agent
await client.conferences.dialIn(conf.id, {
to: pickAgent(payload.from),
from: payload.to,
})
await client.conferences.recordStart(conf.id, { format: 'mp3' })
await client.conferences.transcriptionStart(conf.id)
}
res.sendStatus(200)
})
Either party hangs up → conference ends, recording saved, transcription processed, webhook delivered. Carrier-side SIP retry dedup is built in — your handler stays idempotent.
One mark, one neon-on-black palette, and a quiet typographic system. The voice is the product — the rest just stays out of its way.



All prices in USD. Direct per-minute rates with a flat plan multiplier. No premium routes hidden in the small print.
$0.0085/min vs Twilio's $0.0140. Conferences, recording, transcription, and AMD are all priced separately at carrier-pass-through plus a flat 40% markup we publish in the rate card. No premium routes, no MIN_USD, no per-region surprises.calls.refer with the full RFC 3515 envelope. Inbound retry dedup is built into the edge — duplicate INVITEs within a 30-second window collapse to a single webhook delivery, keyed on Call-ID + CSeq. You don't write that code. We did.One curl away from a working call. No credit card needed for sandbox.