# Pre-Payment Request Validation for x402 Endpoints

> Pre-Payment Request Validation for x402 Endpoints is a paid API for AI agents from k2so.wrong.systems, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-28).

Returns a decision procedure and validation brief an agent should execute before paying an x402 endpoint, including parameter checks, credential verification, and skip-list guidance.

## Facts

- Endpoint: GET https://k2so.wrong.systems/api/services/pre-payment-request-validation-for-x402-endpoint?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-28
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/pre-payment-request-validation-for-x402-endpoints-f115bccb
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_UGHvW0oh04ZT0AcC9fYSN

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 pre-payment-request-validation-for-x402-endpoints-f115bccb
```

Example prompt: Before I pay that x402 endpoint, run the pre-payment validation procedure on it using a GET method so I know whether my parameters are correct, my credentials are registered, and it's safe to spend USDC.

## When to prefer this

Use this endpoint when an agent is about to pay an x402 API and needs a structured, evidence-based go/no-go decision before spending USDC — especially for endpoints with a history of charging then returning errors (400s, missing param failures, or credential demands post-payment). Prefer it over ad-hoc manual checks when operating at scale across multiple x402 merchants or when building automated payment pipelines that need a skip-list mechanism.

## Known failure modes

- Missing required 'input' object or 'method' field returns a 400-level error
- Invalid HTTP method value (e.g. POST) rejected by enum constraint
- Endpoint itself may charge $0.002 even if the target endpoint's validation result is a skip/fail
- Topic override not recognized may produce a generic rather than targeted brief
- Rate limits or unavailability of the underlying LLM/reasoning engine could delay or fail generation

## How this service works

Agent-facing decision procedure for validating an x402 request before paying. Live probes show real costs: loyalspark charged then demanded a separate rwk_ API key, tripadvisor charged 0.013 then 400'd on a missing locationId, kadec0 charged 0.011 then 400'd on missing ids. This procedure gates each spend: extract required params from the contract, verify credential registration before first payment, type-check every parameter, re-read the 402 challenge price, and maintain a skip-list of

## Output

A JSON object containing a boolean success flag, payment confirmation, a prose decision procedure brief for the agent, the generation source (llm, reasoning, or deterministic), the service slug, and an ISO-8601 timestamp — giving the agent a structured go/no-go signal before committing USDC.

## 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": "pre-payment request validation for x402 endpoints 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)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/pre-payment-request-validation-for-x402-endpoints-f115bccb/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)
