> ## Documentation Index
> Fetch the complete documentation index at: https://docs.puntego.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Hand off to a person

> When a visitor asks for a person, continue the conversation where your team already works: your site's chat, the contact form, or your own system.

When a visitor asks for a person (**Talk to a person** under an answer, in the **⋯** menu, or after an answer the guide could not give), Puntego can continue the conversation where your team already works. Human handoff is available on **Growth and up**; turn it on in **Dashboard → Guides → Actions → Visitor workflow**, and choose there where **Talk to a person** goes.

## Your site's chat

If your pages run **Intercom**, **Zendesk messaging**, **HubSpot chat** or **Front Chat**, Puntego opens that chat for the visitor with a short summary of what they asked and what the guide already tried, so they don't have to start over. The guide folds out of the way first (on phones too), so it never covers your chat, and leaves a note in the conversation saying where the visitor continued.

| Chat | What the visitor sees | What your team gets |
| - | - | - |
| Intercom | Their message is already written in the chat box, in their language. They can edit it, and nothing is sent until they send it. | The message, plus the summary by email and in **Inbox → Handoffs**. |
| Zendesk messaging | Before the chat opens, a ready-made message they can copy with one press (**Copy and open chat**). | The summary in the ticket field you choose (enter its numeric id), a `puntego_handoff` tag, and the summary by email and in the Inbox. |
| HubSpot chat, Front Chat | Before the chat opens, a ready-made message they can copy with one press (**Copy and open chat**). | The summary by email and in the Inbox. |

How it works:

* **Puntego never loads, starts or signs in your chat.** It uses the one already on your page, as your page set it up. If the chat isn't there, was blocked (an ad blocker, for example) or doesn't finish starting within about a second and a half, the visitor gets the contact form instead, in the same click. There is never a dead end.
* **The message is the visitor's.** It is written in first person, in their language, without links and with private details (emails, phone and card numbers, addresses) left out. Puntego never sends it for them. If no summary is ready in time, the chat gets the visitor's last question instead, without links, unless it holds a private detail; then the chat opens empty.
* **No help-desk ticket is opened** for a handoff that continued in your chat: the chat already opened the conversation, so there is no duplicate, and a ticket needs the visitor's email, which only the contact form asks for.
* **The Inbox item closes on its own** once the chat opened: your team answers in the chat, and the handoff still counts in analytics (**Analytics → Resolution** splits escalations by form, site chat and your own system). Turn **Close chat handoffs in the Inbox on their own** off to keep them open. A handoff whose chat didn't open stays open, like any contact form request.
* **The Zendesk Web Widget (Classic)** is not supported: use Zendesk messaging, or the contact form.
* **After an answer the guide could not give**, the guide offers a person with a **Talk to a person** button; your chat only ever opens when the visitor presses it.

If you change or turn off the chat while a visitor has your page open, their next request goes to the contact form, never to the chat you turned off.

Once the widget has seen a chat on your site, **Guides → Actions** and the Install page say so ("We saw Intercom on your site"). That is only a suggestion: the handoff goes to your chat only after you choose it.

## The contact form

The default. The visitor leaves an email; your team gets the summary, the pages the visitor went through, what the guide did on the page and a conversation excerpt with private details hidden, by email to the workspace owner and in **Inbox → Handoffs**, and as a ticket if you [connected a help desk](/verified-actions). The visitor can come back to the guide to see where their request stands.

## Your own system

Listen to `handoff:requested`, call `preventDefault()` in the handler and open whatever you use. Puntego then opens neither your chat nor the form, and records the request in the Inbox as handled by your own support tool.

```ts theme={null}
window.Puntego?.on('handoff:requested', (event) => {
  event.preventDefault();
  openMySupportWidget({
    message: event.summary?.visitorMessage ?? '',
    reference: event.handoffId,
  });
});
```

The event fires with every setting whenever the visitor asks for a person (or you call `requestHandoff()`), before anything opens, so you don't need to configure anything in Puntego to use it. (With the contact form as the setting, the form the guide offers on its own after an answer it could not give opens without the event.) With the contact form as the setting, `summary` is `null`. The payload carries an opaque handoff id, the conversation id, the summary, its language, the path without query or hash (only plain words: ids, numbers, emails and tokens read `[hidden]`), whether the team is available, whether a signed-in customer is attached (never who), and what Puntego would do. It **never** carries the visitor's email, customer or account ids, or the conversation itself. Any script on your page that listens to Puntego events can read the summary, as it can already read `chat:user`.

To ask for a person from your own button, call `window.Puntego.requestHandoff()`: it behaves exactly like **Talk to a person**. `handoff:completed` says where each handoff landed. Both events are in the [SDK reference](/sdk-reference#events).

## Business hours

Outside the [business hours](/configuration) you set, the visitor is told the team is offline and when it's back before anything opens. With your site's chat, the chat opens anyway by default, since your chat takes the message for later; choose **Show the contact form** to send visitors to the form outside your hours instead.

## When it doesn't run

Handoff never starts before the visitor allowed the assistant, after they turned Puntego off or sent Global Privacy Control, on a privacy-only page, from a request another AI agent made through the [agent tools](/agent-tools), with the [test key](/install) or below Growth.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.