Validate anything
for any country

Phone numbers, credit cards, IBANs, VAT numbers, postal codes. One API call, 40+ countries, instant results.

Try it live

Five validators, one API

📞

Phone Numbers

Validate and format phone numbers for 30+ countries. Detect mobile vs landline, toll-free, and premium.

💳

Credit Cards

Luhn checksum validation, brand detection (Visa, MC, Amex, Discover, JCB, UnionPay, and more).

🏦

IBAN Numbers

ISO 13616 validation with MOD-97 checksum for 45+ countries. Extract bank code and BBAN.

📄

VAT / Tax IDs

Validate EU VAT numbers, US EINs, UK VAT, Swiss CHE, Indian GSTIN, and more formats.

📧

Postal Codes

Format validation for 40+ countries. US ZIP → state lookup, UK postcode → area, CA → province.

🤖

Auto-Detection

Don't know the type? Send any value and we'll detect and validate it automatically.

API Documentation

GET /api/validate?input=VALUE&type=TYPE&country=CC

Validate any data type. Type and country are optional (auto-detected when possible).

curl "https://datacheck.dev/api/validate?input=%2B14155551234&type=phone"
POST /api/validate

Same validation via POST body.

curl -X POST "https://datacheck.dev/api/validate" \
  -H "Content-Type: application/json" \
  -d '{"input": "DE89370400440532013000", "type": "iban"}'

Response Format

{
  "input": "+1 (415) 555-1234",
  "type": "phone",
  "valid": true,
  "formatted": "+1 4155551234",
  "country": "US",
  "details": {
    "country_code": "1",
    "national_number": "4155551234",
    "type": "mobile",
    "carrier_prefix": "415"
  },
  "reason": null,
  "meta": {
    "duration_ms": 1,
    "api_version": "1.0"
  }
}

Parameters

inputRequired. The value to validate.
typeOptional. phone, credit_card, iban, vat, postal, auto (default).
countryOptional. ISO 3166-1 alpha-2 code. Required for postal codes.

Get started free

3,000 free requests per month. No credit card required.

Get Free API Key Read the Docs
Free
100 req/day
$9/mo
10,000 req/mo
$29/mo
100,000 req/mo