Peru Company Data — SUNAT RUC & Taxpayer Status avatar

Peru Company Data — SUNAT RUC & Taxpayer Status

Pricing

$4.00 / 1,000 company records

Go to Apify Store
Peru Company Data — SUNAT RUC & Taxpayer Status

Peru Company Data — SUNAT RUC & Taxpayer Status

Official Peruvian taxpayer registry data by RUC: legal name, status, 'habido' condition, registered address and district.

Pricing

$4.00 / 1,000 company records

Rating

0.0

(0)

Developer

Berkan Kaplan

Berkan Kaplan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Peru Company Registry Scraper (SUNAT RUC)

Official Peruvian taxpayer registry data by RUC: legal name, registration status, the HABIDO locatability condition, entity kind and full registered address down to district.

Free · No API key · Official source · Same schema across every country in this series

What data do you get?

FieldDescription
companyNameRegistered legal name
registrationNumberRUC — the register's own identifier
taxNumberVAT / tax identifier where published
statusNormalized to active / inactive / dissolved / unknown
statusRawThe register's own wording, untranslated
legalFormLegal form as registered
incorporatedOn / dissolvedOnISO dates
address, city, postalCodeRegistered address
industry, industryCodeActivity classification where published
employees, capitalWhere the register publishes them
officers[]Directors / partners where published
sourceUrlLink to the company's page on the register

Country-specific fields on top of the shared schema: taxpayerCondition, isLocatable, entityKind, province, department, ubigeoCode.

Input

FieldTypeDefaultDescription
queriesarrayRUC numbers (11 digits, e.g. 20131312955).
maxResultsPerQueryinteger5For name searches, how many matching companies to return.
includeRawbooleanfalseAttach the register's untouched response under raw.
requestDelayMsinteger200Politeness delay against a public register.
proxyConfigurationobjectnoneOptional.
{
"queries": [
"20131312955",
"20100070970"
],
"maxResultsPerQuery": 5
}

Example output

{
"country": "PE",
"registry": "SUNAT — Registro Único de Contribuyentes (RUC)",
"companyName": "SUPERMERCADOS PERUANOS SOCIEDAD ANONIMA 'O ' S.P.S.A.",
"registrationNumber": "20100070970",
"taxNumber": "20100070970",
"status": "active",
"statusRaw": "ACTIVO",
"taxpayerCondition": "HABIDO",
"isLocatable": true,
"entityKind": "Legal entity",
"address": "CAL. MORELLI NRO 181 INT. P-2, SAN BORJA, LIMA, LIMA",
"sourceUrl": "https://e-consultaruc.sunat.gob.pe/"
}

What can you use it for?

  • Counterparty risk — the HABIDO condition tells you whether SUNAT can actually locate the taxpayer at its declared address.
  • Invoicing compliance — confirm a RUC is active before issuing or accepting an invoice.

Frequently asked questions

Is this Peruvian company registry scraper free?

The data source is free and needs no API key — you pay only for the Apify compute the run uses.

Do I need an API key or an account with the registry?

No. SUNAT's own portal is behind a CAPTCHA; this actor reads the same public RUC record through the free apis.net.pe gateway.

Can I search by company name, or only by RUC?

RUC only. SUNAT publishes no public search-by-name index, so a name query fails with a clear message rather than returning nothing.

How current is the data?

Every run queries the source live, so results are as current as the register itself.

Can I export the results to CSV, Excel or JSON?

Yes. Apify datasets export to CSV, Excel, JSON, XML and HTML, and can be pulled through the API or pushed to your own storage.

Can I combine this with other countries in one dataset?

Yes — that is why it exists. Every actor in this series emits the same core schema, so results from different countries concatenate into one table with no remapping.

This actor reads a public register that the Peruvian authorities publish deliberately for public inspection. Company records are public by design; where a record names a person (a director, owner or partner), that is personal data and your use of it falls under GDPR or the local equivalent — handle it accordingly.

What is the difference between "estado" and "condición"?

status (estado) says whether the RUC is active. taxpayerCondition (condición) says whether SUNAT can find the taxpayer at its declared address — NO HABIDO is a real risk flag that an active status alone would hide.

Notes and limits

  • Lookup is by RUC only — SUNAT publishes no public search-by-name index, and a name query fails with a clear message rather than returning nothing.
  • taxpayerCondition is the field to watch. HABIDO means SUNAT can locate the taxpayer at its declared address; NO HABIDO is a genuine counterparty risk flag that status: active alone would hide.
  • A RUC starting 20 is a legal entity and 10 a natural person trading — surfaced as entityKind.
  • SUNAT's own portal is behind a CAPTCHA; this actor reads the same public record through the apis.net.pe gateway.
  • Queries that match nothing are still pushed as { query, error }, so a partial run is never silent.

Other country registries in this series

Norway · Finland · Denmark · Iceland · Poland · Slovakia · Slovenia · Latvia · Estonia · Czechia · France · UK · Israel · Taiwan · Singapore · Vietnam · Brazil · Colombia · Peru · USA — plus EU VAT Validation (VIES) covering all 27 member states.