<Pay>
Capture card payment details over the phone. Accepted and validated; capture runtime is enabled per account.
Accepted This verb is parsed and validated on every document; see the notes below for runtime availability.
Example
<Response>
<Pay chargeAmount="20.45" paymentConnector="my-connector"
action="https://app.example.com/pay-result">
<Prompt for="payment-card-number">
<Say>Please enter your card number.</Say>
</Prompt>
</Pay>
</Response>
Attributes
| Attribute | Default | Behaviour |
|---|---|---|
input |
dtmf |
Input mode for card entry. dtmf only — spoken card entry is not available. |
action |
current document URL |
URL that receives the payment result. When omitted, the current document URL is re-requested. |
actionOnEmptyResult |
false |
Post to the action URL even when no input was captured. |
bankAccountType |
consumer-checking |
Bank account type for ACH-style capture. |
cardType |
unset |
Restrict accepted card networks. |
chargeAmount |
unset |
Amount to charge; omit to tokenize only. |
currency |
usd |
Charge currency. |
description |
unset |
Charge description passed to the payment connector. |
language |
en-us |
Language for the built-in prompts. |
maxAttempts |
1 |
How many retries the caller gets on invalid entry. |
minPostalCodeLength |
unset |
Minimum postal-code length to accept. |
paymentConnector |
Default |
Names the payment connector configured on your account that receives the captured payment method. |
paymentMethod |
credit-card |
credit-card or ach-debit. |
postalCode |
true |
Whether to prompt for a postal code. |
securityCode |
true |
Whether to prompt for the card security code. |
statusCallback |
unset |
URL receiving progress events during capture. |
statusCallbackMethod |
POST |
HTTP method for status callbacks. |
timeout |
5 |
Seconds to wait for the caller's next digit. |
tokenType |
reusable |
one-time or reusable tokenization. |
validCardTypes |
visa mastercard amex |
Space-separated allow-list of card networks. Allowed values: visa, mastercard, amex, maestro, discover, optima, jcb, diners-club, enroute. |
Nesting
<Pay> accepts these nested elements:
Notes
- All attributes and nested <Prompt> elements are parsed and validated. Live card capture requires payments to be enabled on your account with a configured payment connector — contact support to enable it.
- Nested <Prompt> elements customise the built-in prompts per capture step (for), error type (errorType), card network (cardType), and attempt number (attempt), with <Say>, <Play>, and <Pause> children.