# Nexafon developer docs

> Put a WhatsApp Business inbox, WhatsApp and team calls, and WhatsApp commerce inside your own product.

Source: https://docs.nexafone.so/v1/

Nexafon runs a business’s WhatsApp: the shared inbox, WhatsApp calls and team calls, and WhatsApp commerce (catalog,
Shop menu, orders and payments). These docs show how to put all of it inside **your** product, so your users never
leave it.

## What you can build with

| Piece | What it does | Start here |
| --- | --- | --- |
| Web SDK | One script tag or npm package; Web Components for the whole dashboard (`<nexafon-app>`), the inbox, the softphone and a call button, themed with your colours | [Quickstart](/v1/quickstart/) |
| Server helpers | Sign user tokens and verify webhooks with one function call in Node, PHP, Python and Go | [Server helpers](/v1/server/) |
| REST API (v1) | Conversations, messages, templates, teams, members, recordings, commerce and payments | [API reference](/v1/api/) |
| Webhooks | Signed events for messages, calls, meetings, templates, billing and orders | [Webhooks](/v1/webhooks/) |
| Partner API | For platforms that run many stores: create stores, sign in their staff, receive every store’s events | [Partners](/v1/partners/) |

## How the pieces fit

1. Your server keeps a **secret key** and signs a short-lived **user token** for whoever is signed in to your product.
2. The page loads the SDK with your **publishable key**. The SDK swaps the user token for an **SDK session** that
   lives only in memory inside Nexafon’s frames.
3. Nexafon’s screens render inside your page; your code listens to [events](/v1/web/events/) and calls
   [methods](/v1/web/#methods) such as `call(phone)`.
4. Your server receives [webhooks](/v1/webhooks/) and calls the [API](/v1/api/) with the secret key.

[Core concepts](/v1/concepts/) explains workspaces, roles, keys, sessions and test mode in more detail.

## For AI agents and tools

Every page is also served as Markdown: add `.md` to its path, such as [/v1/quickstart.md](/v1/quickstart.md).
[/llms.txt](/llms.txt) lists every page, [/llms-full.txt](/llms-full.txt) has them all in one file, and the OpenAPI
3.1 spec is at [/v1/api/openapi.json](/v1/api/openapi.json). The [MCP server](/v1/ai/mcp/) gives Claude Code and other
MCP clients these docs, the example apps and test-key actions as tools.
