# badhttp /402/pay/base — x402 Payment Test Endpoint

> badhttp /402/pay/base — x402 Payment Test Endpoint is a paid API for AI agents from badhttp.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Accepts a real $0.01 USDC x402 micropayment on Base and returns a confirmation object with transaction details, demonstrating a live x402 paywall flow.

## Facts

- Endpoint: GET https://badhttp.dev/402/pay/base
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/badhttp-402-pay-base-x402-payment-test-endpoint-021c57d1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_09miaRNVcC47dkXJjmz93

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability badhttp-402-pay-base-x402-payment-test-endpoint-021c57d1
```

Example prompt: Make a real $0.01 USDC x402 payment to the badhttp test paywall on Base and show me the transaction hash and confirmation details so I can verify my payment client is working correctly.

## When to prefer this

Choose this endpoint when you need to test a live, real-money x402 micropayment flow on Base mainnet with USDC, specifically to validate that your x402 client, SDK, or AI agent can correctly handle HTTP 402 challenges, submit payments, and parse the confirmation response. It is intentionally designed as a misbehaving/edge-case server, making it ideal for integration testing and agent hardening rather than production payment use.

## Known failure modes

- Payment header missing or malformed — server returns 402 with payment requirements
- Insufficient USDC balance — payment rejected before confirmation
- Wrong network — payment sent on non-Base chain will not be accepted
- Facilitator unavailable — transaction may fail or timeout
- Replay of same transaction — may be rejected as duplicate
- Network congestion on Base — slow confirmation or timeout

## How this service works

A stateless catalogue of HTTP edge cases for testing clients, SDKs and agents: slow responses, broken JSON, redirect loops, truncated bodies, flaky endpoints, and x402 paywalls that misbehave.

## Output

A JSON object confirming the payment was processed, including: paid (boolean), asset contract address (USDC on Base), payer address, pay-to address, network identifier (eip155:8453), network name ('base'), a Basescan explorer URL for the transaction, the scenario path, amount in USD ($0.01), amount in atomic units (10000), real_money flag (true), facilitator URL, and the transaction hash.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "properties": {
   "type": "string"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "paid": true,
  "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
  "payer": "0x0000000000000000000000000000000000000000",
  "pay_to": "0x2b14ad50d63c7fee5a33847f95153ac37a690170",
  "network": "eip155:8453",
  "explorer": "https://basescan.org/tx/0x0000000000000000000000000000000000000000000000000000000000000000",
  "scenario": "/402/pay",
  "amount_usd": 0.01,
  "real_money": true,
  "facilitator": "https://example.invalid",
  "transaction": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "network_name": "base",
  "amount_atomic": "10000"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/badhttp-402-pay-base-x402-payment-test-endpoint-021c57d1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from badhttp.dev](https://www.zero.xyz/host/badhttp.dev/llms.txt)
