{
  "title": "Payment card checksum checker",
  "human_url": "https://happytails.ai/en/data-tools/payment-card-checksum-checker/",
  "agent_url": "https://happytails.ai/agents/en/data-tools/payment-card-checksum-checker/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/data-tools/payment-card-checksum-checker.md",
  "content": "Payment card checksum checker\nCheck the syntax and Luhn checksum of a card number locally. Results are masked. This does not verify a card, bank or payment.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nHow to use Payment card checksum checker\nEnter one number using digits and optional spaces or hyphens.\nReview syntax and Luhn as separate results, keeping their limits in mind.\nDownload the masked JSON report if needed, then clear the input.\nUseful next steps\nISBN checker\nCheck a number's mathematical checksum\nEnter one number containing 13 to 19 ASCII digits, with optional spaces or hyphens. The result separates accepted syntax from the Luhn checksum. A failed checksum can indicate a copying error, but this tool does not propose a replacement or generate card numbers.\nA checksum match is not card verification\nA number can pass Luhn and still be unissued, expired, blocked or declined. This tool does not check a bank, account balance, security code, ownership or authorization. Some payment schemes do not require Luhn. Use a payment provider's documented test numbers when testing software.\nKeep sensitive input out of the report\nCalculation stays in this browser tab. The number is not saved as a setting or sent in tool analytics. Results and the downloaded JSON report show only the last four digits. Do not enter names, expiry dates or security codes. Use Clear when finished; browser or device features outside the tool may have their own history behavior.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "ISBN checker",
      "url": "https://happytails.ai/en/education-tools/isbn-checker/"
    }
  ],
  "tool": {
    "id": "payment-card-checksum-checker",
    "category": "data-tools",
    "built": true,
    "requirements": "One number, 13–19 digits and at most 128 input characters. No remote validation, issuer guessing or payment authorization. Output always masks all but the last four digits. A checksum match is not evidence of a usable card.",
    "implementation": {
      "fields": [],
      "live": true,
      "presentation": "metrics",
      "inputMaxLength": 128,
      "inputMode": "numeric",
      "inputErrorCode": "IDENTIFIER_INPUT",
      "note": "Enter one number using 13–19 ASCII digits with optional spaces or hyphens. Do not enter expiry dates, security codes or names. Only syntax and Luhn are checked locally; no bank or network is contacted. Some schemes do not require Luhn. Results and downloaded reports show only the last four digits. The input is not saved as a setting or sent in analytics. Up to 128 input characters.",
      "experience": {
        "automatic": true,
        "single": true,
        "inputMaxLength": 128,
        "inputMode": "numeric",
        "label": "Number to check",
        "placeholder": "4242 4242 4242 4242",
        "help": "Public test number shown as an example. Enter one 13–19 digit number only. Do not include names, expiry dates or security codes. Up to 128 characters. Results update as you type. Up to 128 characters.",
        "action": null
      },
      "mode": "automatic",
      "interactive": false
    },
    "execution": "Browser interface",
    "api": null,
    "browser_agent": {
      "supported": true,
      "name": "run_current_tool",
      "discovery": "WebMCP on the human page in a supporting browser",
      "verification": "See audit/API-AUDIT.md; availability is not verification"
    }
  },
  "markdown": "# Payment card checksum checker\n\n- Human page: https://happytails.ai/en/data-tools/payment-card-checksum-checker/\n- Markdown: https://happytails.ai/en/data-tools/payment-card-checksum-checker.md\n- Structured JSON: https://happytails.ai/agents/en/data-tools/payment-card-checksum-checker/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `payment-card-checksum-checker` |\n| Category | data-tools |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Automatic updates after valid input or file selection. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nEnter one number using 13–19 ASCII digits with optional spaces or hyphens. Do not enter expiry dates, security codes or names. Only syntax and Luhn are checked locally; no bank or network is contacted. Some schemes do not require Luhn. Results and downloaded reports show only the last four digits. The input is not saved as a setting or sent in analytics. Up to 128 input characters.\n\n### Inputs and settings\n\nText input: Number to check.\n\nExample or placeholder shown in the interface (not a validated fixture):\n\n```text\n4242 4242 4242 4242\n```\n\nPublic test number shown as an example. Enter one 13–19 digit number only. Do not include names, expiry dates or security codes. Up to 128 characters. Results update as you type. Up to 128 characters.\n\nNo additional settings are declared for this tool.\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\nOne number, 13–19 digits and at most 128 input characters. No remote validation, issuer guessing or payment authorization. Output always masks all but the last four digits. A checksum match is not evidence of a usable card.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"payment-card-checksum-checker\",\n  \"category\": \"data-tools\",\n  \"built\": true,\n  \"requirements\": \"One number, 13–19 digits and at most 128 input characters. No remote validation, issuer guessing or payment authorization. Output always masks all but the last four digits. A checksum match is not evidence of a usable card.\",\n  \"implementation\": {\n    \"fields\": [],\n    \"live\": true,\n    \"presentation\": \"metrics\",\n    \"inputMaxLength\": 128,\n    \"inputMode\": \"numeric\",\n    \"inputErrorCode\": \"IDENTIFIER_INPUT\",\n    \"note\": \"Enter one number using 13–19 ASCII digits with optional spaces or hyphens. Do not enter expiry dates, security codes or names. Only syntax and Luhn are checked locally; no bank or network is contacted. Some schemes do not require Luhn. Results and downloaded reports show only the last four digits. The input is not saved as a setting or sent in analytics. Up to 128 input characters.\",\n    \"experience\": {\n      \"automatic\": true,\n      \"single\": true,\n      \"inputMaxLength\": 128,\n      \"inputMode\": \"numeric\",\n      \"label\": \"Number to check\",\n      \"placeholder\": \"4242 4242 4242 4242\",\n      \"help\": \"Public test number shown as an example. Enter one 13–19 digit number only. Do not include names, expiry dates or security codes. Up to 128 characters. Results update as you type. Up to 128 characters.\",\n      \"action\": null\n    },\n    \"mode\": \"automatic\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nCheck the syntax and Luhn checksum of a card number locally. Results are masked. This does not verify a card, bank or payment.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n### How to use Payment card checksum checker\n\n1. Enter one number using digits and optional spaces or hyphens.\n2. Review syntax and Luhn as separate results, keeping their limits in mind.\n3. Download the masked JSON report if needed, then clear the input.\n\n## Useful next steps\n\n- [ISBN checker](https://happytails.ai/en/education-tools/isbn-checker/) ([Markdown](https://happytails.ai/en/education-tools/isbn-checker.md))\n\n## Check a number's mathematical checksum\n\nEnter one number containing 13 to 19 ASCII digits, with optional spaces or hyphens. The result separates accepted syntax from the Luhn checksum. A failed checksum can indicate a copying error, but this tool does not propose a replacement or generate card numbers.\n\n### A checksum match is not card verification\n\nA number can pass Luhn and still be unissued, expired, blocked or declined. This tool does not check a bank, account balance, security code, ownership or authorization. Some payment schemes do not require Luhn. Use a payment provider's documented test numbers when testing software.\n\n### Keep sensitive input out of the report\n\nCalculation stays in this browser tab. The number is not saved as a setting or sent in tool analytics. Results and the downloaded JSON report show only the last four digits. Do not enter names, expiry dates or security codes. Use Clear when finished; browser or device features outside the tool may have their own history behavior.\n"
}