# X402 Quote Comparison and Selection Decision Procedure

> X402 Quote Comparison and Selection Decision Procedure is a paid API for AI agents from k2so.wrong.systems, paid per call via x402, $0.002/call, status down (last checked 2026-10-31).

Generates an AI-written decision procedure for agents to collect, normalize, and select the best quote from multiple x402 merchants without accounts or OAuth, including trust scoring and fallback logic.

## Facts

- Endpoint: GET https://k2so.wrong.systems/api/services/rt-nichxbt-x402-ai-agent-grocery-shopping-an-age?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: down
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402-quote-comparison-and-selection-decision-procedure-09b42fc2
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_FOvO9lANzLMYaI1QFeKFm

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 x402-quote-comparison-and-selection-decision-procedure-09b42fc2
```

Example prompt: I need a step-by-step decision procedure for picking the best grocery shopping service from several x402 merchants — walk me through how to collect their 402 challenges, normalize the quotes by total cost and settlement speed, apply trust scoring, eliminate bad actors, and pick a winner with a ranked table and a runner-up fallback.

## When to prefer this

Use this endpoint when an AI agent must autonomously choose one x402-priced service from multiple competing merchants without user accounts or OAuth, especially when offers differ in fee structure, settlement rails, or data freshness. Prefer this over generic comparison logic when you need x402-specific kill criteria (404 weak contracts, payTo mismatch detection) and a structured fallback to a runner-up quote. Not appropriate for non-x402 payment rails or scenarios requiring real-time streaming price feeds.

## Known failure modes

- Payment not provided — endpoint returns HTTP 402 requiring USDC payment before content is delivered
- Invalid HTTP method — only GET, HEAD, DELETE accepted; POST/PUT will be rejected
- Stale or expired merchant offers — procedure may flag offers as invalid if probed 402 challenges are outdated
- No topic override provided — procedure defaults to the embedded grocery shopping service slug
- LLM generation failure — generationSource may fall back to deterministic mode with reduced prose quality
- Network timeout to k2so.wrong.systems — agent receives no response and must retry

## How this service works

Decision procedure for an agent buying one service from multiple x402 merchants without accounts or OAuth. Collects offers, probes each for real 402 challenges, normalizes quotes to comparable units (total cost incl fees, settlement latency, data freshness), applies merchant trust tier and kill criteria (404/405 weak contracts, mismatched payTo, stale offers), then selects the winning quote with explicit rationale and records a runner-up for re-quote fallback. Returns a ranked quote table with

## Output

Returns a JSON object containing a prose decision procedure (120+ words) for agents to follow when comparing and selecting x402 merchant quotes, including ranked quote table logic, kill criteria, trust tier application, winner rationale, and runner-up fallback. Also includes metadata such as model used, generation source, timestamp, and service/provider identifiers.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {
      "meta": {
       "enum": [
        "0",
        "1"
       ],
       "type": "string",
       "description": "Set to 1 for free metadata JSON (no payment required)"
      },
      "topic": {
       "type": "string",
       "description": "Optional topic override for the decision procedure"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "title": "agent-x402-quote-comparison-and-selection-procedure paid response",
     "$schema": "https://json-schema.org/draft/2020-12/schema",
     "required": [
      "ok",
      "paid",
      "service",
      "provider",
      "result"
     ],
     "properties": {
      "ok": {
       "type": "boolean"
      },
      "paid": {
       "type": "boolean"
      },
      "result": {
       "type": "object",
       "required": [
        "ok",
        "service"
       ],
       "properties": {
        "ok": {
         "type": "boolean",
         "description": "Handler success"
        },
        "brief": {
         "type": "string",
         "description": "Decision procedure prose for agents"
        },
        "model": {
         "type": "string"
        },
        "topic": {
         "type": "string"
        },
        "service": {
         "type": "string",
         "description": "Service slug"
        },
        "procedure": {
         "type": "string"
        },
        "generatedAt": {
         "type": "string",
         "description": "ISO-8601 timestamp"
        },
        "generationSource": {
         "enum": [
          "llm",
          "reasoning",
          "deterministic"
         ],
         "type": "string"
        }
       }
      },
      "payment": {
       "type": "object",
       "properties": {
        "code": {
         "type": "string"
        },
        "payer": {
         "type": "string"
        },
        "detail": {
         "type": "string"
  
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "paid": true,
  "result": {
   "ok": true,
   "brief": "plain prose decision procedure (120+ words)",
   "model": "deepseek/deepseek-v4-flash-0731",
   "topic": "string topic",
   "service": "rt-nichxbt-x402-ai-agent-grocery-shopping-an-age",
   "procedure": "same as brief",
   "generatedAt": "2026-01-01T00:00:00.000Z",
   "generationSource": "deterministic"
  },
  "service": "rt-nichxbt-x402-ai-agent-grocery-shopping-an-age",
  "provider": "K-2SO"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402-quote-comparison-and-selection-decision-procedure-09b42fc2/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from k2so.wrong.systems](https://www.zero.xyz/host/k2so.wrong.systems/llms.txt)
