Cut voice platform intake
errors by 99%.

Powsoo renders the right card at the right moment of the call,
so users confirm instead of spelling things out.
Built for Retell, with Vapi and ElevenLabs coming soon.

Get started Read the docs
Try the steps
northwindhome.com/call
retell.session · listeningagent: Aria
Agent1:02
"Hi, this is Aria with Northwind. How can I help today?"
User1:06
"My boiler is leaking. I need someone out."
No decision needed
just talking · webrtc audio
What is Powsoo?

A visual layer for AI voice agents

Powsoo is a drop-in visual layer for AI voice agents. During a Retell call, with Vapi and ElevenLabs coming soon, it renders synced on-screen cards in the caller’s browser so they confirm emails, phone numbers, dates, and other intake fields by tapping instead of spelling them out loud. Voice agents mishear character strings: speech-to-text turns “john.smith@acme.com” into “John Smith at acme dot com”, and “fifteen” and “fifty” collide on every phone number, where one wrong character makes the value unusable. Powsoo installs with one web component and one script tag, and adds a powsoo_show_card tool to the agent. When the agent needs a field confirmed, it calls that tool with the value it heard, the card renders mid-call, the caller taps Confirm or Edit, and a webhook delivers the clean value to your backend. It works alongside your existing platform rather than replacing it.

5 minutes to ship

Three steps from script tag
to clean intake data

Powsoo is a web component plus a small server. Connect your agent,
drop in the embed, and ship.

01

Connect your Retell agent

Create a widget in the Powsoo dashboard and link your Retell account, then add powsoo_show_card as a custom function on your agent.

dashboard.powsoo.com / widgets / klarvo-legal
Retell account
acct_5j4f2 · agent klarvo-night
Connected
powsoo_show_card provisioned on agent
02

Drop in the embed

One web component, one versioned script tag. Add your site origin to your widget's allowed origins. No SDK to learn.

<powsoo-voice
widget-id="wid_8f23"
></powsoo-voice>
<script type="module"
src="https://w.powsoo.com/v0.1.0/widget.js"
></script>
03

Cards render in sync

Mid-call, the agent calls powsoo_show_card. Powsoo renders the matching card. The user taps confirm. Your data is clean.

POST /v1/retell/tools/show-card200 OK
{
tool: "powsoo_show_card",
card: "confirm-email",
value: "alberto.s@gmail.com",
call_id: "retell_8f23"
}
// agent calls. card renders. user taps confirm.
Embedding solutions

Three ways to render Powsoo

Pick the format that fits your product. Same SDK, same schema, different surface.

01 / 03

Inline panel

Renders the widget directly inside your page next to your existing voice platform UI. Best for product onboarding.

powsoo.· intake
live
Confirm your email
john.smith@acme.com
Edit
Confirm
Powsoo Atoms

Build your own UI with
Powsoo Atoms.

For teams that need full control. Powsoo's React components are open and composable. Drop in <EmailConfirm />, <DatePicker />, <SignaturePad />, or rebuild the entire intake flow yourself.

Tree-shakeable React components
Full theming via CSS variables
Headless mode for custom rendering
TypeScript types out of the box
Docs
intake.tsxtheme.ts
1
2
3
4
5
6
// Configure Powsoo to match your brand
const powsoo = Powsoo.init({
voiceSession: vapiSessionToken,
schema: intakeSchema,
appearance,
});
klarvo.legal/intake/new-client
KKlarvo Legal
Klarvo Legal › “What email should we send the retainer to?”
caller › “j-smith at acme dot com.”
Klarvo Legal › “Please confirm your email on the screen.”
KKlarvo Legal· intake
live
Confirm retainer email
j.smith@acme.com
Edit
Confirm
Theme: Klarvo Legal
Why teams ship Powsoo

Cleaner data. Faster builds.
Native to your product.

01

Cut intake errors by 99%

Stop losing leads to misheard emails. Tap-to-confirm beats spell-it-back-three-times every time.

intake_error_rate.csv
voice only
23.4%
voice + visual
0.2%
Spelled aloud · misheard · re-asked−99%
02

Match your brand

Inline, side card, popup. Pick the format that fits your site. Customize colors, typography, and copy to feel native.

Theme: Powsoo
powsoo.· intake
live
Confirm your email
john.smith@acme.com
Edit
Confirm
Theme: Klarvo Legal
KKlarvo Legal· intake
live
Confirm email
amelia@klarvo.legal
Edit
Confirm
03

Ship in an afternoon

One script tag, one SDK call. Works with Retell today, with Vapi and ElevenLabs coming soon.

terminal~/voice-app
$ npm install @powsoo/sdk
added 1 package in 3.2s
$ powsoo deploy
✓ schema validated · 6 fields
✓ widget bundle · 14.2 kB gzip
✓ live at js.powsoo.com/v1/wkv9f
Additional features

Everything you need to ship
intake at production scale.

Schema-driven UI
Define your intake once. Powsoo renders the right card at the right moment.
Voice-synced timing
Cards appear when the agent asks, dismiss when the user confirms. Zero manual orchestration.
Prefill from the call
STT output flows into card fields automatically. The user just taps to confirm.
Webhooks on confirm
Get a clean POST when the user confirms intake. Drop straight into your CRM or backend.
Multi-step intake flows
Chain cards into onboarding sequences. Conditional logic supported.
Mobile-first by default
Every card is responsive. Works on the same device the call is running on.
Live demo

Watch a DUI intake call,
card by card.

Marcus calls Klarvo Legal at 2:14 AM after release. In 36 seconds, Maren gets him represented. Location confirmed, ticket OCR'd, attorney scheduled, retainer signed.

demo · landing soon
klarvolegal.com/intake
Voice stack

Works with the voice platforms
you already use.

Powsoo plugs into your existing voice infra without ripping anything out.

Vapi
Retell
ElevenLabs
Bland
Twilio Voice
AssemblyAI
Daily.co
LiveKit
Plus any WebRTC voice session.
FAQ

Frequently asked questions.

Powsoo is a drop-in widget that adds visual intake cards to AI voice platforms. When a user is on a voice call with your agent, Powsoo renders synced cards in the browser so users can tap-to-confirm emails, phone numbers, dates, and other intake fields instead of spelling them out.
Create a widget in the Powsoo dashboard and connect your Retell account, then drop one <powsoo-voice> web component and one versioned script tag into your site. You add powsoo_show_card as a custom function on your agent. Setup takes about 5 minutes.
Retell today. Vapi and ElevenLabs support are coming soon. SMS fallback works for traditional PSTN calls.
Yes. Powsoo supports full theming via JS configuration: colors, fonts, border radius, spacing. For deeper control, use Powsoo Atoms (React components) to build your own UI.
Powsoo fires webhooks the moment a card is confirmed, with the field name, value, and call session ID. Drop the payload straight into your CRM, database, or backend.
Pure phone calls (PSTN) don’t have a screen, so Powsoo’s web widget can’t render directly. Instead, Powsoo offers an SMS fallback: when the agent needs to confirm an email or phone number, the caller gets a one-tap SMS link.
Powsoo is built with healthcare and EU customers in mind. We’re SOC 2 Type II in progress and offer DPAs and BAAs on the Pro plan and above.

Five minutes to zero spelling errors.

Go from zero to live confirmation cards in under five minutes.
No migration required.

Get started Read the docs