zakupki.gov.ru Tender Monitor
Pricing
from $20.00 / 1,000 results
zakupki.gov.ru Tender Monitor
Search and monitor Russian public procurement on zakupki.gov.ru by keyword, law (44-ФЗ / 223-ФЗ) and value. Two registries: open notices (subject, customer, initial price, deadline) and signed contracts (price actually paid, signing date). Alerts you to new tenders and stage changes.
Pricing
from $20.00 / 1,000 results
Rating
0.0
(0)
Developer
Sasha Ebashu
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Share
Russian Public Procurement (zakupki.gov.ru) Tender Monitor
Searches and monitors the Russian state procurement portal by keyword, law and contract value — and alerts you to new tenders matching your keywords between runs.
Two registries, one Actor:
| Registry | Answers | Use it to |
|---|---|---|
| Notices (default) | What is open for bidding right now | Watch your market and bid |
| Contracts | What customers actually signed, and for how much | See real demand and real prices |
What you get
Every row: noticeNumber, law (44-ФЗ / 223-ФЗ), method, stage, subject, customer,
customerUrl, customerInn / customerCode, price, priceKind, currency, publishedAt,
updatedAt, applicationDeadline, url, searchQuery, scrapedAt.
Contracts additionally carry contractNumber, contractSignedAt and — when the contract came from
a competitive procedure — sourceNoticeNumber, which joins it back to the original notice.
price means different things per registry, and priceKind says which: initial is the
starting price of a notice, contract is the amount actually signed. Comparing the two across the
registries shows how far tenders in your market get bid down.
Monitor mode
Compares against the previous run for the same keywords and filters and labels every row:
changeType | Means |
|---|---|
new | This notice/contract appeared since the last run — the alert you care about |
stage_change | Moved to another stage (e.g. bidding closed) |
deadline_change | The bid deadline moved |
price_change | The stated price changed |
unchanged | Nothing moved |
Turn on Output only new & changed so each run returns just what appeared or moved.
Input
| Field | What it does |
|---|---|
| Keywords | What to watch, e.g. ["уголь", "медицинское оборудование"]. Searched separately, merged, deduplicated by notice number. |
| Registry | Notices (open tenders) or Contracts (signed deals). |
| Law | 44-ФЗ (state & municipal buyers), 223-ФЗ (state-owned companies), or both. |
| Initial price from / to, ₽ | Ignore tenders outside your contract-size range. |
| Max pages per keyword | 10 notices per page. The log reports how many notices your keyword matches in total, so you can see whether you are taking a sample or the lot. |
| Monitor mode / Output only new & changed | The alert behaviour above. |
Notes & limits
These are properties of the source, verified rather than assumed:
- Residential RU proxy is required. zakupki.gov.ru does not answer datacenter proxies at all — every attempt returned an upstream error with an empty body. The default is correct; keep it.
- The winning supplier is not available. The contract card's HTML has an «Информация о заказчике» section but no supplier section (checked across six contracts), so the Contracts registry tells you who bought and at what price — not who won. This Actor does not guess it.
- Some notices have no subject or deadline. Purchases from a single supplier (ст. 93) are listed
with only the customer, price and dates — the portal itself shows nothing else. Those fields come
back
nullrather than filled with something invented. sourceNoticeNumberexists only for competitive contracts. Direct and small purchases carry the customer's own reference instead (030/2026,Ф.2026.389); that value is kept incontractNumber.- Buyer identifier differs by law: 223-ФЗ organisation links carry an INN, 44-ФЗ ones carry an
internal
organizationCode. One of the two is always present. - The Actor honours your Maximum cost per run and stops when the cap is reached.
- A keyword that matches nothing is a normal result: the run succeeds with zero rows and says so.