{"uid":"cap_a7WFZRMib0dGH67Avo0Lj","slug":"x402-payment-nonce-check-5ea00c01","name":"X402 Payment Nonce Check","description":"X402 Payment Nonce Check: X402 Payment Nonce Check checks a payment nonce for presence, length, and caller-known reuse from bounded caller-supplied values without an external provider. Call X402 Payment Nonce Check before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Payment Nonce Check as versioned det…","url":"https://api.delx.ai/api/v1/x402/x402-payment-nonce-check?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"nonce":{"type":"string","maxLength":8192,"description":"Nonce supplied to X402 Payment Nonce Check; used only for this bounded calculation and processed in memory without retention."},"seen_nonces":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Seen Nonces supplied to X402 Payment Nonce Check; used only for this bounded calculation and processed in memory without retention."},"minimum_length":{"type":"integer","description":"Minimum Length supplied to X402 Payment Nonce Check; used only for this bounded calculation and processed in memory without retention."}}},"responseSchema":{"type":"json","example":{"result":{"reused":false,"accepted":true,"nonce_length":18},"schema":"delx/util-x402-payment-nonce-check/v1","status":"pass","evidence":{"retained":false,"input_sha256":"5b10e7096699f6b6a1dcbc3414bdd28a9a8deeb87ccf9e505917b2a855abe5e2","external_calls":0},"operation":"delivery_contract:x402_payment_nonce_check"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.001","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.001/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_mAPkR7eW__eL1Mm-Ksib7","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Validates a payment nonce for presence, minimum length, and caller-known reuse against a bounded list of previously seen nonces, returning acceptance or rejection status with mismatch reasons.","exampleAgentPrompt":"Before accepting this x402 payment, check if the nonce 'abc123xyz' is valid — it must be at least 16 characters long and confirm it hasn't appeared in this list of previously seen nonces: ['def456', 'ghi789'].","exampleUseCases":[{"title":"Replay attack prevention before payment","prompt":"I'm about to accept an x402 payment with nonce 'nonce-a8f3d92b'; check if it's at least 32 characters long and verify it's not already in my seen-nonces list: ['nonce-111aaa', 'nonce-222bbb', 'nonce-333ccc']."},{"title":"Agent delivery nonce pre-flight check","prompt":"Before I finalize this agent delivery result, validate the nonce 'delivery-nonce-zx9q2m' — minimum length 20 — and make sure it's not a duplicate of any of these previously used nonces: ['delivery-nonce-aaa1', 'delivery-nonce-bbb2']."},{"title":"Nonce presence and format gate","prompt":"Can you run a nonce check on 'pay-7f3a' with a minimum length of 8 against an empty seen-nonces list, so I can confirm whether this nonce passes basic validity before forwarding the payment?"}],"resultDescription":"Returns a structured verdict including an explicit acceptance or rejection status, contract-specific check results (presence, length conformance, reuse detection), normalized evidence of the checks performed, and mismatch reasons explaining any failures — all deterministically computed in memory without external calls or data retention.","failureModes":["Nonce absent or empty string — rejected with presence failure reason","Nonce shorter than minimum_length — rejected with length mismatch reason","Nonce found in seen_nonces list — rejected with reuse/replay detection reason","seen_nonces array exceeds 256 items — request may be rejected or truncated","nonce or seen_nonces values exceed 8192 character limit — validation error"],"whenToPreferThis":"Use this endpoint when you need a lightweight, stateless, in-memory nonce validation step before accepting or paying for an x402 payment or agent delivery — especially when you maintain your own seen-nonces list on the caller side and want deterministic, contract-specific rejection reasons without an external database or provider dependency. Prefer it over custom nonce logic when you need normalized evidence and versioned results for audit trails.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-20T12:39:09.338Z","isFirstParty":false,"canonicalSlug":"x402-payment-nonce-check-5ea00c01"}