Adyen doesn't natively connect to Twilio for voice payments. If you want to process Adyen transactions during a phone call, via IVR, agent-assisted, or AI voice agent, you need a Twilio Pay Connector that bridges the two platforms.
Shuttle's Pay Connector does exactly this. It connects Adyen (and 30+ other gateways) to Twilio's <Pay> verb, so you can accept PCI-compliant card payments during any voice interaction.
This guide walks through how the integration works, how to set it up, and what to watch for.
Why Adyen + Twilio Don't Connect Directly
Adyen is built for omnichannel commerce: online, in-app, in-store, and platform payments. Its APIs handle payment sessions, tokenisation, and split payments across merchant accounts.
Twilio is built for voice and messaging. Its <Pay> verb captures card details during phone calls via DTMF keypad input, so the digits never reach the agent or the call recording.
The problem: Twilio's <Pay> needs a Pay Connector to route captured card data to a payment gateway. Adyen isn't one of Twilio's built-in connectors: Twilio has no native Adyen integration.
This is where Shuttle comes in. Shuttle provides a Pay Connector that accepts card data from Twilio's <Pay> verb and routes it to Adyen's API for processing. One integration connects the two platforms.
How It Works
Caller → Twilio (DTMF capture) → Shuttle (Pay Connector) → Adyen (processing) → Result
Caller reaches payment step. Your Twilio call flow (IVR or custom TwiML) triggers the
<Pay>verb.Card details captured via DTMF. The caller enters their card number, expiry, and CVV on the keypad. The digits never reach the agent or the call recording.
Shuttle receives card data. The data passes from Twilio's PCI-compliant environment directly to Shuttle's connector. It never touches your servers.
Shuttle charges the card via Adyen. The connector creates an Adyen payment request, processes the transaction through your Adyen merchant account, and handles the response.
Result returned to your call flow. Your webhook receives the Adyen PSP reference, last four digits, card brand, and transaction status. The call continues.
The caller stays on the line. No redirects, no "please visit our website."
Step-by-Step Setup
Prerequisites
A Twilio account with voice capability
An Adyen account with API credentials (API key + merchant account)
A Shuttle account (see pricing)
Step 1: Install Shuttle's Pay Connector
Go to the Twilio Marketplace and install the Shuttle Pay Connector. This adds Shuttle as an available connector in your Twilio account's Pay configuration.
Step 2: Add Adyen Credentials to Shuttle
Log into the Shuttle dashboard. Navigate to Payment Profiles and create a new profile:
Gateway: Adyen
API key: Your Adyen API key
Merchant account: Your Adyen merchant account name
Currency: Set your default (GBP, USD, EUR, etc.)
Environment: Live or Test
Save the profile. Shuttle now has a live connection to your Adyen account.
Step 3: Configure Your Twilio Call Flow
Add the <Pay> verb to your TwiML:
<Response>
<Say>Please enter your card number followed by the hash key.</Say>
<Pay paymentConnector="shuttle-pay-connector"
chargeAmount="49.99"
currency="GBP"
description="Invoice payment"
action="/payment-complete">
</Pay>
</Response>Key parameters:
paymentConnector: set toshuttle-pay-connectorchargeAmount: the amount to chargecurrency: ISO currency codeaction: your webhook endpoint for the payment result
Step 4: Handle the Payment Result
Twilio sends a POST to your action URL with the payment result:
{
"Result": "success",
"PaymentCardNumber": "xxxx-xxxx-xxxx-1234",
"PaymentCardType": "visa",
"PaymentConfirmationCode": "ADYEN-PSP-REF-123...",
"ProfileId": "your-shuttle-profile-id"
}Use the PaymentConfirmationCode to look up the transaction in Adyen if needed. Update your order, confirm to the caller, and continue the flow.
Step 5: Test
Use Adyen's test environment and Twilio's test credentials to verify the flow end-to-end before going live. Adyen test card numbers: 4111 1111 1111 1111 (Visa), 5500 0000 0000 0004 (Mastercard).
What You Can Do With Adyen + Twilio
Charge Immediately
Standard auth-and-capture. The caller pays, Adyen processes, done.
Authorise Now, Capture Later
Place a hold on the card during the call. Capture the payment later through Adyen's management API: useful for bookings, deposits, or variable-amount transactions.
Tokenise for Future Use
Capture card details once over the phone. Shuttle tokenises the card via Adyen and returns a reusable token (Adyen's storedPaymentMethodId). Use it for future payments across any channel: web, mobile, voice, or payment links. The card data is never stored in your systems.
Multi-PSP: Beyond Adyen
One of the key advantages of using Shuttle rather than an Adyen-only connector is flexibility. Your Twilio integration stays the same even if you:
Add a second gateway: serve your UK merchants with Adyen and your US merchants with a local acquirer
Serve enterprise customers who mandate a specific PSP (Stripe, Worldpay, Checkout.com, etc.)
Want a backup gateway: if Adyen is down, you can move the affected payment types to another connected gateway. There is no automatic failover, and saved cards stay with the gateway that stored them, so repeat payments on stored cards will not run through the second one
Expand to new markets, with each merchant or entity there on its own gateway
You choose which connected provider handles each payment type in Shuttle’s dashboard. Your Twilio call flow doesn't change. The <Pay> verb always points to shuttle-pay-connector: Shuttle sends the payment to the provider you configured.
This is particularly important for platforms and BPOs that serve multiple merchants. Each merchant can use their own Adyen account (or any other compatible gateway) through the same Twilio integration.
PCI Compliance
The Adyen + Twilio integration via Shuttle limits your PCI scope:
Layer | PCI handled by |
|---|---|
Secure DTMF capture | Twilio |
Card data processing | Shuttle (PCI DSS Level 1) |
Payment processing | Adyen (PCI DSS Level 1) |
Your systems | No card data on your systems: SAQ-A for merchants, SAQ-D for platforms |
Card data flows from Twilio → Shuttle → Adyen. Your application only receives redacted data (last 4 digits, card brand, PSP reference). Merchants complete SAQ-A, the lightest PCI self-assessment; platforms complete SAQ-D. Everyone taking card payments has to be PCI compliant, and your acquirer confirms which form applies to you.
For the full picture on PCI compliance with Twilio, see Twilio PCI Compliance: Payments Without Handling Card Data.
FAQ
Can I connect Adyen to Twilio without Shuttle? Twilio doesn't have a built-in Adyen Pay Connector. You'd need to build a custom connector using Twilio's Generic Pay Connector framework, which means handling PCI compliance for card data processing yourself. Shuttle provides a pre-built, PCI-certified connector.
What about Adyen's test environment? Fully supported. Use your Adyen test API key and test merchant account in Shuttle and test the full flow with Twilio before going live.
What does it cost? Shuttle charges $49 per live instance per month, plus from $0.20 per transaction, falling with volume, billed through your Twilio account. Adyen's standard fees apply on top (interchange++ or your negotiated rate).
Can I switch from Adyen to another gateway later? Yes. Change the gateway in your Shuttle payment profile. Your Twilio call flow stays exactly the same, with no code changes needed. Saved cards stay with the gateway that stored them, so repeat payments on stored cards will not move to the new gateway.
Related Reading
Twilio Pay Connectors: How to Connect Any Compatible Payment Gateway: the complete guide to Twilio Pay Connectors and multi-PSP routing
Twilio PCI Compliance: Payments Without Handling Card Data (how to keep your PCI scope limited)
How to Connect Stripe to Twilio for Voice Payments: step-by-step Stripe + Twilio setup
How to Connect Worldpay to Twilio for Voice Payments: step-by-step Worldpay + Twilio setup
How to Connect Checkout.com to Twilio for Voice Payments: step-by-step Checkout.com + Twilio setup
Shuttle vs Adyen for Platforms: comparing payment infrastructure approaches
Adyen vs Worldpay: Which PSP for Platforms? (head-to-head comparison)
Twilio Pay: Connect Any Compatible Payment Gateway to Twilio: all supported gateways, pricing, and setup
Connect Adyen to Twilio with Shuttle's Pay Connector: PCI DSS Level 1, $49 per live instance per month, plus from $0.20 per transaction, falling with volume, billed through your Twilio account. Install on Twilio or book a discovery call.