<!-- Built by scripts/build-agent-docs.mjs from site/agents-src/transfer.md: edit that file. -->
# Page Lemon hand-over (transfer): guide for AI assistants

> For people: https://pagelemon.com/docs/hand-over explains this feature in plain words. This page is for AI assistants.

Give a finished site to a client, a colleague or another account of the person's own. The site moves with every version, its connected domains, and its forms and bookings with their data. The new Site Owner accepts by email and chooses where it lives. Publishing in general: https://pagelemon.com/agents.

Use this when the person says "Transfer my site to client@example.com", "Hand the site over to my client and keep me as a developer", "Give this site to Sam" or "Cancel the transfer". Adding a helper without giving the site away is https://pagelemon.com/agents/co-editing. Moving a whole workspace or moving sites between plans is https://pagelemon.com/agents/workspaces.

## Plans and limits

Any plan can send a transfer, Free included (for example a person moving their sites to their other Page Lemon account: https://pagelemon.com/docs/merge-accounts). Sending starts no trial. What the receiver can take (live sites, custom domains, people who can edit, Site Viewers) depends on the receiver's plan: https://pagelemon.com/pricing.

- The receiver pays Page Lemon directly, on their own account. The sender's plan and bill don't change.
- A Free receiver can only take a site that fits Free: no forms, bookings or other plugins, no custom domain, no invite-only access, and within Free's numbers. Otherwise the accept page makes them choose a plan that fits (a personal plan, or the Company plan in a workspace). The reply names the plan the site needs (`recipient.plan_needed_name`) and what needs it (`recipient.site_needs`); it is the same for every address, and never says what plan the receiver is on. Accepting on a plan that can't take it is refused with `error.needs: "plan"`, `cant_take` and `pricing_url`.
- Past what their plan holds, a paid receiver gets a 14-day grace in which everything keeps working (once per site in 90 days); after it, the part over the limit pauses. Say so if the reply lists needs.
- At most 10 transfers a day per person, and 3 offers to one address in 24 hours. The pre-check is a dry run of the offer.
- Say plan names, never ids.

## Ask the person

Ask in one message:

- **Who gets the site?** Their email address, the one they sign in to Page Lemon with (or will create). Read it back.
- **Stay on as a Site Developer?** The default is yes (`keep_editor: true`): the sender stays on and keeps working on the design. The receiver decides when accepting, from their plan then. Say no when the person wants out completely.
- **Anything to tell the receiver?** The AI can also draft a short note for the person to send themselves; Page Lemon's email already lists what moves.
- A workspace site: the Workspace Owner can send it to any email; its Site Owner can send it to themselves (to take it out of the workspace into their own account) or to someone else in the workspace.

## What the person needs ready

- The receiver's email address.
- Nothing else. A domain stays registered where it was bought: if the person wants the registration moved to the client, that is a separate step at the registrar (https://pagelemon.com/docs/connect-domain#move). The site keeps working on the domain through the transfer.
- Payments: Stripe payment buttons on the site (a payments plugin with the sender's own Stripe Payment Links) pause when the receiver accepts, because they pay the sender's Stripe account; they come back on when the new owner saves their own Payment Links. Page Lemon card checkout, where it is on, pauses until the new owner connects their own payouts in the Page Lemon app; orders taken before the hand-over stay with the sender, who alone can refund them. A payment link from another service pasted into a page keeps paying the sender's account until the new owner swaps in their own. Tell the person before they send.

## Set it up

MCP: `transfer_site` with `site`, `email` and `keep_editor`. REST: `POST /v2/sites/<site>/transfers` (`dry_run` first, then its `confirm_token`). Both need the Site Owner and a token with the `manage` permission.

```json
{"site": "brave-otter-4821", "email": "client@example.com", "keep_editor": true}
```

An AI-sent transfer waits for the Site Owner's click. The first call returns `approval_required`, `approve_url` (works for an hour), `confirm_token`, `recipient` (what the site needs of a plan) and an `agent_message`. The person opens the link and clicks **Approve**. Then Page Lemon emails the receiver a link to accept. When the person says they approved, call `transfer_site` again with `site` and `confirm_token` only (at most every 10 seconds) for `pending`, `approved`, `declined` or `expired`.

Before sending you can ask what the site needs with a dry run of the offer (`POST /v2/sites/<site>/transfers`, `dry_run=true`): it says what moves and whether the receiver needs a plan.

## Confirm with the person

Before the first call, tell the person in plain words, from the reply's `preview` or `agent_message`:

- **What moves:** the site and every version, its connected domains (DNS stays as it is, nothing to redo), forms and bookings with their data, users, locked sections, the site password, and the people already on it.
- **What doesn't:** the sender's own API tokens and AI connections for this site (they end); notification inboxes the sender added to the site's forms; pending invites; the domain registration itself; payments (Stripe payment buttons pause until the new owner adds their own Payment Links, card checkout until they connect their own payouts, and a payment link from another service on a page keeps paying the sender until the new owner replaces it).
- **Whether the sender stays:** with `keep_editor` the sender stays as a Site Developer if the receiver agrees on the accept page. Without it, the sender loses access when the receiver accepts. On a workspace site, the workspace's other people lose access once it leaves.
- **That nothing changes until the receiver accepts** and the site stays online throughout. The offer ends after 14 days; the sender can cancel before then.

Show these before asking for their go-ahead, then send the approve link.

## Test

There is no test send. The check is what happens next: tell the person the email went to the receiver (`agent_message` says if it didn't, and gives the accept link to pass on). Later, `get_teammates` shows `transfer` with `status` `pending`, `accepted`, `declined` or `expired`. Once accepted, the Site Owner changes, and the sender gets a notice and an email saying whether they were kept on. Don't tell the person the site is handed over until the status says accepted.

## Day to day

- `cancel_transfer` with `site` (REST `POST /v2/sites/<site>/transfers/<transfer>:cancel`): the receiver's link stops working and nothing changes on the site.
- `get_teammates` shows the pending transfer, or how the last one ended (`declined`, `expired` or `cancelled`). A site can have one transfer waiting at a time; a second send is refused until the first is accepted, cancelled or expired. An offer not accepted within 14 days expires: Page Lemon emails the sender and the receiver.
- Kept on into a workspace: when the receiver puts the site in a paid workspace and keeps the sender on, the sender is invited to that workspace as a Workspace Developer (it takes a seat) instead of staying as a Site Developer.
- Taking a private site into a workspace is not a transfer: `save_site_settings` with `workspace` (https://pagelemon.com/agents/workspaces).

## What Page Lemon refuses, and the fix

| Refused | Fix to offer |
|---|---|
| A receiver whose plan can't take the site (`403`, needs a paid plan) | They choose a paid plan on the offer page first (`upgrade_url`) |
| The site is archived | Unarchive it first |
| Sending to the person's own address | Use the new owner's email; a workspace site's Site Owner may send to themselves |
| A transfer already waiting for that site | `cancel_transfer`, or wait for the answer |
| Too many transfers (10 a day) or offers to one address (3 in 24 hours) | Wait; the reply says when |
| The receiver's plan can't take the site (at accepting) | They choose the plan the reply names, or the person removes the part that needs it (a plugin, a domain) first |
| The receiver has no free site slot | They archive a site or pick a bigger plan |
| Several sites at once | One transfer per site; do them one after another |
| A token without `manage`, or limited to one site | A token with the `manage` permission (https://pagelemon.com/docs/api-tokens) |
| A Site Developer trying to hand a site over | Only the Site Owner can; ask them |

## Links

- For the person: https://pagelemon.com/docs/hand-over
- Site Developers: https://pagelemon.com/agents/co-editing · Workspaces: https://pagelemon.com/agents/workspaces · Moving a domain's registration: https://pagelemon.com/docs/connect-domain
- API: https://pagelemon.com/docs/api · MCP tools: https://pagelemon.com/docs/mcp
- All AI guides: https://pagelemon.com/agents
