RUT Validator
Chilean RUT / RUN · Issuer: SII / Registro Civil. SII e-invoices, user registration, shipping.
Free online validator
Validated with the public algorithm; we don't store your input.Format
7–8 digit body plus a check digit 0–9 or K: 12.345.678-5.
Check-digit algorithm
- Walk the body right-to-left with cyclic weights 2,3,4,5,6,7.
- DV = 11 − (sum mod 11).
- 11 → 0, 10 → K.
Use cases
SII e-invoices, user registration, shipping.
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":"CL_RUT","value":"168378769"}'
# Python
import requests
r = requests.post("https://validalatam.p.rapidapi.com/validate", json={"type": "CL_RUT", "value": "168378769"},
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: "CL_RUT", value: "168378769" }) });
const { valid, formatted, error } = await r.json();
# Response
{
"valid": true,
"type": "CL_RUT",
"country": "CL",
"input": "168378769",
"normalized": "168378769",
"formatted": "16.837.876-9"
}
API plans on RapidAPI
Free plan to get started; paid plans for production volume and batch validation (up to 1000 per request).
FAQ
How is the RUT check digit calculated?
Walk the body right-to-left with cyclic weights 2,3,4,5,6,7. DV = 11 − (sum mod 11). 11 → 0, 10 → K.
What is the RUT format?
7–8 digit body plus a check digit 0–9 or K: 12.345.678-5.
Uppercase K?
Both k and K are accepted; the API normalizes to K.
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.