✅ ValidaLatam All validators · API docs · RapidAPI · ES

RUT UY Validator

Uruguayan RUT (tax ID) · Issuer: DGI. DGI electronic invoicing (CFE), company onboarding.

Free online validator

Validated with the public algorithm; we don't store your input.

Format

12 digits: 2 for department (01–21), 6 serial, 000 and a check digit.

Check-digit algorithm

  1. Weights 4,3,2,9,8,7,6,5,4,3,2 on the first 11 digits.
  2. DV = 11 − (sum mod 11); 11 → 0; 10 → invalid.

Use cases

DGI electronic invoicing (CFE), company onboarding.

Code examples

# curl (RapidAPI)
curl -X POST "https://validalatam.p.rapidapi.com/validate" -H "Content-Type: application/json" \
  -H "X-RapidAPI-Key: $RAPIDAPI_KEY" -H "X-RapidAPI-Host: validalatam.p.rapidapi.com" \
  -d '{"type":"UY_RUT","value":"168029360019"}'
# Python
import requests
r = requests.post("https://validalatam.p.rapidapi.com/validate", json={"type": "UY_RUT", "value": "168029360019"},
                 headers={"X-RapidAPI-Key": KEY, "X-RapidAPI-Host": "validalatam.p.rapidapi.com"})
print(r.json()["valid"], r.json()["formatted"])
// JavaScript (fetch)
const r = await fetch("https://validalatam.p.rapidapi.com/validate", { method: "POST",
  headers: { "Content-Type": "application/json", "X-RapidAPI-Key": KEY, "X-RapidAPI-Host": "validalatam.p.rapidapi.com" },
  body: JSON.stringify({ type: "UY_RUT", value: "168029360019" }) });
const { valid, formatted, error } = await r.json();
# Response
{
  "valid": true,
  "type": "UY_RUT",
  "country": "UY",
  "input": "168029360019",
  "normalized": "168029360019",
  "formatted": "168029360019"
}

API plans on RapidAPI

Free plan to get started; paid plans for production volume and batch validation (up to 1000 per request).

See plans on RapidAPI →

FAQ

How is the RUT UY check digit calculated?

Weights 4,3,2,9,8,7,6,5,4,3,2 on the first 11 digits. DV = 11 − (sum mod 11); 11 → 0; 10 → invalid.

What is the RUT UY format?

12 digits: 2 for department (01–21), 6 serial, 000 and a check digit.

Why are digits 9–11 always 000?

It's the fixed structure DGI defines for current RUTs.

Is this validator free?

Yes, the web tool is free. To integrate it, use the API: there's a free plan on RapidAPI.

Does the API store the numbers I validate?

No. Validation is deterministic, with no storage and no third-party lookups.

Other validators

CI UY · UruguayCUIT · ArgentinaCUIL · ArgentinaDNI · ArgentinaCBU · ArgentinaCVU · ArgentinaCPF · BrazilCNPJ · BrazilRFC · Mexico