Fat Zebra doesn't natively connect to Twilio for voice payments. If you want to process Fat Zebra 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 Fat Zebra (and 30+ other gateways) to Twilio's <Pay> verb, so you can accept PCI-compliant card payments during any voice interaction.
For Australian businesses the fit is particularly strong. Twilio's <Pay> is available in the Australia (AU1) Twilio region, and Shuttle is one of the connectors Twilio's docs list for AU1. That means an Australian utility, insurer, or collections team can capture card details over the phone and process them in AUD through a local gateway on the Fat Zebra side.
This guide walks through how the integration works, how to set it up, and what to watch for.
Why Fat Zebra + Twilio Don't Connect Directly
Fat Zebra is an Australian payment gateway built for online commerce. Its REST API handles card processing, tokenisation, card-on-file payments, and digital wallets.
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. Fat Zebra isn't one of Twilio's built-in connectors, so there's no native path between the two.
This is where Shuttle comes in. Shuttle provides a Pay Connector that accepts card data from Twilio's <Pay> verb and routes it to Fat Zebra's API for processing. One integration connects the two platforms, and Shuttle's connector is listed for Twilio's AU1 region.
How It Works
Caller → Twilio (DTMF capture) → Shuttle (Pay Connector) → Fat Zebra (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 Fat Zebra. The connector creates a Fat Zebra purchase request, processes the transaction through your Fat Zebra merchant account, and handles the response.
Result returned to your call flow. Your webhook receives the Fat Zebra transaction 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
A Fat Zebra account with API credentials (username + API token)
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 Fat Zebra Credentials to Shuttle
Log into the Shuttle dashboard. Navigate to Payment Profiles and create a new profile:
Gateway: Fat Zebra
Username: Your Fat Zebra API username
Token: Your Fat Zebra API token
Currency: AUD (or another supported currency)
Environment: Live or Test
Save the profile. Shuttle now has a live connection to your Fat Zebra 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="86.50"
currency="AUD"
description="Account payment"
action="/payment-complete">
</Pay>
</Response>Key parameters:
paymentConnector: set toshuttle-pay-connectorchargeAmount: the amount to chargecurrency: ISO currency code (AUD for Australian processing)action: 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": "FZ-TXN-REF-123...",
"ProfileId": "your-shuttle-profile-id"
}Use the PaymentConfirmationCode to look up the transaction in Fat Zebra if needed. Update your account records, confirm to the caller, and continue the flow.
Step 5: Test
Fat Zebra provides a test environment with test card numbers, so you can verify the flow end-to-end before going live. Use your Fat Zebra test credentials in the Shuttle payment profile, run a call through your Twilio flow, and confirm the transaction appears in the Fat Zebra dashboard.
What You Can Do With Fat Zebra + Twilio
Charge Immediately
Standard purchase flow. The caller pays, Fat Zebra processes in AUD, done. This is the pattern most Australian contact centres need: utilities taking bill payments, insurers collecting premiums, and collections teams settling arrears on the call.
Tokenise for Future Use
Capture card details once over the phone. Shuttle tokenises the card via Fat Zebra's card-on-file capability and returns a reusable token. Use it for future payments across any channel: web, mobile, voice, or payment links. The card data is never stored in your systems.
Payment Plans and Recurring Collections
Tokenise on the first call, then charge the stored card on a schedule. For BPOs and collections teams, this turns a single agent-assisted call into an ongoing payment arrangement without ever re-capturing card details.
AI Voice Agents
The same connector works when an AI voice agent, rather than a human, handles the call. The agent hands off to <Pay> at the payment step, the caller keys in their card, and Fat Zebra processes the transaction.
Multi-PSP: Beyond Fat Zebra
One of the key advantages of using Shuttle rather than a single-gateway connector is flexibility. Your Twilio integration stays the same even if you:
Add a second gateway: serve your Australian merchants with Fat Zebra and your overseas merchants with a local acquirer in each market
Serve enterprise customers who mandate a specific PSP (Stripe, Adyen, Worldpay, etc.)
Want a backup gateway: if one gateway 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 beyond Australia, with each merchant or entity in a new market 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, and Shuttle sends the payment to the provider you configured.
This matters for platforms and BPOs that serve multiple merchants. Each merchant can use their own Fat Zebra account (or any other compatible gateway) through the same Twilio integration.
PCI Compliance
The Fat Zebra + 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 | Fat Zebra |
Your systems | No card data on your systems: SAQ-A for merchants, SAQ-D for platforms |
Card data flows from Twilio → Shuttle → Fat Zebra. Your application only receives redacted data (last 4 digits, card brand, transaction 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 Fat Zebra to Twilio without Shuttle? Twilio doesn't have a built-in Fat Zebra 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.
Does this work in Twilio's Australia (AU1) region? Yes. Twilio's <Pay> is available in the AU1 region, and Shuttle is one of the connectors Twilio lists for AU1.
What credentials do I need from Fat Zebra? Your Fat Zebra API username and API token. Enter them in your Shuttle payment profile and the connection is live. No development work on the Fat Zebra side.
Does Fat Zebra's test environment work with this? Yes. Use your Fat Zebra test credentials 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. Fat Zebra's standard processing fees apply on top.
Can I switch from Fat Zebra 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 NAB to Twilio for Voice Payments: the other Australian gateway option for Twilio voice payments
Payment Collection for BPOs: multi-client payment collection for outsourced contact centres
Fat Zebra: everything Shuttle supports on Fat Zebra
Twilio Pay: Connect Any Compatible Payment Gateway to Twilio: all supported gateways, pricing, and setup
Connect Fat Zebra 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.