PropTech

Identity verification for real estate

Singula reads the applicant’s ID and checks its standing in the INE Lista Nominal. It validates the CURP with RENAPO and the RFC with the SAT, and searches judicial bulletins for court files. Every query keeps its source and its date.

9
categories of public-source lists covered by the watchlist query
10
distinct deregistration reasons returned by the Lista Nominal check
7 days
how long a Lista Nominal result is reused before a new query
Free
test environment with simulated responses, no external providers touched
Tenant file

The tenant file is built from official sources before signing

The ID card is checked against the INE Lista Nominal. The CURP is validated at RENAPO and the RFC with the SAT. Judicial bulletins return prior lawsuits with court, subject matter and dates. Every query keeps its source and its date.

Singula does not query credit bureaus and does not run OCR on pay stubs. It verifies identity, ID validity, court records, watchlists and digital presence. Proof of income is collected outside Singula.

Where it fits in your operation

Screen an applicant before taking the unit off the market
Confirm their ID is still active in the INE Lista Nominal
Search prior lawsuits against the tenant and their guarantor
Vet the company leasing an office or industrial space
Verify seller and attorney-in-fact identity in a sale
Keep timestamped evidence of what you checked before signing

The products behind this solution

INE + Lista Nominal

Front and back OCR plus a query to the INE roll: active, deregistered, duplicated or not found.

Identity verification

INE or passport plus a selfie with liveness and a face match against the photo on the document. Verdict: verified, partial or rejected.

CURP and RFC

CURP against RENAPO with field-by-field matching, and RFC validated with the SAT.

Court records

Files from judicial bulletins: court, subject matter, plaintiff, defendant and the date of each ruling. In a company we search its legal name and its trade name in a single query.

Watchlists and PEP

Nine categories of public-source lists — sanctions, criminal, PEP, fiscal, adverse media and more — with homonym disambiguation.

Risk score

Aggregates signals from the tools already run into a 0-100 score, with a level and a confidence percentage.

How it works

From the applicant’s ID card to a file where every check carries a source and a timestamp.

Step 1

Create the file

Full name, date and state of birth open the applicant’s file. Every later query is stored under it.

Dashboard or API

Step 2

Read the ID card

OCR reads the front and the back and returns the card’s data. The same chain queries the Lista Nominal and returns its standing.

Async result

Step 3

Cross the sources

CURP against RENAPO with field-by-field matching, RFC with the SAT, watchlists across nine categories and judicial bulletins by name.

RENAPO · SAT · judicial bulletins

Step 4

Get the verdict

A 0-100 score, a level, a confidence percentage and the coverage gaps still open. Every async result arrives on a signed webhook.

Signed webhook

Applicable framework

The leasing frame: personal data, AML and courtroom evidence.

Leasing is governed by each state’s civil code. The LFPDPPP regulates the applicant’s personal data, the LFPIORPI sets an AML threshold on high-value leases and the procedural code defines the weight of electronic evidence. Every query is logged with its date, its source and its literal response.

Lease agreement
Civil Code / per state
Personal data
LFPDPPP · DOF 20-03-2025 / Art. 8
Vulnerable activity
LFPIORPI / Art. 17
Electronic evidence
Applicable procedural code

Orientation only, not legal advice. Leasing is governed by the civil and procedural codes of each Mexican state, and the UMA threshold for the vulnerable activity is updated every year.

  1. 01

    No financial regulator

    The lease is governed by each state’s civil code and the lawsuit by its procedural code. The CNBV and Condusef do not supervise leasing.

  2. 02

    Personal and biometric data

    The LFPDPPP requires a privacy notice and consent to process an applicant’s data. Biometrics are sensitive personal data: its article 8 calls for express, written consent. Notice and consent are collected before the query; Singula logs what was checked and when.

  3. 03

    AML on high-value leases

    The LFPIORPI treats temporary use of real estate as a vulnerable activity above a monthly threshold in UMAs. The obligation: identify the tenant, build a file and submit the reports through the SAT portal, which routes them to the UIF.

  4. 04

    Electronic evidence in court

    Whether electronic evidence is admitted follows the applicable procedural code: the national one, still phasing in, or that of the state where the case is heard. Every query is logged with its receipt, its date, its time and the source’s literal response.

API REST

One file, three calls.

Create the applicant, upload both sides of the ID and wait for the webhook carrying the OCR output and the Lista Nominal verdict. The aggregated score is readable at any time.

Test environment: it returns simulated data and never touches RENAPO, the SAT or the INE
If the provider does not respond, the query is logged in error status
Webhooks signed with HMAC-SHA256 on every async result
verifica-inquilino.sh
# 1 · Expediente del prospecto
curl -X POST https://api.singula.mx/customer \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "type": "physical",
        "name": "JORGE ALBERTO",
        "last_name": "MARTINEZ",
        "mothers_last_name": "RUEDA",
        "birth_day": 12, "birth_month": 4, "birth_year": 1990,
        "birth_place": "DF" }'

→ { "id": "cus_lzk9m4ab3f", "env": "production" }

# 2 · Credencial: OCR de anverso y reverso + Lista Nominal
curl -X POST https://api.singula.mx/app/ine-extraction/customer/cus_lzk9m4ab3f \
  -H "Authorization: Bearer sk_live_..." \
  -F "ine_front=@ine_frente.jpg" \
  -F "ine_back=@ine_reverso.jpg"

→ { "request_id": "req_8h2ndk4p1x", "status": "processing" }

// Webhook al cerrar la cadena OCR → Lista Nominal:
{
  "event":       "ine_extraction.completed",
  "extract": {
    "nombre":        "JORGE ALBERTO MARTINEZ RUEDA",
    "curp":          "MARJ900412HDFRDR09",
    "clave_elector": "MRRDJR00000000H000",
    "seccion":       "1247",
    "vigencia":      "2031",
    "ine_model":     "E"
  },
  "listanominal": {
    "outcome":       "vigente",
    "baja_reason":   null,
    "queried_at":    "2026-07-28T11:04:19Z"
  }
}

# 3 · Score agregado del expediente
curl https://api.singula.mx/app/risk/customer/cus_lzk9m4ab3f \
  -H "Authorization: Bearer sk_live_..."

→ {
  "score":         25,
  "risk_level":    "low",
  "confidence":    43,
  "tools_run":     ["validateCurp", "checkBlacklist", "getJudicialRecordsOfPerson"],
  "coverage_gaps": ["identityVerification", "validateRfc"]
}

Frequently asked questions

No. Singula does not OCR pay stubs and has no access to credit bureaus. It verifies that the person exists, that their ID is active, whether they have court records, whether they appear on watchlists and what digital presence they register. Proof of income is collected outside Singula.

The query searches files published in judicial bulletins. Coverage depends on which courts publish and since when, so it is not a single national registry. The response returns court, subject matter, parties and the date of each ruling, plus a homonym flag.

The response returns the cause from the INE catalogue, which registers ten: duplicate, death, cancelled application, forged documents, irregular address and others. An expired card that was replaced also leaves the roll; the cause arrives named in the response.

Yes. The record can be created as a legal entity: its RFC is validated with the SAT and court files are searched by legal name and trade name in a single query (one search when they are the same name). That company search runs only on records registered as legal entities. The signing officer is screened separately as an individual.

Yes. The privacy notice and the consent are collected before the query; Singula does not collect them for you. On Singula’s side, what was checked, when and with what result stays on record; the identity link also logs the device, the IP and the time of submission. The link carries a token that expires in 24 hours, and the person uploads their documents and selfie from their own phone.

The response records that the source answered with no record, with its date and its receipt. If the provider does not respond, the query is logged in error status and can be repeated. In the test environment every response is simulated.

Screen the tenant before signing

Create your account and run the whole flow in the test environment. Court records, watchlists and identity verification switch on once your company verification is complete.