Risk API · KYB · Anti-fraud

Know who you do business with in Mexico

Screen an RFC or company against the SAT blacklist (Art. 69-B EFOS), the Art. 69 non-compliant-taxpayer lists, federal and state debarment registries, and OFAC, UN, EU and UK sanctions. Plus consent-based employee screening and CURP validation. One normalized risk verdict, with dated evidence, in a single call. Professional-license (cédula) verification: coming soon.

Official sourcesSAT · Art. 69-B EFOSSAT · Art. 69 listsSABG · Sanctioned officialsPDN · Sistema 3OFAC · SDNUN · ConsolidatedEU · FSFUK · OFSI
560,000+risk records indexed
8official sources (SAT, SABG, PDN, OFAC, UN, EU, UK)
Dailyautomatic refresh
<300 mstypical response
Context

The problem

Before you invoice, pay, or onboard a Mexican business, you need to know if it is an EFOS (a shell "facturera" whose invoices are non-deductible), on the Art. 69 non-compliant lists, debarred from government contracting, or under international sanctions. Today that means manually checking scattered government lists. Kaha turns it into a single API call.

Capabilities

What Kaha does

Company screening

Check an RFC or legal name (or up to 50 in batch) against all 8 lists: SAT 69-B, Art. 69, debarments, and international sanctions.

POST /v1/screen

Lookup by RFC

Single-RFC verification over GET — cache- and link-friendly.

GET /v1/company/{rfc}

People screening

Consent-gated screening of an individual (employment/KYC) with CURP validation.

POST /v1/persons/screen

Professional license Coming soon

Verify a professional credential (cédula) against the RNP registry.

POST /v1/credentials/verify
Integration

How it works

01

Subscribe

Pick a plan on RapidAPI and get your X-RapidAPI-Key in minutes.

02

Call the API

Send an RFC, a legal name, or a batch of up to 50 to /v1/screen from your backend.

03

Decide with evidence

Get a normalized verdict with source and date, ready for your audit file.

For developers

Example

curl -s https://kaha-mexican-counterparty-risk-kyb.p.rapidapi.com/v1/company/AAA080808HL8 \
  -H 'X-RapidAPI-Key: <your-key>' \
  -H 'X-RapidAPI-Host: kaha-mexican-counterparty-risk-kyb.p.rapidapi.com'

{
  "query": { "rfc": "AAA080808HL8", "name": null },
  "risk_level": "critical",
  "score": 100,
  "flagged": true,
  "sources_hit": ["SAT-69B"],
  "as_of": "2026-07-03T00:00:00.000Z"
}
Interpretation

Risk levels

List / statusLevelMeaning
69-B DefinitivocriticalConfirmed EFOS — invoices non-deductible.
OFAC / UN / EU / UK sanctionscriticalOn an international sanctions list.
69-B PresuntohighPresumed EFOS.
Art. 69: Not found / SentencehighNot found at fiscal domicile, or sentenced for a tax crime.
Sanctioned (SABG / PDN)highDebarred public servant or sanctioned supplier.
Art. 69: Firm / CollectablemediumFirm or collectable tax debts.
Art. 69: Written-off / ForgivenlowCancelled or forgiven tax debts (informational signal).
69-B DesvirtuadolowTaxpayer rebutted the presumption.
69-B Sentencia FavorableclearedA court ruled in the taxpayer's favor.
(no match)clearNot on any list.
Compliance

Privacy & compliance (LFPDPPP)

Screening a named individual is personal-data processing under Mexico's Federal Law on Protection of Personal Data Held by Private Parties. That is why /v1/persons/screen requires a per-request consent attestation: you confirm you hold the subject's authorization and Kaha records it for an auditable trail.

Questions

Frequently asked questions

Where does the data come from?

Official, public sources: the SAT 69-B and Art. 69 lists, the federal (SABG) and state (PDN Sistema 3) sanction registries, and the OFAC, UN, EU and UK sanctions lists. All refresh automatically every day.

What is an EFOS?

A company that invoices simulated operations — it issues CFDIs for transactions that never happened. SAT publishes them under Art. 69-B of the CFF and their invoices are non-deductible.

Is a name match definitive?

No. An RFC match is authoritative; a name-only match is a lead to verify, because different entities can share a name.

Can I screen anyone?

Only with their consent. People screening requires an authorization attestation under the LFPDPPP.

How do I integrate?

It is distributed via RapidAPI: subscribe to a plan and call with your X-RapidAPI-Key. OpenAPI and an llms.txt file (for AI agents) are included.

Can I issue (stamp) CFDI invoices with Kaha?

Yes. Kaha Facturas stamps legally valid CFDI 4.0 via API: $0.15 USD per stamp, no monthly fee, no folio packs. It includes cancellation, XML, a PDF with the SAT verification QR, email delivery, free SAT catalogs and a free sandbox to test without a CSD.

How much does stamping an invoice cost?

$0.15 USD per stamped or canceled invoice, pay-as-you-go. Under ~100 invoices a month that is 5-10x cheaper than fixed fees (Facturapi at $299 MXN/mo or PACs with annual fees). Failed stamps are never billed.

New · Invoicing

Kaha Facturas — stamp CFDI 4.0 via API

Issue legally valid Mexican electronic invoices with one POST. No monthly fee, no expiring folio packs: you pay $0.15 USD per stamp, period. Under ~100 invoices a month, every fixed-fee alternative (Facturapi at $299 MXN/mo, PACs with annual fees) overcharges you. And before invoicing, screen your receiver against the 69-B blacklist with this very API.

Stamp & cancel

Upload your CSD once and stamp any CFDI type (I, E, P, N, T). Cancellation with SAT motives 01-04. Failed stamps are never billed.

POST /v1/cfdis

XML, PDF & email

Instant stamped XML, a branded PDF with the SAT verification QR, and email delivery to your clients with one POST.

GET /v1/cfdis/{uuid}/pdf

Filtered history

Query your invoices by issuer, receiver, dates, status or text — your reporting, nothing to build.

GET /v1/cfdis

Free SAT catalogs & sandbox

Payment forms, CFDI uses, fiscal regimes, units, product/service codes and more — free. Test in the sandbox with no CSD and no cost.

GET /v1/catalogs/{name}
ActionPrice
Stamp or cancel$0.15 USD
XML / PDF / email$0.01 USD
List, detail & CSD management$0.005 USD
Sandbox & SAT catalogsFree

See Kaha Facturas on RapidAPI   Documentation

Ready to cut your risk?

Subscribe on RapidAPI and make your first call in minutes.

Get started on RapidAPI