Peru · PE

The Peruvian RUC

Peru has VAT — the IGV — and the number an invoice carries is the RUC. SUNAT republishes the entire taxpayer register every day, in one file, to anyone who asks.

Format: PE + 11 digits

Example: PE20100113610

Issued by: SUNAT, the national customs and tax administration.

The format

A RUC — Registro Único de Contribuyentes — is eleven digits. The first two say what kind of taxpayer it is:

  • 10A natural person, the eight digits of their DNI in the middle.
  • 20A legal person: a company, an association, a public body.
  • 15 · 17Older natural-person ranges, still in use.

The last digit is a modulus 11 check over the first ten, weighted 5, 4, 3, 2, 7, 6, 5, 4, 3, 2 — so a mistyped RUC can be caught before any network call, like a French key or a Polish NIP.

If you are looking for a company, you are looking for a RUC beginning 20. There are some 2.35 million of those against 15.5 million natural persons, and both live in the same file.

Estado and condición

SUNAT publishes two facts about a taxpayer, and they answer different questions.

Estado del contribuyente is whether the registration is live: ACTIVO, or one of a dozen ways of having ended — BAJA DEFINITIVA, BAJA DE OFICIO, ANULACIÓN. SUSPENSIÓN TEMPORAL is a taxpayer who has stopped trading for a while without deregistering, and is still a live registration.

Condición de domicilio is whether SUNAT can find them at the address they declared: HABIDO yes, NO HABIDO no. It is a real commercial signal in Peru — invoices from a no habido supplier are treated differently — but it is a fact about their address, not about their identity.

Finding the company behind the number

The padrón reducido

SUNAT publishes the padrón reducido RUC: the whole register, rebuilt every day, as a single ZIP with no account and no key. Some 390 MB compressed, 1.5 GB unpacked, 18.4 million rows. It is what Vatlas imports, so a Peruvian lookup is a database read rather than a call to Lima.

Every API selling "RUC lookups" is replaying this file. It is worth knowing that the source is free.

What the file does and does not contain

It contains the name, the estado, the condición and a structured street address — road type, road name, number, interior, block, lot, apartment. Vatlas recomposes those into two address lines.

What it does not contain is a locality in words. The district is given as a six-digit UBIGEO code, and SUNAT ships no table to resolve it. The first two digits are the department, which is stable and worth having, so address.city holds the department — Lima, Arequipa, Callao — and the district behind the last four digits is left unresolved rather than guessed at. Peru's postal codes are not in the register at all.

Peru-specific pitfalls

  • A RUC beginning 10 is a person, not a company. Both are in the register and both are valid RUCs.
  • The locality is a code, not a name. The department is resolvable; the district is not, from anything SUNAT publishes.
  • Suspension is not deregistration. SUSPENSIÓN TEMPORAL is a live registration.
  • No postal code. The padrón does not carry one.
  • The legal form is in the name. S.A.C., S.R.L., E.I.R.L. — the file publishes no separate field for it.

One API, inside Europe and out

Vatlas turns a business tax number into a company record: legal name, national identifier, legal form, status and address. Same call, same shape, for a RUC and for a French VAT number.

curl "https://api.vatlas.dev/v1/lookup/PE20100113610" \
  -H "Authorization: Bearer $VATLAS_KEY"

Response:

200 OK

{
  "data": {
    "vatNumber": "PE20100113610",
    "countryCode": "PE",
    "nationalId": "20100113610",
    "name": "UNIÓN DE CERVECERÍAS PERUANAS BACKUS Y JOHNSTON SOCIEDAD ANÓNIMA ABIERTA",
    "legalForm": null,
    "status": "active",
    "address": {
      "line1": "AV. NICOLAS AYLLON 3986",
      "line2": null,
      "postalCode": null,
      "city": "Lima",
      "country": "PE"
    }
  },
  "meta": {
    "source": "SUNAT",
    "sourceDate": "2026-09-12"
  }
}

meta.sourceDate is the day the padrón was published, not the day you asked. The shape of the response never changes from one country to the next.

Free to try. An email address is all it takes to create an account, with 100 requests a month and a working key in about a minute.

Get a free key Read the documentation

Frequently asked

The RUC in short

How many digits does a RUC have?

Eleven, the last of which is a modulus 11 check digit over the first ten.

What is the difference between a RUC starting 10 and one starting 20?

10 is a natural person, 20 a legal one. A company's RUC begins with 20.

Does Peru have a VAT number?

Peru has the IGV, and the number on an invoice is the RUC. There is no separate tax number.

Can I download the whole Peruvian register for free?

Yes. SUNAT publishes the padrón reducido daily as a single ZIP, with no account and no key.

What does "no habido" mean?

That SUNAT could not find the taxpayer at the address they declared. It is a fact about their address, not about whether their registration is live.

Business numbers in other countries

Last updated 13 September 2026.

Creating a key takes a minute

100 requests a month for free, no card required. 5,000 a month for 29 € excl. VAT when you outgrow it.