# Argentina COMPR.AR Public Procurement & Tenders Scraper (`scrapers_lat/comprar-argentina-scraper`) Actor

Scrape Argentina national government procurement from the COMPR.AR portal: published tenders with process number, object, procedure type, buying agency, bid opening date and status. Filter by keywords. Export to JSON, CSV or Excel.

- **URL**: https://apify.com/scrapers\_lat/comprar-argentina-scraper.md
- **Developed by:** [Scrapers Lat](https://apify.com/scrapers_lat) (community)
- **Categories:** Lead generation, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $10.20 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Argentina COMPR.AR Public Procurement & Tenders Scraper

> Track Argentina's national government tenders from the COMPR.AR portal. Get the process number, object, procedure type, buying agency, bid opening date and status for every published procurement, filtered by your own keywords, and export clean structured data for lead generation, market intelligence and research.

**📥 [Input](https://apify.com/scrapers_lat/comprar-argentina-scraper/input-schema) · 📤 [Output](https://apify.com/scrapers_lat/comprar-argentina-scraper/output-schema) · 💰 [Pricing](https://apify.com/scrapers_lat/comprar-argentina-scraper/pricing) · ▶️ [Examples](https://apify.com/scrapers_lat/comprar-argentina-scraper/examples)**

![Apify](https://img.shields.io/badge/Platform-Apify-1CE1CE?logo=apify\&logoColor=white)
![Public procurement](https://img.shields.io/badge/Data-Public%20procurement-blue)
![Output](https://img.shields.io/badge/Output-JSON%20%7C%20CSV%20%7C%20Excel-orange)

<table><tr>
<td align="center"><strong>Published tenders</strong><br>number, object & type</td>
<td align="center"><strong>Buying agency & opening date</strong><br>plus process status</td>
<td align="center"><strong>JSON / CSV / Excel</strong><br>output formats</td>
</tr></table>

<br>

### What you get

Each record is one published procurement process, flattened into clean columns:

- **numeroProceso** — the tender / process number that uniquely identifies it on the portal
- **title** — the descriptive object of the tender (what is being bought)
- **procedureType** — Licitación Pública, Licitación Privada, Contratación Directa and similar
- **openDate** / **openDateRaw** — bid opening date and time (ISO 8601 plus the original text)
- **status** — current process status (for example Publicado)
- **unidadEjecutora** — the executing unit / buying office
- **servicioAdministrativoFinanciero** — the parent public agency
- **currency** — ARS
- **matchedKeyword** — which of your keywords matched this tender

### Who is it for

| Use case | Who benefits |
|---|---|
| Lead generation | Suppliers and distributors finding open tenders they can bid on |
| Market intelligence | Teams tracking who is buying what across Argentine government agencies |
| Bid / tender monitoring | Consultants watching for new opportunities by keyword |
| Research | Analysts and journalists studying public spending and procurement |

### How to use it

1. Add one or more **keywords** (for example `computadoras`, `alimentos`, `obra`). Matching is accent-insensitive and checks the object, process number and agency. Leave it empty to return every published tender.
2. Set **Max Tenders To Scrape**.
3. Run it. Export as JSON, CSV or Excel, or pull the dataset through the Apify API.

### Frequently Asked Questions

**Which tenders are covered?**
Currently published national procurement processes with an upcoming bid opening, exactly as listed on the public portal.

**How does keyword filtering work?**
Every published process is scanned and kept if it matches any of your keywords in its object, number or buying agency. Matching ignores accents and case, so `licitacion` matches `Licitación`.

**Is the estimated amount included?**
The public listing does not publish the estimated amount, so that field is returned empty. All other listing fields are captured in full.

**How fresh is the data?**
The listing is read live at run time, so each record reflects the portal at the moment of the run (see observedAt).

**Will I be charged for empty runs?**
No. You are only charged per tender returned. A run that finds no matching tenders costs nothing.

### Related scrapers

- [SEACE Peru Public Procurement & Tenders Scraper](https://apify.com/scrapers_lat/seace-scraper)
- [Chile Mercado Publico Supplier & Award Scraper](https://apify.com/scrapers_lat/mercado-publico-scraper)
- [Paraguay DNCP Public Procurement Scraper](https://apify.com/scrapers_lat/paraguay-dncp-scraper)

### More scrapers at scrapers.lat

This actor is built and maintained by [scrapers.lat](https://scrapers.lat), where we publish scrapers for public platforms: finance, news, real estate, jobs, e-commerce and government data. Browse the full catalog or ask us for a custom scraper at [scrapers.lat](https://scrapers.lat).

***

> This actor is an independent tool and has no affiliation with COMPR.AR or the Argentine government. It only accesses publicly available procurement data. Use the results in accordance with the source's terms.

# Actor input Schema

## `keywords` (type: `array`):

Terms to match against each tender's object, process number and buying agency (accent-insensitive). One run scans all published processes and keeps those matching ANY keyword. Leave empty to return every published tender.

## `maxTenders` (type: `integer`):

Maximum number of procurement tenders to return.

## Actor input object example

```json
{
  "keywords": [
    "computadoras",
    "alimentos",
    "vehiculos"
  ],
  "maxTenders": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keywords": [
        "obra",
        "servicio"
    ],
    "maxTenders": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapers_lat/comprar-argentina-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "keywords": [
        "obra",
        "servicio",
    ],
    "maxTenders": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("scrapers_lat/comprar-argentina-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keywords": [
    "obra",
    "servicio"
  ],
  "maxTenders": 10
}' |
apify call scrapers_lat/comprar-argentina-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=scrapers_lat/comprar-argentina-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/kWsAX34yA3k6NErOv/builds/LQLiPEsQdAcwlUpC0/openapi.json
