> ## Documentation Index
> Fetch the complete documentation index at: https://vetta.sh/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Phone

> Provision numbers on carrier-registered messaging; send and receive SMS.

<Info>**Available now.** The messaging layer is a first-party Vetta capability. Inbound SMS is verified and stored; the [wake](/docs/identity/inbound) is coming soon.</Info>

An identity can own a phone number for SMS. US messaging runs over **carrier-registered (A2P) messaging**, which requires a registered brand and campaign before outbound texts are allowed. Vetta handles the sequence; you choose a registration tier.

## Provisioning tiers

<Tabs>
  <Tab title="Sole proprietor">
    Fastest path, no business entity required. Vetta verifies your identity with an SMS one-time-passcode, then registers a sole-proprietor brand and campaign.

    ```bash CLI theme={"system"}
    vetta identity phone provision --identity ava --tier sole-prop
    ```

    If the brand is still verifying, provisioning returns `pending_brand_verification`; re-run after you complete the OTP.
  </Tab>

  <Tab title="Standard (business)">
    Higher throughput. Requires a registered business entity and a tax ID (EIN). Vetta creates the account, registers the campaign, and purchases the number.

    ```bash CLI theme={"system"}
    vetta identity phone provision --identity ava --tier standard \
      --legal-name "Acme Inc" --tax-id 12-3456789 --country US --contact-phone +15551234567
    ```
  </Tab>
</Tabs>

## Inbound vs outbound

| Capability       | Available                                                |
| ---------------- | -------------------------------------------------------- |
| **Inbound SMS**  | Immediately after the number is purchased.               |
| **Outbound SMS** | Only once the messaging campaign is `approved`/`active`. |

<Warning>
  Outbound texts before campaign approval are refused with a `compliance_pending` error. Inbound works right away, so an agent can start receiving before it can reply.
</Warning>

Campaign approval arrives asynchronously and unlocks outbound automatically — no re-provisioning needed.

## Sending and receiving

```bash CLI theme={"system"}
vetta identity phone send --identity ava --to +14155550142 --text "Your order shipped."
vetta identity phone list --identity ava
```

Inbound texts wake the agent through the [durable runtime](/docs/concepts/runtime), the same way inbound [email](/docs/identity/email) does — see [Inbound events](/docs/identity/inbound).

<Card title="Next: connections" icon="link" href="/docs/identity/connections">
  Act through third-party OAuth apps.
</Card>
