Skip to content
Constaia
es_aeat_tax_id_card

Spanish tax identification card (NIF)

Card certifying the tax identification number (NIF) of a legal entity (Spanish Tax Agency), in electronic format with CSV.

Category
Tax
Country
Spain
Extracted fields
5 fields
Cost
1 credit
es_aeat_tax_id_cardspecimen
Holder name
Holder ID number
Tax address
Issue date
Secure Verification Code (CSV)

What it checks

  • National identifiers. Official checksum or format of the number (NIF, CPF, CURP, RUT, SSN…).es_nif
  • Holder. Name, number or date of birth match what you expect.
  • Secure verification code. Format of the code used to check it with the issuer.
  • PDF electronic signature. PAdES signature verified when the original PDF is sent.

Extracted fields

  • Holder nameholder_name
  • Holder ID numberholder_id
  • Tax addresstax_address
  • Issue dateissue_date
  • Secure Verification Code (CSV)csv_code

Sample request

curl https://api.constaia.com/v1/analyze \
  -H "Authorization: Bearer $CONSTAIA_API_KEY" \
  -F "file=@document.pdf" \
  -F 'options={
    "expect": "es_aeat_tax_id_card",
    "checks": {
      "holder": {
        "full_name": "Carmen Especimen Ruiz"
      }
    },
    "storage": "none"
  }'

Sample response

Fictitious data. Shortened response.

200 OK · application/json
{
  "id": "an_01J9Z3K8QW4T6Y2B7N5M1R0PXC",
  "object": "analysis",
  "status": "completed",
  "livemode": false,
  "document": {
    "type": "es_aeat_tax_id_card",
    "label": "Spanish tax identification card (NIF)",
    "confidence": 0.97
  },
  "verdict": {
    "expected": [
      "es_aeat_tax_id_card"
    ],
    "match": true,
    "status": "valid",
    "reasons": [
      {
        "code": "type_match",
        "severity": "info",
        "message": "The document is: Spanish tax identification card (NIF)."
      }
    ]
  },
  "fields": {
    "holder_name": {
      "value": "ESPECIMEN S.L.",
      "confidence": 0.99,
      "validated": true
    },
    "holder_id": {
      "value": "B12345674",
      "confidence": 0.98,
      "validated": null
    },
    "tax_address": {
      "value": "C/ MAYOR 1, 28013 MADRID",
      "confidence": 0.97,
      "validated": null
    },
    "issue_date": {
      "value": "2019-02-11",
      "confidence": 0.96,
      "validated": null
    },
    "csv_code": {
      "value": "ABCDEFGH12345678",
      "confidence": 0.99,
      "validated": null
    }
  },
  "checks": [
    {
      "code": "id_number",
      "passed": true,
      "message": "id_number"
    },
    {
      "code": "csv_format",
      "passed": true,
      "message": "The verification code has a valid format."
    }
  ],
  "warnings": [],
  "storage": {
    "mode": "none",
    "file_deleted_at": "2026-09-29T10:00:02Z",
    "expires_at": null
  },
  "usage": {
    "credits": 1,
    "pages": 1
  }
}

FAQ

Does Constaia prove the document is authentic?

No. It checks the type, data consistency and your rules, and flags signals such as a possible edit or a screen photo. That does not prove authenticity.

Is a copy of the document kept?

No, unless you ask for it. With storage "none" (the default) the file is deleted when the analysis ends.

Other documents

And for the record…

Create your account, copy the test key and validate your first document in five minutes.