{"templateId":"markdown","versions":[{"version":"v0-beta","label":"Beta (v0)","link":"/products/native-api/docs/how-it-works/tin-validation","default":true,"active":true,"folderId":"e4cb5a06"}],"sharedDataIds":{},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"TIN Validator Specifications - All Countries","description":"Official Banxa API documentation – on-ramp and off-ramp transfers with identity verification and compliance.","llmstxt":{"title":"Banxa Developer Documentation","description":"Integrate crypto-fiat exchange with Banxa's licensed infrastructure: payments, KYC, compliance, and settlement handled. 150+ countries, 45 global licences.","details":{"content":"Two integration products: **Banxa Native API** for partners who manage their own KYC and want full UX control (headless, HMAC server-to-server, no Banxa-hosted screens); **Banxa Hosted Checkout** for partners who want Banxa to handle KYC and payments (three paths: Referral URL, API, or an SDK — React Native, iOS, Android, Flutter, or JS Native Payments). Both use the same sandbox and production environments at `https://api.banxa-sandbox.com` and `https://api.banxa.com`.\n\n## When to use Banxa\n\nReach for Banxa when a product needs to let people **buy crypto with fiat or sell crypto for fiat** without the partner holding money-transmitter or VASP licences. Banxa is the licensed counterparty: it takes the payment, runs compliance, and delivers the asset. Typical fits are wallets, exchanges, dApps, gaming platforms and fintech apps adding an on-ramp or off-ramp.\n\nPick the product by who owns KYC:\n\n- **Banxa Native API** - the partner already runs its own KYC and wants no Banxa screens at all. Headless, HMAC-signed server-to-server, partner owns the entire interface. Needs a backend. Days to weeks to integrate.\n- **Banxa Hosted Checkout** - the partner does not want to run KYC. Banxa handles identity, payment and delivery in its own flow, reached by redirect, embedded iFrame, or an SDK (React Native, iOS, Android, Flutter, JS Native Payments). No backend required for the referral path. Hours to days to integrate.\n- **Legacy API** - existing integrations only. Do not start here.\n\nBanxa is not the right tool for crypto-to-crypto swaps, custody or wallet infrastructure, or for any flow where the partner wants to settle funds itself.\n\n## Constraints\n\n- **Authentication**: HMAC credentials must be stored server-side only, never expose in frontend, mobile, or client-side code. HMAC is required for all Native API calls and for KYC sharing in Hosted Checkout; `x-api-key` is used for all other Hosted Checkout endpoints.\n- **`externalCustomerId`**: Required on every buy and sell order. Use a stable opaque identifier, never PII.\n- **`identityReference`**: Must remain constant for the same user across all requests. Must not contain PII. If you attempt to create an identity for an email that already exists, you will receive a 422 / code 81, so retrieve the existing record rather than retrying creation. Use `GET /eapi/v0/identities/{identityReference}?email=user@example.com` to look up the real `identityReference` linked to an email.\n- **`quoteId`**: Only supported by `POST /eapi/v0/ramps` (bank transfer). The React Native SDK and Embedded Payment Button do not accept a `quoteId`, so use indicative pricing (`GET /eapi/v0/price`) for SDK and Embedded Payment Button flows.\n- **Quotes**: Indicative prices are not rate-locked, so refresh close to order creation to minimise rate drift. Locked quotes (`GET /eapi/v0/quote`) expire after approximately 3 minutes and are only valid for bank transfer ramp creation.\n- **Eligibility gate**: Never create a ramp or invoke the SDK when `paymentReady` is `false`. Always check eligibility and satisfy all requirements before payment execution.\n- **Webhooks**: Verify all inbound webhook signatures with HMAC-SHA256 before processing. Return HTTP 200 immediately and process asynchronously.\n- **Product selection**: Banxa Native is for partners who manage their own KYC. Banxa Hosted Checkout is for partners who do not do KYC. These are separate products with separate flows: do not mix endpoints across products.\n- **SDK scope**: The React Native SDK has no `banxa.customerIdentity` module. Identity and KYC are handled through the Native API only. `primerCallbacks` and `primerSettings` are Native context only and must not be referenced in Hosted Checkout integrations.\n- **Payment method naming**: Never use \"eAPI\" or \"EAPI\" as a product name. The correct name is \"Banxa Native API\". The URL path prefix `/eapi/` is correct and should not be changed.\n"}}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"tin-validator-specifications---all-countries","__idx":0},"children":["TIN Validator Specifications - All Countries"]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For the complete documentation index, see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://docs.banxa.com/llms.txt"},"children":["llms.txt"]},". Append ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".md"]}," to any page URL for its markdown version."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-argentina-ar---artinvalidator","__idx":1},"children":["🇦🇷 Argentina (AR) - ArTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," DNI (7-8 digits) OR CUIT (11 digits)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^(?:\\d{7,8}|\\d{2}-\\d{8}-\\d)$/"]}," (normalized)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["DNI: Simple 7-8 digit number"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["CUIT: 11 digits with Modulo 11 checksum"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["20-12345678-9"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-austria-at---attinvalidator","__idx":2},"children":["🇦🇹 Austria (AT) - AtTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 9 digits (Abgabenkontonummer)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{9}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Luhn-like algorithm with weighted sum"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Odd positions (1-based): Add digit directly"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Even positions (1-based): Multiply by 2, add cross-sum"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check digit = (10 - (sum % 10)) % 10"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123456789"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-belgium-be---betinvalidator","__idx":3},"children":["🇧🇪 Belgium (BE) - BeTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 11 digits (National Number)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{11}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Modulo 97 checksum"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pre-2000: Check = 97 - (First9Digits % 97)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Post-2000: Check = 97 - ((2000000000 + First9Digits) % 97)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["85073003361"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["00012312345"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-bulgaria-bg---bgtinvalidator","__idx":4},"children":["🇧🇬 Bulgaria (BG) - BgTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 10 digits (EGN - Unified Civil Number)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{10}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Weighted sum modulo 11"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights: [2, 4, 8, 5, 10, 9, 7, 3, 6]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If remainder < 10: check digit = remainder"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If remainder == 10: check digit = 0"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-brazil-br---brtinvalidator","__idx":5},"children":["🇧🇷 Brazil (BR) - BrTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 11 digits (CPF)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{11}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Dual check-digit validation (Modulo 11)"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["First check digit: Weighted sum of first 9 digits"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Second check digit: Weighted sum of first 10 digits"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678909"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-chile-cl---cltinvalidator","__idx":6},"children":["🇨🇱 Chile (CL) - ClTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 7-9 characters (RUT/CI)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{7,8}[0-9K]$/"]}," (normalized)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Modulo 11 checksum"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Multipliers cycle: 2, 3, 4, 5, 6, 7, 2, 3..."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Remainder 11 → '0', Remainder 10 → 'K', else → digit"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12.345.678-5"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678-5"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12.345.670-K"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-colombia-co---cotinvalidator","__idx":7},"children":["🇨🇴 Colombia (CO) - CoTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 6-10 digits (CC - Cédula de Ciudadanía)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{6,10}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Format only (no checksum)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123456"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-cyprus-cy---cytinvalidator","__idx":8},"children":["🇨🇾 Cyprus (CY) - CyTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 8 digits + 1 letter (TIC)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{8}[A-Z]$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Custom translation map for even indices"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Even indices use translation map"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Odd indices add directly"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Sum % 26 → Letter (A-Z)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678A"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-czech-republic-cz---cztinvalidator","__idx":9},"children":["🇨🇿 Czech Republic (CZ) - CzTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 9 or 10 digits (DIČ/RČ)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{9,10}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["10 digits: (First 9 % 11) % 10 == 10th digit"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["9 digits: No checksum (pre-1954)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123456789"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-germany-de---detinvalidator","__idx":10},"children":["🇩🇪 Germany (DE) - DeTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 11 digits (Steuer-Identifikationsnummer)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{11}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," ISO 7064 Mod 11,10 + structure check"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["First digit cannot be 0"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Exactly one digit must repeat 2 or 3 times in first 10 digits"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["ISO 7064 Mod 11,10 checksum"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678902"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-denmark-dk---dktinvalidator","__idx":11},"children":["🇩🇰 Denmark (DK) - DkTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 10 digits (CPR)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{10}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Format only (no checksum)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-estonia-ee---eetinvalidator","__idx":12},"children":["🇪🇪 Estonia (EE) - EeTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 11 digits (Isikukood)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{11}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Weighted sum modulo 11 (two-stage)"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights1: [1, 2, 3, 4, 5, 6, 7, 8, 9, 1]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If remainder == 10, use Weights2: [3, 4, 5, 6, 7, 8, 9, 1, 2, 3]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If still 10, check digit = 0"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678901"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-spain-es---estinvalidator","__idx":13},"children":["🇪🇸 Spain (ES) - EsTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," NIF (8 digits + letter) OR NIE (X/Y/Z + 7 digits + letter)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^(\\d{8}|[XYZ]\\d{7})[A-Z]$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Modulo 23 with letter mapping"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["NIE: Replace X→0, Y→1, Z→2"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Number % 23 → Letter from \"TRWAGMYFPDXBNJZSQVHLCKE\""," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678Z"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["X1234567L"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-finland-fi---fitinvalidator","__idx":14},"children":["🇫🇮 Finland (FI) - FiTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 11 characters (HETU)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{6}[+\\-A]\\d{3}[0-9A-Z]$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Modulo 31 checksum"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Combine DDMMYY + NNN (ignore separator)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Number % 31 → Check char from \"0123456789ABCDEFHJKLMNPRSTUVWXY\""," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["010190-123A"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-france-fr---frtinvalidator","__idx":15},"children":["🇫🇷 France (FR) - FrTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 13 digits (NIF)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^[0-3]\\d{12}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Format only - first digit must be 0, 1, 2, or 3"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["0123456789012"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1123456789012"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-united-kingdom-gb---gbtinvalidator","__idx":16},"children":["🇬🇧 United Kingdom (GB) - GbTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 2 letters + 6 digits + 1 letter (NINO)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^[A-CEGHJ-PR-TW-Z]{1}[A-CEGHJ-NPR-TW-Z]{1}[0-9]{6}[A-D]{1}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Format + forbidden prefix check"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Forbidden prefixes: BG, GB, KN, NK, NT, TN, ZZ, OO"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AB123456C"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-greece-gr---grtinvalidator","__idx":17},"children":["🇬🇷 Greece (GR) - GrTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 9 digits (AFM)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{9}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Weighted sum modulo 11"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights: [256, 128, 64, 32, 16, 8, 4, 2]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check digit = (Sum % 11) % 10"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123456789"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-croatia-hr---hrtinvalidator","__idx":18},"children":["🇭🇷 Croatia (HR) - HrTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 11 digits (OIB)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{11}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," ISO 7064 Mod 11,10"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678901"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-hungary-hu---hutinvalidator","__idx":19},"children":["🇭🇺 Hungary (HU) - HuTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 10 digits (Adóazonosító jel)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{10}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Weighted sum modulo 11"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights: [1, 2, 3, 4, 5, 6, 7, 8, 9]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If remainder == 10: Invalid"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Else: Check digit = remainder"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-ireland-ie---ietinvalidator","__idx":20},"children":["🇮🇪 Ireland (IE) - IeTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 7 digits + 1 or 2 letters (PPS)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{7}[A-Z]{1,2}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Weighted sum modulo 23"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights for first 7 digits: [8, 7, 6, 5, 4, 3, 2]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If 9 chars, add (9th char value × 9) to sum"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Remainder 0 → 'W', else → letter from A-Z"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567W"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567WA"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-italy-it---ittinvalidator","__idx":21},"children":["🇮🇹 Italy (IT) - ItTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 16 characters (Codice Fiscale)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^[A-Z]{6}\\d{2}[ABCDEHLMPRST]\\d{2}[A-Z]\\d{3}[A-Z]$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Complex odd/even position mapping"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Odd positions: Custom value map"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Even positions: 0-9 = 0-9, A-Z = 0-25"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Sum % 26 → Check letter"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["RSSMRA00A01H501X"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-lithuania-lt---lttinvalidator","__idx":22},"children":["🇱🇹 Lithuania (LT) - LtTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 11 digits (Asmens kodas)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{11}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Same as Estonia (two-stage weighted sum)"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights1: [1, 2, 3, 4, 5, 6, 7, 8, 9, 1]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If remainder == 10, use Weights2: [3, 4, 5, 6, 7, 8, 9, 1, 2, 3]"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678901"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-latvia-lv---lvtinvalidator","__idx":23},"children":["🇱🇻 Latvia (LV) - LvTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 11 digits (Personas kods)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{11}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Format only (post-2017 IDs have no checksum)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678901"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-luxembourg-lu---lutinvalidator","__idx":24},"children":["🇱🇺 Luxembourg (LU) - LuTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 13 digits (Matricule)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{13}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Dual checksum (Luhn + Verhoeff)"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["12th digit = Luhn checksum of first 11 digits"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["13th digit = Verhoeff checksum of first 11 digits"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890123"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-malta-mt---mttinvalidator","__idx":25},"children":["🇲🇹 Malta (MT) - MtTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 7 digits + letter OR 9 digits"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^(\\d{7}[ABGHLMPZ]|\\d{9})$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Format only"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Identity Card: 7 digits + letter (A, B, G, H, L, M, P, Z)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Taxpayer Reference: 9 digits"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567M"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123456789"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-mexico-mx---mxtinvalidator","__idx":26},"children":["🇲🇽 Mexico (MX) - MxTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 18 characters (CURP)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^[A-Z]{4}\\d{6}[HM][A-Z]{5}[A-Z0-9]\\d$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Format only (case-insensitive)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["HEGG560427MVZRRL04"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-netherlands-nl---nltinvalidator","__idx":27},"children":["🇳🇱 Netherlands (NL) - NlTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 9 digits (BSN)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{9}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," 11-test (weighted sum)"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights: [9, 8, 7, 6, 5, 4, 3, 2, -1]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Sum % 11 must equal 0"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123456782"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-poland-pl---pltinvalidator","__idx":28},"children":["🇵🇱 Poland (PL) - PlTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 11 digits (PESEL)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{11}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Weighted sum"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights: [1, 3, 7, 9, 1, 3, 7, 9, 1, 3]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check digit = (10 - (sum % 10)) % 10"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678901"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-puerto-rico-pr---ustinvalidator","__idx":29},"children":["🇵🇷 Puerto Rico (PR) - UsTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Uses US SSN validation"]}," (same as US)"]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-portugal-pt---pttinvalidator","__idx":30},"children":["🇵🇹 Portugal (PT) - PtTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 9 digits (NIF)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{9}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Weighted sum modulo 11"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights: [9, 8, 7, 6, 5, 4, 3, 2]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If remainder < 2: check digit = 0"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Else: check digit = 11 - remainder"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123456789"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-romania-ro---rotinvalidator","__idx":31},"children":["🇷🇴 Romania (RO) - RoTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 13 digits (CNP)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{13}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Weighted sum modulo 11"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights: [2, 7, 9, 1, 4, 6, 3, 5, 8, 2, 7, 9]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If remainder == 10: check digit = 1"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Else: check digit = remainder"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890123"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-sweden-se---setinvalidator","__idx":32},"children":["🇸🇪 Sweden (SE) - SeTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 10 or 12 digits (Personnummer)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^(\\d{10}|\\d{12})$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Luhn algorithm"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If 12 digits, drop first 2 (century)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Luhn checksum on remaining 10 digits"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["201234567890"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-slovenia-si---sitinvalidator","__idx":33},"children":["🇸🇮 Slovenia (SI) - SiTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 8 digits (Davčna številka)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{8}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Weighted sum modulo 11"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Weights: [8, 7, 6, 5, 4, 3, 2]"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If remainder 0 or 1: check digit = 0"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Else: check digit = 11 - remainder"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["12345678"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-slovakia-sk---sktinvalidator","__idx":34},"children":["🇸🇰 Slovakia (SK) - SkTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 9 or 10 digits (Rodné číslo)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{9,10}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["10 digits: (First 9 % 11) % 10 == 10th digit"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["9 digits: No checksum (pre-1954)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123456789"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-thailand-th---thtinvalidator","__idx":35},"children":["🇹🇭 Thailand (TH) - ThTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 13 digits (TIC)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{13}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Format only (no checksum)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234567890123"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-united-states-us---ustinvalidator","__idx":36},"children":["🇺🇸 United States (US) - UsTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 9 digits (SSN)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," Complex validation (not simple regex)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Multiple rules"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Cannot start with 666, 000, or 9xx"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Group number (digits 4-5) cannot be 00"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Serial number (digits 6-9) cannot be 0000"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123-45-6789"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123456789"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Invalid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["666-12-3456"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["000-12-3456"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["123-00-3456"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"-south-africa-za---zatinvalidator","__idx":37},"children":["🇿🇦 South Africa (ZA) - ZaTinValidator"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Format:"]}," 13 digits (SAID)"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Regex:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/^\\d{13}$/"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation:"]}," Luhn checksum"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Last digit must match Luhn checksum of first 12 digits"," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Valid Examples:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["8001015009087"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Total: 36 countries supported"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validation Types:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Simple Regex: 6 countries (CO, DK, FR, LV, MX, TH)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Checksum Validation: 30 countries (various algorithms)"]}]}]},"headings":[{"value":"TIN Validator Specifications - All Countries","id":"tin-validator-specifications---all-countries","depth":1},{"value":"🇦🇷 Argentina (AR) - ArTinValidator","id":"-argentina-ar---artinvalidator","depth":2},{"value":"🇦🇹 Austria (AT) - AtTinValidator","id":"-austria-at---attinvalidator","depth":2},{"value":"🇧🇪 Belgium (BE) - BeTinValidator","id":"-belgium-be---betinvalidator","depth":2},{"value":"🇧🇬 Bulgaria (BG) - BgTinValidator","id":"-bulgaria-bg---bgtinvalidator","depth":2},{"value":"🇧🇷 Brazil (BR) - BrTinValidator","id":"-brazil-br---brtinvalidator","depth":2},{"value":"🇨🇱 Chile (CL) - ClTinValidator","id":"-chile-cl---cltinvalidator","depth":2},{"value":"🇨🇴 Colombia (CO) - CoTinValidator","id":"-colombia-co---cotinvalidator","depth":2},{"value":"🇨🇾 Cyprus (CY) - CyTinValidator","id":"-cyprus-cy---cytinvalidator","depth":2},{"value":"🇨🇿 Czech Republic (CZ) - CzTinValidator","id":"-czech-republic-cz---cztinvalidator","depth":2},{"value":"🇩🇪 Germany (DE) - DeTinValidator","id":"-germany-de---detinvalidator","depth":2},{"value":"🇩🇰 Denmark (DK) - DkTinValidator","id":"-denmark-dk---dktinvalidator","depth":2},{"value":"🇪🇪 Estonia (EE) - EeTinValidator","id":"-estonia-ee---eetinvalidator","depth":2},{"value":"🇪🇸 Spain (ES) - EsTinValidator","id":"-spain-es---estinvalidator","depth":2},{"value":"🇫🇮 Finland (FI) - FiTinValidator","id":"-finland-fi---fitinvalidator","depth":2},{"value":"🇫🇷 France (FR) - FrTinValidator","id":"-france-fr---frtinvalidator","depth":2},{"value":"🇬🇧 United Kingdom (GB) - GbTinValidator","id":"-united-kingdom-gb---gbtinvalidator","depth":2},{"value":"🇬🇷 Greece (GR) - GrTinValidator","id":"-greece-gr---grtinvalidator","depth":2},{"value":"🇭🇷 Croatia (HR) - HrTinValidator","id":"-croatia-hr---hrtinvalidator","depth":2},{"value":"🇭🇺 Hungary (HU) - HuTinValidator","id":"-hungary-hu---hutinvalidator","depth":2},{"value":"🇮🇪 Ireland (IE) - IeTinValidator","id":"-ireland-ie---ietinvalidator","depth":2},{"value":"🇮🇹 Italy (IT) - ItTinValidator","id":"-italy-it---ittinvalidator","depth":2},{"value":"🇱🇹 Lithuania (LT) - LtTinValidator","id":"-lithuania-lt---lttinvalidator","depth":2},{"value":"🇱🇻 Latvia (LV) - LvTinValidator","id":"-latvia-lv---lvtinvalidator","depth":2},{"value":"🇱🇺 Luxembourg (LU) - LuTinValidator","id":"-luxembourg-lu---lutinvalidator","depth":2},{"value":"🇲🇹 Malta (MT) - MtTinValidator","id":"-malta-mt---mttinvalidator","depth":2},{"value":"🇲🇽 Mexico (MX) - MxTinValidator","id":"-mexico-mx---mxtinvalidator","depth":2},{"value":"🇳🇱 Netherlands (NL) - NlTinValidator","id":"-netherlands-nl---nltinvalidator","depth":2},{"value":"🇵🇱 Poland (PL) - PlTinValidator","id":"-poland-pl---pltinvalidator","depth":2},{"value":"🇵🇷 Puerto Rico (PR) - UsTinValidator","id":"-puerto-rico-pr---ustinvalidator","depth":2},{"value":"🇵🇹 Portugal (PT) - PtTinValidator","id":"-portugal-pt---pttinvalidator","depth":2},{"value":"🇷🇴 Romania (RO) - RoTinValidator","id":"-romania-ro---rotinvalidator","depth":2},{"value":"🇸🇪 Sweden (SE) - SeTinValidator","id":"-sweden-se---setinvalidator","depth":2},{"value":"🇸🇮 Slovenia (SI) - SiTinValidator","id":"-slovenia-si---sitinvalidator","depth":2},{"value":"🇸🇰 Slovakia (SK) - SkTinValidator","id":"-slovakia-sk---sktinvalidator","depth":2},{"value":"🇹🇭 Thailand (TH) - ThTinValidator","id":"-thailand-th---thtinvalidator","depth":2},{"value":"🇺🇸 United States (US) - UsTinValidator","id":"-united-states-us---ustinvalidator","depth":2},{"value":"🇿🇦 South Africa (ZA) - ZaTinValidator","id":"-south-africa-za---zatinvalidator","depth":2}],"frontmatter":{"seo":{"title":"TIN Validator Specifications - All Countries"}},"lastModified":"2026-08-20T06:59:29.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/native-api/docs/how-it-works/tin-validation","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}