🇵🇪 PERU · TAX ID

RUC validator (free) — Peru

The RUC (Registro Único de Contribuyentes) is Peru's tax identifier issued by SUNAT. It has 11 digits with a prefix that identifies the entity type. This tool validates the format, prefix and Mod-11 check digit client-side.

Validates locally — your data never leaves your browser. No tracking on input. Format and check-digit validation only.

Validates locally — your data never leaves your browser. No tracking on input.

How RUC (Peru) validation works

A Peruvian RUC has 11 digits. The first 2 identify the entity type: 10 (individuals with DNI), 15 (foreigners with carné de extranjería), 17 (non-domiciled), 20 (companies, SACs, SRLs and other legal entities). Any other prefix is invalid.

The check digit (position 11) is computed via Mod-11 with weights [5, 4, 3, 2, 7, 6, 5, 4, 3, 2] applied to the first 10 digits. Sum the weighted products, compute 11 − (sum mod 11), then take the result modulo 10. The final value is the check digit.

This tool also rejects unknown prefixes outside the SUNAT-published list. It does not verify whether the RUC is currently active in SUNAT or whether the taxpayer has a habido (located) status.

Frequently asked questions

What does the prefix tell me?

10 = individual with DNI (the remaining 8 digits are usually the DNI plus 0). 15 = foreigner with carné de extranjería. 17 = non-domiciled (used for certain foreign payment cases). 20 = legal entity (SAC, SRL, EIRL, etc.). The prefix changes how the rest of the number is interpreted.

Why is the Mod-11 result reduced modulo 10?

When Mod-11 yields 10 or 11 (impossible-to-represent values), SUNAT chose to wrap around to 0 or 1 instead of using a letter like Chile's K. This makes RUCs purely numeric at the cost of allowing a small number of collisions algorithmically.

Does this validator confirm the RUC is active with SUNAT?

No. It validates format, prefix and check digit only. Confirming active status (estado: ACTIVO) and habido status requires a query to SUNAT's public consulta-RUC service.

Can I validate RUC via API?

Yes. Normadata's Verify API validates Peruvian RUC alongside CUIT, RUT, NIT, RIF and 17 other Latin American tax IDs.

More resources

Want RUC validation in your app?

The Normadata Verify API validates Peruvian RUC alongside 17 other Latin American tax IDs with a single JSON call.

See the Verify API