Validate a Peruvian RUC
Check the check digit of a Peruvian RUC, in your browser, for free.
Try an example
This checks the prefix and check digit only. It does not confirm the RUC is registered with Peru's tax authority (SUNAT).
Where do you need this?
How the RUC check digit works
A RUC (Registro Único de Contribuyentes) has 11 digits. It must start with one of a fixed set of two-digit prefixes — 10, 15, 16, 17 or 20 — that show the type of taxpayer; 10 is used for individuals and 20 for companies.
The last digit is a check digit, calculated by multiplying the first 10 digits by a fixed set of weights, adding the results, taking the remainder after dividing by 11, subtracting that remainder from 11, and then taking the result modulo 10 — which always gives a single digit from 0 to 9.
This checker also accepts a plain 8-digit DNI (national ID number), since some Peruvian forms accept either a RUC or a DNI.
Frequently asked questions
What's the difference between a RUC and a DNI?
A DNI identifies a person for general purposes. A RUC is the tax ID used for invoicing — every business needs one, and an individual invoicing as a freelancer will also have one.
Does a valid result mean the RUC is registered with SUNAT?
No — see the note below the checker. It means the prefix and check digit are correct. Only Peru's tax authority (SUNAT) can confirm the number is actually assigned.
Why did an 11-digit number fail?
Either the first two digits are not one of the allowed prefixes, or the last digit doesn't match what the check-digit formula expects for the rest of the number.
Can I check just a DNI without a RUC?
Yes — enter the 8 digits on their own and the checker accepts it as a DNI, with no check-digit calculation (DNI numbers don't have one).
Need this on your Shopify store?
Fiscal ID adds this exact validation to your cart, on any Shopify plan — no theme code, no Plus required.