Skip to content
Constaia
us_passport_card

US passport card

The wallet-size US passport card: MRZ, expiry and holder.

Category
Identity
Country
United States
Extracted fields
11 fields
Cost
1 credit
us_passport_cardspecimen
Document number
First name
Last name
Sex
Nationality
Date of birth
Issue date
Expiry date
Issuing country

The passport card is issued by the U.S. Department of State for land and sea travel, and it is a List A document for Form I-9. Its back carries a 3-line MRZ. Constaia validates the MRZ check digits, compares them with the front and checks expiry.

  • US passport books use the passport type (TD3 MRZ).
  • Front and back count as 1 credit.

What it checks

  • MRZ ICAO 9303. Check digits of the machine readable zone.
  • MRZ vs printed data. The MRZ matches the visible data.
  • Holder. Name, number or date of birth match what you expect.
  • Age. Minimum or maximum age from the date of birth.
  • Validity. Not expired on the reference date.
  • Form I-9. Whether the document belongs to list A, B or C.A

Extracted fields

  • Document numberdocument_number
  • First namefirst_name
  • Last namelast_name
  • Sexsex
  • Nationalitynationality
  • Date of birthbirth_date
  • Issue dateissue_date
  • Expiry dateexpiry_date
  • Issuing countryissuing_country
  • Mrzmrz
  • Place of birthbirth_place

Where it is used

Sample request

curl https://api.constaia.com/v1/analyze \
  -H "Authorization: Bearer $CONSTAIA_API_KEY" \
  -F "file=@us_passport_card_specimen.jpg" \
  -F 'options={
    "expect": "us_passport_card",
    "checks": {
      "not_expired": true,
      "holder": {
        "full_name": "Jordan Specimen"
      }
    },
    "storage": "none"
  }'

Try it for free with a ck_test_ key and the file us_passport_card_specimen.jpg.

Sample response

Fictitious data. Shortened response.

200 OK · application/json
{
  "id": "an_01J9Z3K8QW4T6Y2B7N5M1R0PXC",
  "object": "analysis",
  "status": "completed",
  "livemode": false,
  "document": {
    "type": "us_passport_card",
    "label": "US passport card",
    "confidence": 0.97
  },
  "verdict": {
    "expected": [
      "us_passport_card"
    ],
    "match": true,
    "status": "valid",
    "reasons": [
      {
        "code": "type_match",
        "severity": "info",
        "message": "The document is: US passport card."
      }
    ]
  },
  "fields": {
    "document_number": {
      "value": "C03005988",
      "confidence": 0.99,
      "validated": true
    },
    "first_name": {
      "value": "JORDAN",
      "confidence": 0.98,
      "validated": null
    },
    "last_name": {
      "value": "SPECIMEN",
      "confidence": 0.97,
      "validated": null
    },
    "nationality": {
      "value": "USA",
      "confidence": 0.96,
      "validated": null
    },
    "birth_date": {
      "value": "1994-03-08",
      "confidence": 0.99,
      "validated": null
    },
    "birth_place": {
      "value": "OREGON, U.S.A.",
      "confidence": 0.98,
      "validated": null
    },
    "sex": {
      "value": "M",
      "confidence": 0.97,
      "validated": null
    },
    "issue_date": {
      "value": "2021-06-14",
      "confidence": 0.96,
      "validated": null
    },
    "expiry_date": {
      "value": "2031-06-13",
      "confidence": 0.99,
      "validated": null
    }
  },
  "checks": [
    {
      "code": "mrz_checksums",
      "passed": true,
      "message": "The MRZ check digits are correct."
    },
    {
      "code": "mrz_matches_visual",
      "passed": true,
      "message": "The MRZ matches the printed data."
    },
    {
      "code": "not_expired",
      "passed": true,
      "message": "Valid on the reference date."
    },
    {
      "code": "holder_match",
      "passed": true,
      "message": "The holder matches."
    }
  ],
  "warnings": [],
  "storage": {
    "mode": "none",
    "file_deleted_at": "2026-09-29T10:00:02Z",
    "expires_at": null
  },
  "usage": {
    "credits": 1,
    "pages": 2
  }
}

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.