# R1 — Platform account setup (task `F-01`)

**Status: NOT EXECUTED.** Blocked on founder decisions **O2** (billing entity + payment method) and **O4** (≤ $150 pilot budget approval) — `docs/SPEC.md` §6.

**Estimate:** 2h · **Cost:** under $20 to first test call (`docs/BUSINESS_PLAN.md` Part 6) · **Done when:** the test number rings and an out-of-the-box assistant answers.

> This runbook is written to be executed by the founder in one sitting, without re-reading the planning suite. Every number that must be captured has a box to write it in. **Fill the boxes as you go** — `R2` and `docs/PRICING.md` both depend on figures recorded here.

---

## Before you start — the two decisions

| Item | Question | Answer |
|---|---|---|
| **O4** | Approve ≤ $150 total across P1–P8 for credits, numbers and test minutes? | ☐ Approved · Ceiling: $______ |
| **O2** | Which entity pays — ThemeTags (BDT) or the US LLC (USD)? Which card? | Entity: __________ |

**Do not proceed past this table without both.** The account you open on the wrong entity is an account you migrate later, and platform billing entities are not trivially portable.

---

## Step 1 — Retell account (primary platform, D1)

1. Sign up at Retell AI with a **role address you control long-term**, not a personal one. Suggested: `voice@themetags.com`.
2. **Turn on 2FA immediately** — `docs/SECURITY.md` §3 requires it, and this account will hold client call data.
3. Store the credentials in the team vault as `p13/platform/retell`. Never in a browser profile only, never in chat.
4. Load credit. Start with **$25**, not the full ceiling — you want a small, readable bill for `F-02`, and an unspent balance is not a saving you lose.

| Capture | Value |
|---|---|
| Account email | |
| Vault entry created | ☐ `p13/platform/retell` |
| 2FA enabled | ☐ |
| Credit loaded | $ |
| Date | |

## Step 2 — Confirm the actual pricing you are on

**Do this before making a single call.** `docs/PRICING.md` §2 flags every platform figure as **[verify at signup]**, and `docs/PROGRESS.md` records the finding that third-party round-ups disagree by a factor of four ($0.07–0.31/min).

Read it off Retell's own billing page, not a blog:

| Component | Planning assumption | **What the vendor's page actually says** |
|---|---|---|
| Voice engine per minute | $0.070 | $ |
| LLM per minute (the model you'll use) | $0.006 (small-model class) | $ |
| Telephony per minute (US inbound) | $0.015 | $ |
| Number rental per month | $2.00 | $ |
| **Sum** | **≈ $0.091/min** | **$______/min** |
| Billing granularity | per second | ☐ per second ☐ per minute ☐ other: |
| Concurrency charges | none expected | |

> **If the sum is materially above ~$0.12/min, stop and report it before proceeding.** `docs/ROADMAP.md` lists "platform pricing shifts materially" as the tripwire that re-opens decision D1 — the Vapi fallback exists for exactly this. Do not quietly absorb a worse rate into the plan.

## Step 3 — Buy one US test number

US only. `docs/COMPATIBILITY.md` §1: the US is the only friction-free phone market — Twilio-class local numbers, instant API purchase, no documentation regime. BD is constrained and UAE is effectively closed, which is why both are WhatsApp-first markets and neither belongs in a P1 test.

1. Buy **one** local US number through the platform.
2. Record it below. This becomes the demo line on the landing page (`site/index.html` placeholder #1).

| Capture | Value |
|---|---|
| Number purchased | |
| Area code / region | |
| Monthly cost | $ |
| One-off cost, if any | $ |

## Step 4 — Vapi account, dormant fallback (D1)

Create it, verify it, load **nothing**. `docs/SPEC.md` D1 keeps Vapi as the fallback and the cost-optimisation path; D3 forbids paid tooling at pilot stage. Five minutes now saves a week if the D1 tripwire ever fires.

| Capture | Value |
|---|---|
| Account created | ☐ |
| Vault entry | ☐ `p13/platform/vapi` |
| Credit loaded | **$0 — intentionally** |

## Step 5 — Out-of-the-box assistant, and the first call

Do **not** load the restaurant template yet. This step proves the plumbing — account, number, telephony — and nothing else. Mixing plumbing failures with prompt failures is how an evening disappears.

1. Create an assistant from the platform's default template. Change nothing.
2. Attach the test number.
3. **Call it from your own phone.**

| Capture | Value |
|---|---|
| It answered | ☐ yes ☐ no |
| Voice quality, one honest line | |
| Response felt fast? | ☐ yes ☐ noticeable lag |
| Call appears in the dashboard | ☐ |
| Cost of that one call, from the dashboard | $ |
| Its duration | _____ s |

## Step 6 — Confirm the WhatsApp calling route exists

`docs/COMPATIBILITY.md` §4 marks the WhatsApp calling path **[test]** on both platforms and says plainly: *"P1 must confirm the practical route on the chosen platform before BD pilot is scheduled."*

You are not building it now. You are finding out whether it exists and what it costs.

1. Search Retell's docs for WhatsApp / Meta Calling API / SIP integration.
2. Write down what you find — including "no clear documented route", which is itself the answer.

| Capture | Value |
|---|---|
| Documented WhatsApp route on Retell? | ☐ yes ☐ via SIP/partner ☐ **no clear route** |
| Link | |
| Per-client onboarding needed? | |
| Inbound cost per Meta | |

> **If there is no practical route, that is a finding that changes the plan** — the BD and Gulf markets are WhatsApp-first by necessity, and both pilot tracks depend on this. Log it in `docs/PROGRESS.md` findings and update `docs/COMPATIBILITY.md` §4 the same day, with the date and the evidence link. Do not leave it as a `[test]`.

---

## Close-out — same session, not "later"

☐ All boxes above filled
☐ Vault entries created for both platforms
☐ 2FA on Retell
☐ **`docs/COMPATIBILITY.md` §4** updated — Retell per-minute `[verify]` → real figure with date; WhatsApp route `[test]` → verdict
☐ **`docs/PRICING.md` §2** updated — the vendor-confirmed component costs replace the researched estimates
☐ **`docs/PROGRESS.md`** — task log row for `F-01`, plus any finding from steps 2 or 6
☐ **`site/index.html`** — demo number placeholder replaced
☐ Hours spent logged: ______ h
☐ **Proceed to `R2`** — do it the same evening while the account is fresh and empty. An account with only your test calls in it is the cleanest cost measurement you will ever get.
