# Telnyx - Agent Payment Report

- Domain: telnyx.com
- Category: Voice & Communications
- Company type: machine api
- Payment systems found: x402
- Agent interfaces found: mcp, openapi
- Payer platforms or methods: None detected
- Vendor roles: None cataloged
- Strongest evidence: **Unpaid challenge validated**
- Score version: `agent-payments-v4`
- Last scanned: 2026-08-20T18:35:12.551559+00:00

## Payment documentation

- X402: No protocol-specific documentation attached.

## Scores

| Dimension | Score |
|-----------|-------|
| Payment readiness | 35 |
| Agent access | 93 |
| Overall readiness | 52 |

An em dash means there is not enough evidence to calculate that dimension. A public support claim is not treated as a completed payment.

## Payment Checks

Each section shows what was found, what still needs work, and the strongest available evidence. Not-applicable systems do not reduce the score.

### x402 payments

- Company signal: Detected

#### Is at least one accepted payment option complete enough for a payer to execute?

- Status: Passed
- Result: At least one accepted x402 payment option includes version, scheme, amount/maximum, asset, network, recipient, and resource binding.

#### Is the payment challenge protected from stale public caching?

- Status: Passed
- Importance: Recommended
- Result: Observed Cache-Control='no-store'.

#### Is there a concrete paid endpoint or tool the agent can discover?

- Status: Passed
- Result: Found candidate x402 endpoint https://x402.telnyx.com/v1/audio/speech.

#### Are HTTP, MCP, and A2A x402 claims evaluated separately?

- Status: Passed
- Result: x402 appears near MCP/A2A/agent-card language; transport-specific evidence must be separated.

#### Does an unpaid request return an x402 challenge?

- Status: Passed
- Result: The endpoint returned the expected HTTP 402 payment challenge.

### MPP payments

- Company signal: Not detected

#### Can the agent understand the shared and method-specific payment terms before payment?

- Status: Needs fix
- Result: Observed amount=None, currency=None, recipient=None, resource=None.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Include the shared amount and currency or asset fields, plus any fields required by the selected MPP method and intent. Recipient and description are method-specific and are not universally required.

#### Are MPP challenges and receipts cache-safe?

- Status: Needs fix
- Importance: Recommended
- Result: Cache headers were not scored because no MPP Payment challenge was detected.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Return Cache-Control: no-store on MPP challenge responses.

#### Is the MPP challenge identifiable and bound to a payment intent?

- Status: Needs fix
- Result: The challenge must include id, realm, a lowercase method, and a registered intent.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Include id, realm, a lowercase method, a registered intent, and a decodable request parameter in the MPP challenge.

#### Does an unpaid request return an MPP Payment challenge?

- Status: Needs fix
- Result: The endpoint did not return an MPP Payment challenge.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Return HTTP 402 with WWW-Authenticate: Payment.

#### Is the MPP service discoverable from the canonical OpenAPI route?

- Status: Passed
- Result: Found canonical MPP OpenAPI discovery at https://telnyx.com/openapi.json.

#### Is the MPP service publicly listed?

- Status: Needs verification
- Importance: Optional
- Result: Public listing is curated and not automatic after protocol validation.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Register the deployed API in MPPScan and, if it accepts live MPP payments, submit a service-directory pull request to tempoxyz/mpp.

#### Is there a concrete payable resource or tool?

- Status: Needs fix
- Result: A URL, OpenAPI operation, or protocol mention is not enough to prove a concrete payable MPP resource.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Publish a concrete MPP-protected endpoint or OpenAPI operation with payment information.

#### Is the challenge bounded to the current request and validity window?

- Status: Needs fix
- Result: The challenge does not include enough request-bound payment terms to verify it safely.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Bind the challenge ID to amount, currency, recipient, intent, protected route, and request digest where applicable; verify this with negative runtime tests.

### UCP checkout

- Company signal: Not detected

#### Are declared external UCP service endpoints reachable?

- Status: Not applicable
- Result: No external UCP service endpoint is declared; the registries may be empty or embedded-only.

#### Is the UCP business profile publicly discoverable?

- Status: Needs fix
- Result: A response was found at /.well-known/ucp, but it was not a valid UCP profile.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Serve a schema-valid public UCP business profile at /.well-known/ucp without authentication.

#### Is checkout capability claimed with enough structure to test later?

- Status: Needs fix
- Result: No structurally valid dev.ucp.shopping.checkout capability was declared.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Declare dev.ucp.shopping.checkout with version and schema when UCP checkout is supported.

#### Does the profile declare payment handlers?

- Status: Needs fix
- Result: The UCP profile does not contain a valid payment-handler registry.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Include the payment_handlers registry. Each declared handler entry requires version and id; config is optional.

#### Are signing keys published for message verification?

- Status: Not applicable
- Result: No signed-message or webhook capability is claimed, so signing keys are not required.

#### Does the profile follow the UCP business-profile registries?

- Status: Needs fix
- Result: The UCP profile exists, but its services, capabilities, or payment handlers use the wrong structure.
- Why it matters: Agents may not be able to discover, understand, or safely attempt this payment path from static public evidence.
- How to fix: Declare a YYYY-MM-DD ucp.version plus services and payment_handlers registries. Capabilities are optional; declared services, capabilities, and handlers must follow their transport/entity schemas.

### Not applicable

ACP, AP2, Visa TAP, Mastercard Agent Pay

### Agent access

#### AI content-use preferences

- Status: Passed
- Result: Content Signals found in robots.txt

#### AI crawler access

- Status: Passed
- Result: The crawler policy includes major AI agents.

#### Authenticated bot identity

- Status: Passed
- Result: A valid Web Bot Auth key directory is published.

#### Markdown availability

- Status: Passed
- Result: The site provides an agent-readable Markdown response.

#### Agent discovery DNS

- Status: Needs fix
- Result: Agent discovery records were found, but their DNS signatures could not be verified.
- Why it matters: Agents may fail to discover, read or authenticate against the public website.
- How to fix: Publish the applicable DNS-AID records under the company domain and protect the discovery zone with DNSSEC.

#### Agent discovery links

- Status: Passed
- Result: Found agent-useful Link relations: api-catalog

#### robots.txt

- Status: Passed
- Result: robots.txt exists with valid format

#### Sitemap

- Status: Passed
- Result: sitemap.xml exists with valid structure

#### A2A agent card

- Status: Not applicable
- Result: This check was excluded from scoring for this scan.

#### Agent Skills index

- Status: Passed
- Result: Agent Skills index exists with valid JSON

#### API catalog

- Status: Passed
- Result: API Catalog found with 18 APIs listed

#### Agent authentication guidance

- Status: Passed
- Result: Agent authentication guidance is published in auth.md.

#### MCP server discovery

- Status: Passed
- Result: MCP Server Card found at /.well-known/mcp/server-card.json

#### OAuth sign-in discovery

- Status: Passed
- Result: OAuth 2.0 (RFC 8414) discovery metadata found

#### Protected API metadata

- Status: Passed
- Result: OAuth Protected Resource Metadata found (well-known)

#### Browser tools (WebMCP)

- Status: Passed
- Result: The page exposes a browser-operable agent tool through WebMCP.

## Executed Agent Tests

| Agent | Status | Score |
|-------|--------|-------|
| Claude Code | Not run | — |
| Codex | Not run | — |

## Services and Endpoints

- No endpoint inventory attached.

## External Website Benchmarks

- No external website benchmark attached.

External scores provide website context and do not contribute to Lightsage's payment-readiness score.

## Evidence

- [Sapient backend static agent-payment scan](https://lightsage.com/agent-experience-arena/payments/methodology)
- [Lightsage backend static agent-payment scan](https://lightsage.com/agent-experience-arena/payments/methodology)

Canonical URL: https://lightsage.com/agent-experience-arena/payments/telnyx-com
