# White-label partner portal

Your logo, colours and name on the partner portal, the join page, the panel and partners' emails, and how partners sign in without a new password.

Your partners can see their links, results and payouts on a portal at your own domain,
`https://partners.example.com`, with your logo, colours and name, and join your programs
there. The in-app panel, the friend's welcome and partners' emails take the same brand. Nothing
your partners see says BoltClaw unless you turn "Powered by BoltClaw" on.

## Your brand

One brand for the workspace, used by every program. A program may override any field of it;
a field the override leaves empty follows the workspace's brand. Set it on **Referrals, Brand
and domains**, or with `GET` and `PATCH /v1/referrals/brand` (add `program_id` for one program's
override).

| Field | What it is |
|---|---|
| `name` | Your name, as partners read it (up to 80 characters) |
| `logo_light_path`, `logo_dark_path` | Your logo for light and for dark backgrounds |
| `favicon_path` | The icon in the browser tab |
| `accent` | Buttons and links, as `#rrggbb`; text on it is chosen so it stays readable |
| `background` | The portal's page colour, as `#rrggbb` |
| `radius` | Corner roundness, 0 to 24 pixels |
| `sender_name` | The name partners' emails come from (up to 60 characters). The address stays ours |
| `support_email` | Where partners' replies to those emails go, once you confirm it |
| `show_powered_by` | "Powered by BoltClaw" on the portal and in emails. Off unless you turn it on |

**Logos and the icon.** PNG, JPEG or WebP, at most 2 MiB each (no SVG). Ask for an upload URL
with `POST /v1/referrals/brand/uploads` (`slot`: `logo_light`, `logo_dark` or `favicon`), `PUT`
the file to it, then save the `path` it answered with `PATCH /v1/referrals/brand`. Until that
PATCH nothing changes. The URL works once and expires; treat it as a secret.

**The support address.** It becomes the reply-to of partners' emails only after you confirm it:
`POST /v1/referrals/brand/support-email/verification` emails a six-digit code to it, good for
15 minutes, and `POST /v1/referrals/brand/support-email/verification/confirm` takes it back.
Changing the address unconfirms it.

Changing the brand is asked first when an AI assistant does it, unless your organisation lets
assistants change it without asking.

## The portal

Add a domain of kind `portal` ([Your own domain](https://boltclaw.ai/docs/referral-domains) has every step). Once
it is active, your partners find there:

- **Programs**: each of your programs they have joined, with their link, the QR code, their
  results and what they have earned;
- **a program's page**: their links and codes, their own vanity code, commissions, and payouts;
- **Payouts**: what each program has paid them, and how it pays them;
- **Tax**: what you ask for and whether their form is in, and the invoices of their payouts;
- **join pages**: `https://partners.example.com/join/<token>`, the same signup page as on
  BoltClaw, in your brand. Your signup links use it once the domain is active.

The portal shows your programs only. A partner who also promotes other businesses never sees
them there.

## Signing in

Partners sign in with their own partner account, the same one for every business they work
with, so they never need a new password for your portal. Choosing **Sign in** on your portal
sends them to sign in on BoltClaw (Google, or an email address and password, with two-step
verification if they have it on); they confirm that they want to continue to your portal, and
come straight back with a single-use code. The code works once, for one minute, only on your
domain, and only together with a value your portal set in their browser before they left.

No password is ever typed on your domain, and your portal never holds their BoltClaw session:
what it holds can show them their part of your programs, let them join one and set their own
vanity code, and nothing else. A portal sign-in lasts at most seven days. Signing out there
ends that portal's sign-in only.

What belongs to the partner rather than to you (their payout details, their tax forms and
invoices, whether you see their email, whether the people they refer see their name) they
change on their own account, never on a business's portal. The portal links them there.

## Email

Emails to partners about your programs (approved, a new commission, a payout, a payout that
needs them) come from your sender name, reply to your confirmed support address, carry your
logo and accent colour, and link to your portal once you have one. Sending from your own email
domain is not available yet.

<!-- https://boltclaw.ai/docs/referral-portal as markdown. Generated from openapi.yaml; API version 1.22.0. -->
<!-- Every /docs page answers as markdown: add .md to its path, or send Accept: text/markdown. -->
