Peru SUNAT RUC Scraper
Pricing
from $19.00 / 1,000 results
Peru SUNAT RUC Scraper
Looks up Peruvian taxpayer records from the SUNAT RUC registry by 11-digit RUC number. Returns legal name, tax status, address, and economic activities as a flat row.
Pricing
from $19.00 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
4
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Share
Peru SUNAT RUC Scraper
Look up Peruvian taxpayer records by RUC number, up to a million per run. Each record returns the legal name, tax status, address, and economic activities. No login or API key. Export to CSV, JSON, Excel, or XML.
SUNAT's public RUC lookup portal is slow for batch work and blocks automated queries. This actor reads the official taxpayer registry directly, accepts a list of 11-digit RUC numbers, and returns each matching record in a fixed schema. It handles the CAPTCHA and session management so you get clean data at scale.
| Who uses it | What they scrape SUNAT RUC for |
|---|---|
| Compliance officers | Verify the tax status and legal name of a supplier before onboarding them. |
| Accounts payable teams | Validate RUC numbers on invoices to ensure they are active and correct. |
| Market researchers | Build a database of active companies in a specific economic sector. |
| Sales teams | Enrich a lead list with official company names, addresses, and contact details. |
What it does
This Actor collects Peruvian taxpayer records from the SUNAT RUC registry by 11-digit RUC number and returns each one as a flat row.
- 🏢 Batch lookup: provide a list of RUC numbers and collect the full registry record for each.
- 📋 Fixed schema: every record returns the same fields: legal name, tax status, taxpayer type, address, and economic activities.
- 📤 Multi-format export: download your dataset as CSV, JSON, Excel, or XML.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with SUNAT RUC data
📋 Supplier due diligence.
A compliance team runs a list of new vendor RUCs through the actor to confirm each one is active and matches the legal name on the contract.
🧾 Invoice validation.
An accounts payable department validates the RUC on every incoming invoice before processing payment, catching inactive or mismatched taxpayers.
📊 Market mapping.
A researcher collects the registered economic activities for hundreds of companies in Lima to map the competitive landscape of the construction sector.
📇 Lead enrichment.
A B2B sales team appends official company names, tax status, and addresses to a prospect list before a cold outreach campaign.
Why choose this scraper
| What you get | |
|---|---|
| Official source | Data comes directly from the SUNAT public registry, not a third-party cache. |
| No manual work | Look up thousands of RUCs in one run instead of typing them one by one on the SUNAT website. |
| Clean output | Every record is parsed into the same flat structure, ready for your database or spreadsheet. |
How it compares
No other Store actor targets SUNAT RUC the same way, so the honest comparison is with the alternatives teams actually weigh.
| Peru SUNAT RUC Scraper | Build it in-house | By hand | |
|---|---|---|---|
| Setup | Run it now, zero config | Days of engineering | None, but hours per pull |
| When SUNAT RUC changes | Maintained for you | You fix it | You re-learn the page |
| Proxies, retries, anti-bot | Built in | Your problem | Browser only |
| Output | Fixed JSON schema, CSV/Excel export | Whatever you build | Copy-paste |
| Cost | Pay per result | Engineering time | Analyst hours |
Configure the run
Drive the Actor with a list of 11-digit RUC numbers, and it returns the complete registry record for each one found. The Input tab lists every parameter.
A first run with the defaults:
{"rucNumbers": ["20131312955","20100070970"],"maxItems": 10}
A larger pull:
{"rucNumbers": ["20131312955","20100070970"],"maxItems": 200}
Pricing
Pay-per-result: $0.021 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $2.10 |
| 1,000 results | $21.00 |
| 10,000 results | $210.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the Peru SUNAT RUC Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to SUNAT RUC through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/peru-sunat-ruc-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
The actor returns fewer records than the RUC numbers I provided.
Check that all RUC numbers are exactly 11 digits and contain no spaces or dashes. Also verify that your maxItems setting is high enough to cover your entire list.
The run fails with a timeout error.
The SUNAT website can be slow during peak hours. Try increasing the run timeout in your actor settings, or split a very large list into smaller batches.
Some fields are empty in the output.
SUNAT does not always populate every field for every taxpayer. An empty field means the information was not present in the registry for that RUC.
I get a CAPTCHA error even though the actor is supposed to handle it.
SUNAT occasionally changes its CAPTCHA implementation. If the error persists, try reducing the run speed or contact support with a sample RUC that triggered the issue.
FAQ
| Question | Answer |
|---|---|
| What is a RUC number? | The Registro Único de Contribuyentes (RUC) is the 11-digit tax identification number for businesses and individuals in Peru, issued by SUNAT. |
| How many RUC numbers can I look up in one run? | You can set the maximum records up to 1,000,000 per run. The actor will process each RUC in your input list until it hits that limit. |
| Does this actor handle the SUNAT CAPTCHA? | Yes, it manages the CAPTCHA challenge automatically so you do not need to solve it manually during a run. |
| What information does the actor return for each RUC? | It returns the legal name, tax status, taxpayer type, registered address, and the list of economic activities, all in a flat row. |
| Can I look up a RUC for a natural person as well as a company? | Yes, the SUNAT registry includes both legal entities and individuals with a RUC, and the actor returns the record for any valid 11-digit number. |
| Is the data returned in Spanish? | Yes, the field values such as economic activity descriptions and tax status are in Spanish, exactly as they appear on the official SUNAT registry. |
| Do I need a SUNAT account or API key to use this? | No, the actor reads the public-facing registry and does not require any SUNAT credentials or registration. |
| What happens if a RUC number is invalid or not found? | The actor will mark the record accordingly in the output, so you can filter out missing or inactive RUCs from your dataset. |
Related actors
Browse the full ParseForge collection for more scrapers.
🆘 Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
⚠️ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Superintendencia Nacional de Aduanas y de Administración Tributaria (SUNAT). It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
