Argentina Credit Check (BCRA Central de Deudores) avatar

Argentina Credit Check (BCRA Central de Deudores)

Pricing

from $20.00 / 1,000 credit checks

Go to Apify Store
Argentina Credit Check (BCRA Central de Deudores)

Argentina Credit Check (BCRA Central de Deudores)

Check the credit situation of any Argentine CUIT/CUIL/CDI: debt by bank, worst situation (1-5), arrears, rejected checks and 24-month history from the official BCRA API. No scraping, no captcha.

Pricing

from $20.00 / 1,000 credit checks

Rating

0.0

(0)

Developer

Sebastian Elustondo

Sebastian Elustondo

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Argentina Credit Check — BCRA Central de Deudores API

Check the credit standing of any Argentine company or person by CUIT, CUIL or CDI. The Actor queries the official public API of the Banco Central de la República Argentina (BCRA) and returns, for each ID, the debt reported by every bank and lender, the worst credit situation (1 to 5), days in arrears, legal flags, rejected checks (cheques rechazados) and, optionally, the month-by-month history of the last 24 months.

No scraping, no captcha, no login. The data comes straight from the BCRA API, so it is always the latest period the financial system has reported.

Who is this for

  • Fintechs and lenders doing credit onboarding or pre-approval for Argentine customers.
  • Landlords, real-estate agencies and guarantors screening tenants and co-signers.
  • B2B companies deciding payment terms for new customers or distributors.
  • Accountants and legal firms running due diligence on counterparties.
  • KYC / compliance teams who need a structured, auditable record instead of a screenshot of the BCRA website.
  • AI agents and automations that need a clean JSON answer to "is this CUIT a good payer?".

What you get per ID

FieldMeaning
foundtrue if BCRA has debt reported for this ID in the current period
nameLegal name (razón social) as registered with the tax authority
periodReporting period, e.g. 2026-07
worstSituationWorst classification across all entities, 1 (normal) to 5 (uncollectible); 0 when nothing is reported
worstSituationLabel / worstSituationLabelEsHuman-readable label in English and Spanish
totalDebtArsTotal debt in Argentine pesos (BCRA reports thousands; the Actor converts to whole ARS)
entitiesOne row per bank or lender: situation, amount, days late, refinancing and legal flags
flagsQuick booleans: hasDebt, hasArrears, hasRefinancing, hasLegalProcess, underReview, hasRejectedChecks, hasUnpaidRejectedChecks
rejectedChecksEvery rejected check with cause, date, amount, whether it was paid and the fine status
historyLast 24 months, newest first: worst situation, total debt and number of entities per month (when includeHistory is on)
riskSummaryOne sentence you can drop into a table or a Slack message

Example output item

{
"cuit": "33693450239",
"cuitFormatted": "33-69345023-9",
"valid": true,
"found": true,
"name": "AGENCIA DE RECAUDACION Y CONTROL ADUANERO",
"period": "2026-07",
"worstSituation": 1,
"worstSituationLabel": "Normal",
"worstSituationLabelEs": "Normal",
"totalDebtArs": 1725000,
"totalDebtThousandsArs": 1725.0,
"entitiesCount": 2,
"entities": [
{
"entity": "BANCO DE LA NACION ARGENTINA",
"situation": 1,
"situationLabel": "Normal",
"amountArs": 1538000,
"daysLate": 0,
"situation1Since": "2008-11-30",
"refinanced": false,
"mandatoryRecategorization": false,
"legalSituation": false,
"uncollectibleTechnical": false,
"underReview": false,
"legalProcess": false
},
{
"entity": "BANCO SUPERVIELLE S.A.",
"situation": 1,
"situationLabel": "Normal",
"amountArs": 187000,
"daysLate": 0,
"situation1Since": "2008-11-30",
"refinanced": false,
"mandatoryRecategorization": false,
"legalSituation": false,
"uncollectibleTechnical": false,
"underReview": false,
"legalProcess": false
}
],
"flags": {
"hasDebt": true,
"hasArrears": false,
"hasRefinancing": false,
"hasLegalSituation": false,
"hasLegalProcess": false,
"underReview": false,
"hasRejectedChecks": false,
"hasUnpaidRejectedChecks": false
},
"rejectedChecksCount": 0,
"rejectedChecks": [],
"history": [
{ "period": "2026-07", "worstSituation": 1, "totalDebtArs": 1725000, "entitiesCount": 5 },
{ "period": "2026-06", "worstSituation": 1, "totalDebtArs": 3200000, "entitiesCount": 5 }
],
"checkedAt": "2026-09-02T22:04:01Z",
"source": "BCRA Central de Deudores API v1.0",
"riskSummary": "Normal (1) at 2 entities, ARS 1,725,000 total, no arrears, no rejected checks"
}

A rejected check looks like this inside rejectedChecks:

{
"cause": "SIN FONDOS",
"bankGroup": 1,
"checkNumber": 752395,
"rejectedAt": "2024-04-08",
"amountArs": 115000.0,
"paidAt": null,
"fineStatus": "IMPAGA",
"finePaidAt": null,
"personalAccount": false,
"companyName": "HM COLON MONTAJES INDUSTRIALES S. R. L.",
"underReview": false,
"legalProcess": false
}

IDs that fail validation are returned too, so your pipeline never loses a row:

{ "cuit": "30500001736", "input": "30500001736", "valid": false, "found": null, "error": "Invalid check digit" }

Input

FieldTypeDefaultNotes
cuitslist of stringsrequiredCUIT, CUIL or CDI, one per line. Dashes and spaces are fine: 30-50000173-5 and 30500001735 are the same ID. Duplicates are queried once.
includeRejectedChecksbooleantrueAlso query the rejected-checks registry. Included in the same credit-check event.
includeHistorybooleanfalseAdd the 24-month history. Charged as a separate history-check event.
maxConcurrencyinteger 1–104Parallel lookups. The BCRA API rate-limits by IP; the Actor backs off and retries automatically, but very large batches run faster with a lower value.

Every ID is validated locally with the official mod-11 check-digit algorithm before anything is sent to BCRA. Invalid IDs are reported in the dataset and are not charged.

Credit situation codes

The classification is the one defined by the BCRA "Clasificación de deudores" rules. Each lender reports its own code; worstSituation is the highest one across all lenders.

CodeCommercial portfolioConsumer / housing portfolioLabel in output
1En situación normalSituación normalNormal
2Con seguimiento especialRiesgo bajoLow risk / special monitoring
3Con problemasRiesgo medioMedium risk / with problems
4Con alto riesgo de insolvenciaRiesgo altoHigh risk / high risk of insolvency
5IrrecuperableIrrecuperableUncollectible

daysLate is only reported for consumer/housing debtors classified outside situation 1; 0 means "not applicable". uncollectibleTechnical, refinanced, mandatoryRecategorization and legalSituation are the framing flags the lender attached to the classification. underReview and legalProcess mean the record is being disputed under the Argentine data-protection law (Ley 25.326).

Amounts

BCRA publishes debt in thousands of pesos. The Actor multiplies by 1,000 and exposes totalDebtArs and entities[].amountArs in whole ARS; the raw figure is kept in totalDebtThousandsArs. Rejected-check amounts are the face value of the check in ARS, as published.

Pricing

This Actor uses pay-per-event pricing, so you only pay for what you look up:

  • credit-check: one event per valid ID queried. It covers the current debt situation and the rejected-checks registry. An ID with no reported debt still consumes a lookup and is charged.
  • history-check: one additional event per ID when includeHistory is enabled.

Invalid IDs (wrong length or check digit) are never charged. The current prices are shown on the Actor's pricing tab.

How to use it

  1. Paste the IDs in the CUIT / CUIL / CDI numbers field, one per line.
  2. Tick Include 24-month history if you need the trend and not just the snapshot.
  3. Click Start. Results appear in the dataset as each ID completes; export as JSON, CSV or Excel, or read them from the API.

From the API

curl -X POST "https://api.apify.com/v2/acts/<YOUR_USERNAME>~bcra-credit-check/run-sync-get-dataset-items?token=<APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"cuits": ["30-50000173-5", "33-69345023-9"], "includeHistory": false}'

From Python

from apify_client import ApifyClient
client = ApifyClient("<APIFY_TOKEN>")
run = client.actor("<YOUR_USERNAME>/bcra-credit-check").call(run_input={
"cuits": ["30-50000173-5", "33-69345023-9"],
"includeHistory": True,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["cuitFormatted"], item["riskSummary"])

Works with the Apify integrations for Make, Zapier, n8n, Google Sheets and webhooks, and can be called as a tool by AI agents through the Apify MCP server.

Limitations

  • BCRA only knows what regulated lenders report: banks, financial companies, card issuers, mutual guarantee companies, fintech lenders registered as "otros proveedores no financieros de crédito". Informal debt, utilities and tax debt are not included.
  • Data is monthly. The period field tells you which month you are looking at; there is typically a lag of one to two months.
  • This is public information republished from BCRA. It is not a credit score and does not include the lender's internal scoring. Use it as one input in your own decision.
  • The BCRA API has a per-IP rate limit. The Actor retries with back-off; for very large batches run it in chunks or lower maxConcurrency.
  • The name field is empty when BCRA has no record at all for the ID (no debt and no rejected checks). The Actor does not query the tax authority (ARCA/AFIP) to resolve names.

FAQ

Does it work for individuals (CUIL) as well as companies (CUIT)? Yes. Individuals, companies and CDI holders share the same 11-digit format and the same registry.

What does found: false mean? BCRA returned "no data for this ID": no lender reported any debt for the current period. It is usually good news, but it also happens for IDs that never had bank credit. Combine it with rejectedChecksCount.

Why is worstSituation 0? Nothing was reported for the period (found: false). Real classifications start at 1.

Can I get the report in Spanish? Situation labels are provided in both languages (worstSituationLabel, worstSituationLabelEs, entities[].situationLabel). Field names are English so they map cleanly to spreadsheets and databases.

How fresh is the data? Each run queries BCRA live. The registry itself is updated monthly for debts and daily for rejected checks.

How many IDs can I check in one run? There is no hard limit. Thousands of IDs are fine; the Actor paces requests to respect the BCRA rate limit.

All data is retrieved from the BCRA public "Central de Deudores" API v1.0 (api.bcra.gob.ar), which requires no authentication and is published under the BCRA's open-data policy. As stated by BCRA, publication of this information does not imply endorsement by the Central Bank, and the rights of rectification, update, suppression and confidentiality must be exercised before the reporting entity. Use the data in compliance with the Argentine Personal Data Protection Law (Ley 25.326) and your own regulatory obligations.