The <transfer> element directs the interpreter to connect the caller to another entity (e.g., telephone line or another voice application). During the transfer operation, the current interpreter session is suspended.


NameData typeDescription



Stores the outcome of a bridge transfer attempt.



(defaults to true) An expression that must evaluate to true in order for the form item to be visited.



The initial value of the form item variable. The default is ECMAScript undefined.

If initialized to a value, then the form item will not be visited unless the form item variable is cleared.



The telephone number of the destination. When using the “dest” attribute, you should always prefix a “1” before the telephone number.

For extensions, the format is <transfer dest=“tel:+12345678900;postd=1234”/>.

To set the outgoing caller ID, the format is <transfer dest=“tel:+12345678900;ani=2125551234”/>.

To insert a pause before the extension is dialed, you can add a “p” before the extension number (i.e. “p1234”).



An ECMAScript expression yielding the telephone number of the destination. Note: If using <transfer> for outbound, please note that outbound calls originate from a toll-free number, and you are not able to transfer to another toll free number.



(defaults to “bridge”) The type of transfer. Accepts the following values: "bridge", "blind" (unsupported), and "consultation" (unsupported).

This setting overrides the bridge attribute.



(defaults to “true”) Instructs the platform to perform a bridge transfer.



(defaults to 30 seconds) The time to wait while trying to connect the call before returning the noanswer condition.



(defaults to 0) The time that the call is allowed to last.



The URI of an audio source to play while a bridge transfer attempt is in progress (before far-end answer).

Nothing can be played during blind transfer attempts as those calls are immediately handed off to the phone switch.


  • Only bridge transfers are officially supported.

  • Exactly one of “dest” and “destexpr” may be specified.

  • Only one shadow variable is is supported: name$.duration. The shadow variables name$.inputmode and name$.utterance are not supported.

  • “connecttimeout” refers specifically to the amount of time the system will wait for the far-end to pick up.

  • One of the following values will be returned in the form item variable if a transfer is completed without the caller disconnecting:

    1. maxtime_disconnect - returned when a maxtime attribute was set and the maxtime was reached.

    2. far_end_disconnect - returned with the callee disconnects.

  • If the caller disconnects, a connection.disconnect will be thrown and the return value is not defined.


<?xml version="1.0"?>
<vxml version="2.0">
    <field name="targetnumber" type="digits">
        What phone number would you like to dial?
    <transfer destexpr="targetnumber">
        Transferring to
        <say-as type="acronym">
          <value expr="targetnumber"/>

The output of the above script would be:

Computer: What phone number would you like to dial? Human: One two one two five five five one two one two. Computer: Transferring to one two one two five five five one two one two. Computer: (transfers call to 1-212-555-1212)

Child Tags

<audio>, <catch>, <enumerate>, <error>, <filled>, <grammar>, <help>, <noinput>, <nomatch>, <prompt>, <property>, <value>

Parent Tags


Last updated