{"uid":"cap_8TVW_gQJYlh-ZlhAUPw8t","slug":"402utils-card-number-validator-dc56be16","name":"402utils Card Number Validator","description":"Structural card-number check before hitting a PSP: Luhn checksum, network detection from public IIN prefixes (visa, mastercard, amex, discover, jcb, diners, unionpay) and per-network length validation. POST body on purpose: the number never appears in a URL, so it stays out of request logs and x402 payment metadata — never stored, logged or echoed back. No BIN/issuer lookup (BIN databases are licensed): well-formed does not mean the card exists.","url":"https://402utils.com/v1/card-check","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"number":{"type":"string","description":"The card number to check, 8-19 digits."}}},"responseSchema":{"type":"json","example":{"length":16,"network":"visa","luhnValid":true,"lengthValid":true}},"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_Aun1uzevREM-qLCbdZJYb","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 card number via Luhn checksum, detects the card network from IIN prefix, and verifies length — without storing or logging the number","exampleAgentPrompt":"Before we try to charge it, can you check whether the card number 4111111111111111 passes the Luhn checksum and tell me what network it belongs to?","exampleUseCases":[{"title":"Filter bad cards before checkout","prompt":"We're seeing a lot of failed payment attempts that are probably just typos in the card number. Can you validate the card number the user just entered and let me know if it passes the Luhn check and what network it is, before we even try to send it to our payment processor?"},{"title":"Identify card network from number","prompt":"A customer just typed in their card number and I need to know whether it's a Visa, Mastercard, or Amex so I can show the right card logo in the UI — can you figure that out from the number itself without calling our PSP?"},{"title":"Verify card length and structure","prompt":"Before we attempt a charge, can you run a quick structural check on this card number — 378282246310005 — to make sure the length is right for its network and that it passes the Luhn algorithm?"}],"resultDescription":"Returns whether the card number passes the Luhn checksum, the detected card network (visa, mastercard, amex, discover, jcb, diners, or unionpay) based on its IIN prefix, and whether the length is valid for that network. Does not confirm the card actually exists or has funds — structural validity only.","failureModes":["Card number contains non-digit characters — likely a 400 validation error","Card number is fewer than 8 or more than 19 digits — rejected as out of range","Network cannot be detected from IIN prefix — returns unknown network","Luhn check fails — returns invalid with details","Service unavailable or x402 payment failure — non-2xx response"],"whenToPreferThis":"Use this endpoint when you need a fast, privacy-safe structural pre-check of a card number before sending it to a payment processor. Ideal for filtering obviously invalid cards early in a checkout flow without incurring PSP fees or network latency. Prefer this over BIN lookup services when issuer-level detail is not needed and when keeping the number out of logs is a priority.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-16T00:51:09.756Z","isFirstParty":false}