# \<transfer>

## \<transfer> <a href="#transfer" id="transfer"></a>

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.

### Attributes

<table><thead><tr><th width="230">Name</th><th width="124.33333333333331">Data type<select><option value="a88482fa077045fdab7ba040160bd178" label="String" color="blue"></option><option value="0c06e85f43c044eba849b53c264439ab" label="Integer" color="blue"></option><option value="3f2081f4e28c483f8aa6111fa69903e0" label="Boolean" color="blue"></option></select></th><th>Description</th></tr></thead><tbody><tr><td>name</td><td><span data-option="a88482fa077045fdab7ba040160bd178">String</span></td><td>Stores the outcome of a bridge transfer attempt.</td></tr><tr><td>cond</td><td><span data-option="3f2081f4e28c483f8aa6111fa69903e0">Boolean</span></td><td>(defaults to true) An expression that must evaluate to true in order for the form item to be visited.</td></tr><tr><td>expr</td><td><span data-option="a88482fa077045fdab7ba040160bd178">String</span></td><td><p>The initial value of the form item variable. The default is ECMAScript undefined.</p><p></p><p>If initialized to a value, then the form item will not be visited unless the form item variable is cleared.</p></td></tr><tr><td>dest</td><td><span data-option="a88482fa077045fdab7ba040160bd178">String</span></td><td><p>The telephone number of the destination. When using the “dest” attribute, you should always prefix a “1” before the telephone number.</p><p></p><p>For extensions, the format is <code>&#x3C;transfer dest=“tel:+12345678900;postd=1234”/></code>.</p><p></p><p>To set the outgoing caller ID, the format is <code>&#x3C;transfer dest=“tel:+12345678900;ani=2125551234”/></code>.</p><p></p><p>To insert a pause before the extension is dialed, you can add a “p” before the extension number (i.e. “p1234”).</p></td></tr><tr><td>destexpr</td><td><span data-option="a88482fa077045fdab7ba040160bd178">String</span></td><td>An ECMAScript expression yielding the telephone number of the destination. <br><br><strong>Note:</strong> If using &#x3C;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.</td></tr><tr><td>type</td><td><span data-option="a88482fa077045fdab7ba040160bd178">String</span></td><td><p>(defaults to “bridge”) The type of transfer. Accepts the following values: "bridge", "blind" (<em>unsupported)</em>, and "consultation" <em>(unsupported)</em>.</p><p></p><p>This setting overrides the bridge attribute.</p></td></tr><tr><td>bridge</td><td><span data-option="3f2081f4e28c483f8aa6111fa69903e0">Boolean</span></td><td>(defaults to “true”) Instructs the platform to perform a bridge transfer.</td></tr><tr><td>connecttimeout</td><td><span data-option="a88482fa077045fdab7ba040160bd178">String</span></td><td>(defaults to 30 seconds) The time to wait while trying to connect the call before returning the noanswer condition.</td></tr><tr><td>maxtime</td><td><span data-option="0c06e85f43c044eba849b53c264439ab">Integer</span></td><td>(defaults to 0) The time that the call is allowed to last.</td></tr><tr><td>transferaudio</td><td><span data-option="a88482fa077045fdab7ba040160bd178">String</span></td><td><p>The URI of an audio source to play while a bridge transfer attempt is in progress (before far-end answer).</p><p></p><p>Nothing can be played during blind transfer attempts as those calls are immediately handed off to the phone switch.</p></td></tr></tbody></table>

### Notes

* **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.

### Example

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

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>](/dev/voicexml/tags/audio-tag.md), [\<catch>](/dev/voicexml/tags/catch-tag.md), [\<enumerate>](/dev/voicexml/tags/enumerate-tag.md), [\<error>](/dev/voicexml/tags/error-tag.md), [\<filled>](/dev/voicexml/tags/filled-tag.md), [\<grammar>](/dev/voicexml/tags/grammar-tag.md), [\<help>](/dev/voicexml/tags/help-tag.md), [\<noinput>](/dev/voicexml/tags/noinput-tag.md), [\<nomatch>](/dev/voicexml/tags/nomatch-tag.md), [\<prompt>](/dev/voicexml/tags/prompt-tag.md), [\<property>](/dev/voicexml/tags/property-tag.md), [\<value>](/dev/voicexml/tags/value-tag.md)

### Parent Tags

[\<form>](/dev/voicexml/tags/form-tag.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.plumvoice.com/dev/voicexml/tags/transfer-tag.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
