Who does what after a handover
The owner’s dashboard shows the application as coming through your partner name, and its brand line reads their name with yours beside it.
The flow
1
Invite by phone
POST /v1/partner/applications/{external_id}/owner with the person’s name and Saudi mobile, optionally their email and the locale of the message (ar by default).201 with the invitation and, once only, the link:accept_url in your own app too if you like; it is not returned again.2
The merchant accepts
The link opens a page that names you, the application and the masked phone. The merchant signs in to Tawked with that very phone through the ordinary one-time code, and the acceptance happens on sign-in. A phone new to Tawked gets an account with the name and email from the invitation and skips the onboarding wizard: the handed-over application is its first, and you already reviewed the brand. A forwarded link is useless to anyone else, because the invited phone is the credential.
3
You are told
service.owner_accepted arrives at your partner webhook with the owner’s name, phone and accepted_at, and GET /v1/partner/applications/{external_id}/owner answers accepted from then on. The merchant lands on the application’s WhatsApp tab and connects their number.Read the state
GET /v1/partner/applications/{external_id}/owner answers one of three states:
The rules
- One pending invitation per application. Inviting again supersedes the pending one; only the newest link works.
- The invitation expires after 7 days. After that the link says so and the state goes back to
none. Invite again. - The phone is the credential. It must be a Saudi mobile in an accepted format. It may be new to Tawked or belong to the owner of a client account, never to one of your own users or to a member of another team (
409 phone_not_eligible). - Nothing changes hands while a WhatsApp number is connected, in either direction (
409 number_connected). The inbox belongs to the team that runs the application, so the number is disconnected first, or you invite before it is connected. Accepting is refused too if a number was connected after the invitation went out. - One owner at a time. Inviting someone else while an owner is in place answers
409 owner_already_assigned; revoke first. - Each invitation is an SMS, capped at 3 an hour per application and 100 a day per partner (
429 rate_limited). Nothing is written or sent over the cap.
Take it back
DELETE /v1/partner/applications/{external_id}/owner withdraws a pending invitation, or removes an accepted owner: their account and its agents lose access to the application at once, and service.owner_revoked fires. Billing and keys never moved, so nothing else changes. Refused with 409 number_connected while a number is live.
Errors
The same handover is available in the partner console, on the application’s Owner card.