Pasaporte (cualquier país)
Lee y valida la MRZ de pasaportes de cualquier país según ICAO 9303.
- Identificador
- passport
- Categoría
- Identidad
- País
- Cualquier país
- Coste
- 1 crédito
Todos los pasaportes siguen el estándar ICAO 9303. Constaia valida los dígitos de control de la MRZ, la compara con la página de datos y comprueba la caducidad y la edad del titular.
- Basta la página de datos: 1 crédito.
- Combina min_age_years con la fecha de la actividad para categorías por edad.
Qué comprueba
- MRZ TD3. Dígitos de control ICAO 9303 de la MRZ de pasaporte (2 líneas de 44 caracteres).
- MRZ ↔ zona visual. Comprueba que los datos de la MRZ coinciden con los impresos en el documento.
- Caducidad. La fecha de caducidad es posterior a hoy o a la fecha de referencia que indiques.
- Titular. Nombre, número o fecha de nacimiento coinciden con los esperados, sin tildes y con orden de apellidos flexible.
VálidoNo válidoRevisar
Campos que extrae
| document_number | Número de documento |
| names | Nombre y apellidos |
| nationality | Nacionalidad |
| birth_date | Fecha de nacimiento |
| expiry_date | Fecha de caducidad |
| issuing_country | País emisor |
| sex | Sexo |
Dónde se usa
Petición de ejemplo
curl https://api.constaia.com/v1/analyze \
-H "Authorization: Bearer $CONSTAIA_API_KEY" \
-F "file=@passport.jpg" \
-F 'options={
"expect": "passport",
"checks": {
"not_expired": true,
"min_age_years": 18
},
"storage": "none"
}'Pruébalo sin coste con una clave ck_test_ y el fichero passport.jpg.
Ejemplo de respuesta
Datos ficticios. Respuesta abreviada.
200 OK · application/json
{
"id": "an_01J9Z3K8QW4T6Y2B7N5M1R0PXC",
"object": "analysis",
"status": "completed",
"livemode": false,
"document": {
"type": "passport",
"label": "Pasaporte (cualquier país)",
"confidence": 0.97
},
"verdict": {
"expected": [
"passport"
],
"match": true,
"status": "valid",
"reasons": [
{
"code": "type_match",
"severity": "info",
"message": "El documento es: Pasaporte (cualquier país)."
}
]
},
"fields": {
"document_number": {
"value": "PAA123456",
"confidence": 0.99,
"validated": true
},
"names": {
"value": "JOHN SMITH",
"confidence": 0.98,
"validated": null
},
"nationality": {
"value": "GBR",
"confidence": 0.97,
"validated": null
},
"birth_date": {
"value": "1985-07-21",
"confidence": 0.96,
"validated": null
},
"expiry_date": {
"value": "2032-01-15",
"confidence": 0.99,
"validated": null
},
"issuing_country": {
"value": "GBR",
"confidence": 0.98,
"validated": null
},
"sex": {
"value": "M",
"confidence": 0.97,
"validated": null
}
},
"checks": [
{
"code": "mrz_checksums",
"passed": true,
"message": "Los dígitos de control de la MRZ son correctos."
},
{
"code": "mrz_matches_visual",
"passed": true,
"message": "La MRZ coincide con los datos impresos."
}
],
"warnings": [],
"storage": {
"mode": "none",
"file_deleted_at": "2026-09-29T10:00:02Z",
"expires_at": null
},
"usage": {
"credits": 1,
"pages": 1
}
}FAQ
¿Constaia prueba que el documento es auténtico?
No. Comprueba el tipo, la coherencia de los datos y tus reglas, y avisa de señales como posible edición o foto de pantalla. Eso no prueba autenticidad.
¿Se guarda una copia del documento?
No, salvo que lo pidas. Con storage "none" (por defecto) el fichero se borra al terminar el análisis.
Otros documentos
Y para que conste…
Crea tu cuenta, copia la clave de test y valida tu primer documento en cinco minutos.