Payments infrastructure for AI

AI agents can finally accept payments.

Your voice agent asks for the card and keeps talking. The caller types it on the keypad, a certified partner vaults it, and the digits never reach your agent, your servers, or ours.

  • PCI DSS Level 1 partners
  • Card data never stored here
  • Built for developers
payment.js
import { Voicepay } from '@voicepay/sdk';

const payment = await Voicepay.collect({
  amount: 149.99,
  currency: 'usd',
  agent_session: currentCall.id
});

// Card captured on the keypad, never in the audio
// Vaulted by our payment partner, tokenised here
console.log(payment.status); // "confirmed"

$149.99

Captured mid-call

The gap

The missing piece in AI voice agents

Voice agents book appointments, answer questions and close deals. Then the caller needs to pay, and the conversation falls apart.

Today

The call ends at the payment

  1. AgentYour total is $149.99.
  2. CallerGreat, how do I pay?
  3. AgentI will send you a payment link.
  4. Callerleaves the call, finds the email, opens the link, types the card
Payment moves to email, and the call is over.
With Voicepay

The call carries straight through it

  1. AgentYour total is $149.99. I can take that now.
  2. Systemkeypad capture opens, carrier tokenises the card
  3. AgentPayment confirmed.
  4. AgentYour appointment is booked for Tuesday at 3pm.
One call, one caller, no handoff.
How it works

Three calls, and the caller never leaves the line

  1. 01

    Your agent asks for the payment

    Call Voicepay.collect() at any point in the conversation with an amount and the session id. The agent keeps talking while it runs.

    One call, two arguments.

  2. 02

    The carrier takes the card, not you

    The caller types their card on the keypad. Those tones are pulled out at the carrier and the card is vaulted by our payment partner, so what reaches your agent is a token and there is nothing sensitive in the transcript or the logs.

    Digits never enter your stack, or ours.

  3. 03

    The result comes back mid-call

    The charge settles and your agent gets a callback with the outcome. It can confirm the booking in the same breath.

    The conversation never pauses.

Demo

Watch a call take a card

A scripted run of a real booking call, with the API events it produces alongside it.

Voicepay DemoReady

AI Dental Assistant

Press Start to begin

Press Start to begin the demo

Connected to Sandbox
Waiting for demo to start...

Card digits never appear in this stream. They are captured by the carrier and tokenized before Voicepay or the AI agent sees anything but a mask.

Developers

One call, in whichever language you already use

Voicepay runs server side, so it does not care how your agent was built.

import { VoicePay } from '@voicepay/sdk';

const voicepay = new VoicePay('vp_live_your_api_key');

// Called by your voice agent when the conversation reaches checkout.
export async function handlePayment(call) {
  const session = await voicepay.payments.create({
    amount: 14999,               // cents
    currency: 'usd',
    call_id: call.id,            // your provider's call id
    merchant_id: 'mch_bs_main',  // which gateway account settles this
    description: 'Teeth cleaning appointment',
    metadata: {
      customer_name: call.caller.name,
      appointment_date: '2026-08-06',
    },
  });

  // Capture runs field by field on the caller's own leg.
  // Your agent is muted from the keypad tones for the whole sequence.
  for (const field of session.required) {
    // -> 'card_number' | 'expiry' | 'cvc' | 'postal_code'
    await session.capture(field);
  }

  const payment = await session.complete({
    idempotency_key: `${call.id}:charge:1`,
  });

  if (payment.status === 'succeeded') {
    await call.say(
      `Payment of $${payment.amount / 100} confirmed. You're all set!`
    );
  }

  return payment;
}
Requiresa phone number on a supported carrier · a merchant account · an API key · ~10 minutes

Works with

Roadmap

Voice today. Every kind of agent after that.

The hard part is the payment boundary, and it is not specific to voice. Every channel below reuses it.

Voice agents

Live

Take a card during a live phone call, without the agent ever handling the digits. This is what the rest of the page describes, and it works today.

Chat agents

Planned

Collect payment inside a chat thread, with the same tokenisation boundary.

Email agents

Planned

Agents that raise an invoice and settle it without a human in the loop.

Autonomous agents

Planned

Machine-to-machine payments for workflows that run with nobody watching.

Security

The card data never enters your stack, or ours

Isolation is structural, not a policy. There is no point in the path where your agent could read a card number, and no point where Voicepay could either.

Card data sits in our partners’ vaults

The caller types their card on the keypad and Twilio lifts those tones out of the audio. Shuttle Global vaults the card, and everything downstream works from a token. Voicepay does not store the card, and has no way to read it back.

Certified partners

Twilio operates the capture path and Shuttle Global holds the vault. Between them they carry the certifications below, audited independently of us.

  • PCI DSS Level 1
  • SOC 2 Type II
  • ISO 27001

Encrypted end to end

256-bit AES encryption on every transaction. Keypad tone capture means the digits are separated from the call before your AI agent processes any of the audio.

Data flow
  1. Caller keypad
  2. Twilio tone capture
  3. Shuttle Global vault
  4. Payment processor

Your AI agent and Voicepay both sit outside this path. Each receives only a token.

Questions

What people ask before they integrate

If something here is still unclear, write to us and we will answer it properly.

Does the AI agent ever hear the card number?
No. The caller types their card on the phone keypad, and Twilio intercepts those tones before the audio reaches your agent. The card goes straight into Shuttle Global’s vault and your agent receives a token, so there is no card number in the transcript, the recording or your logs.
What does the caller have to do?
Stay on the call and type their card digits on the keypad when the agent asks. There is no link to open, no app to install and no second device involved.
Which voice platforms does it work with?
Voicepay works with Retell AI, Vapi, Bland AI, Twilio and ElevenLabs, and with custom SIP setups. The integration is a server-side SDK call, so it does not depend on how your agent was built.
What do I need before I can integrate it?
A phone number on a supported carrier, a merchant account, and an API key. A first integration takes roughly ten minutes.
Do I need my own merchant account?
Yes. Voicepay handles capture and tokenisation of the card and then settles through your existing payment processor, so the money relationship stays yours.
How does this affect my PCI scope?
Card details are captured at the carrier by Twilio and vaulted by Shuttle Global. Between them our partners hold PCI DSS Level 1, SOC 2 Type II and ISO 27001 certification. The card is never stored on your systems or on Voicepay’s, and your AI agent runs in an environment isolated from payment data. Your own scope still depends on the rest of your stack, so confirm it with your assessor.
Who actually holds the card data?
Twilio and Shuttle Global. Twilio operates the capture path, Shuttle Global holds the vault, and between them they carry PCI DSS Level 1, SOC 2 Type II and ISO 27001 certification. Voicepay orchestrates the call and works from a token, so it never stores card data and has no means of reading it.
What happens if the payment is declined?
The callback reports the failure and the call carries on. Your agent can ask for a different card and start another capture without hanging up or handing off.
What does it cost?
Pricing is not published yet. Voicepay is in early access, and pricing will be shared with the people on the waitlist before it goes live.
When can I get access?
Voice payments are working now and access is being opened gradually. Join the waitlist and you will get an email when your account is ready.
What data do you keep about callers?
Voicepay never stores a card number. The digits are lifted out by Twilio and vaulted by Shuttle Global, and Voicepay only ever holds the token that points at them. Everything else Voicepay retains is set out in the privacy policy.

Still deciding?Ask us directly

Early access

Be first in line.

Voice payments are live and access is opening gradually. Tell us where to reach you and we will email you when your account is ready.

No card, no call. One email when your access opens, and one click to leave.