La API de Wheelz ofrece soporte completo para la extracción de datos de DNIs españoles, tanto electrónicos (2006 - actualidad) como pre-electrónicos (1990 - 2006). Nuestro sistema utiliza OCR avanzado e Inteligencia Artificial para extraer y validar todos los campos del documento.
POST https://api.wheelz-app.es/dni/process/v2
La autenticación se realiza mediante la cabecera x-api-key
. La clave de la API se puede encontrar en el dashboard.
curl --location 'https://api.wheelz-app.es/dni/process/v2' \
--header 'x-api-key: tu-clave-api' \
--form 'files=@"/ruta/al/anverso.jpg"' \
--form 'files=@"/ruta/al/reverso.jpg"'
const axios = require('axios');
const FormData = require('form-data');
const fs = require('fs');
const data = new FormData();
data.append('files', fs.createReadStream('/ruta/al/anverso.jpg'));
data.append('files', fs.createReadStream('/ruta/al/reverso.jpg'));
const config = {
method: 'post',
url: 'https://api.wheelz-app.es/dni/process/v2',
headers: {
'x-api-key': 'tu-clave-api',
...data.getHeaders()
},
data: data
};
axios(config)
.then((response) => console.log(response.data))
.catch((error) => console.error(error));
La API devuelve un objeto JSON con los siguientes campos:
fields.documentNumber
: Número del DNI (con verificación)fields.name
: Nombre (con verificación)fields.firstSurname
: Primer apellido (con verificación)fields.secondSurname
: Segundo apellido (con verificación)fields.birthDate
: Fecha de nacimiento (con verificación)fields.expirationDate
: Fecha de caducidad (con verificación)fields.documentSupportNumber
: Número de soporte del documento (con verificación)fields.gender
: Género (con verificación)fields.rawAddress
: Dirección completa sin procesarfields.addressRoadType
: Tipo de víafields.addressRoadName
: Nombre de la víafields.addressNumber
: Númerofields.addressFloor
: Pisofields.addressDoor
: Puertafields.addressProvince
: Provinciafields.addressMunicipality
: Municipiofields.addressTown
: LocalidadmrzDetected
: Indica si se detectó la MRZ en el documentoverified
que indica si el valor ha sido verificado{
"fields": {
"documentNumber": {
"value": "36645681B",
"verified": true
},
"name": {
"value": "JULIAN",
"verified": false
},
"firstSurname": {
"value": "NIETO",
"verified": true
},
"secondSurname": {
"value": "ADELL",
"verified": false
},
"birthDate": {
"value": "1934-07-07",
"verified": true
},
"expirationDate": {
"value": "2099-01-01",
"verified": true
},
"documentSupportNumber": {
"value": "36645681B",
"verified": true
},
"rawAddress": {
"value": "AVDA JOSEP TARRADELLAS I JOAN 189 ET 1, L'HOSPITALET DE LLOBREGAT, BARCELONA",
"verified": false
},
"gender": {
"value": "M",
"verified": true
},
"addressRoadType": {
"value": "AVENIDA",
"verified": false
},
"addressRoadName": {
"value": "JOSEP TARRADELLAS I JOAN",
"verified": false
},
"addressNumber": {
"value": "189",
"verified": false
},
"addressFloor": {
"value": "ET 1",
"verified": false
},
"addressDoor": {
"value": null,
"verified": false
},
"addressProvince": {
"value": "BARCELONA",
"verified": false
},
"addressMunicipality": {
"value": "L'HOSPITALET DE LLOBREGAT",
"verified": false
},
"addressTown": {
"value": "L'HOSPITALET DE LLOBREGAT",
"verified": false
}
},
"mrzDetected": true
}
La API soporta documentos PDF, JPEG y PNG que contengan únicamente DNIs, tanto electrónicos (2006 - actualidad) como pre-electrónicos (1990 - 2006).
Puedes enviar una imagen con ambas caras, una imagen por cara o sólo una de las caras. En el caso de PDF, puedes enviar un PDF con ambas caras en una página o una página por cara.
El modelo que usa la API puede devolver buenos resultados incluso en imágenes con poca calidad. Sin embargo, cuanto mayor sea la calidad, mejores serán los resultados.
El modelo puede fallar cuando ambas caras estén en la misma imagen / documento pero con diferente orientación de texto.
Si tienes alguna duda o necesitas asistencia, no dudes en contactarnos en [email protected]