API Antifraude — Comprobaciones previas a una operación (1.0)

Download OpenAPI specification:Download

INTRODUCCION

Comprobaciones que se hacen antes de dar por bueno un dato: dar de alta a alguien, mandarle un código de verificación o aceptarle un pago.



Todas las comprobaciones se piden por la misma llamada. El parámetro SERVICIO dice cuál se quiere, y los parámetros que no son de ese servicio se ignoran: puede mandar siempre la misma estructura y cambiar solo SERVICIO. Los servicios que se vayan añadiendo (correo, IP…) entrarán por aquí, sin que usted tenga que integrar otra URL.

SERVICIOS DISPONIBLES

SERVICIOQué comprueba
DatosTelefonoQuién hay detrás de un número: operadora que le da servicio, portabilidad (de qué operadora vino y cuándo se portó) y tipo de línea.

POR QUE LA PORTABILIDAD Y EL TIPO DE LINEA

De todo lo que se puede saber de un número sin llamarlo, estos dos datos son los que de verdad cambian una decisión.



La fecha de portabilidad. Un número que cambió de operadora hace tres días, justo antes de una operación importante, es el patrón del secuestro de línea: el atacante se lleva el número de la víctima a otro operador y a partir de ahí recibe él los SMS de verificación. Si va a mandar un código a ese número, conviene verificar antes por otra vía.



El tipo de línea. Una línea por Internet (VoIP) donde debería haber un móvil suele ser un número de usar y tirar: se contratan en minutos y se abandonan igual de rápido. Y una numeración de tarificación adicional o de máquina a máquina no es el teléfono personal de nadie.



Con eso, la respuesta trae además un riesgo calculado de 0 a 100 con los motivos en texto. No es un veredicto y no decide por usted: es lo que los datos permiten decir, explicado, para que su sistema aplique su propia política.

DE DONDE SALEN LOS DATOS

Para los móviles españoles se usa nuestro propio registro de portabilidad, que es lo que nos permite dar el operador del que venía el número y la fecha exacta del cambio. Para los fijos españoles y cualquier número extranjero se consulta la numeración internacional. Usted no tiene que elegir: manda el número y se resuelve por donde toque.



El campo Fuente de la respuesta le dice cuál se ha usado. El historial de portabilidad no lo publican todos los países: cuando no hay dato, Portabilidad.Consta viene a 0 —que no es lo mismo que «no se ha portado», y por eso se distinguen.

PRECIO

Se cobra por consulta resuelta. Si no se puede resolver, la llamada devuelve -4 y no se cobra nada.



La misma consulta repetida en menos de un minuto (un doble envío, un reintento de su sistema) devuelve el resultado anterior marcado con Repetida=1 y tampoco se cobra. Pasado ese minuto se vuelve a consultar de verdad y se vuelve a cobrar: el dato puede haber cambiado, y justo la portabilidad de ayer es la que le interesa.

AUTENTICACION

Igual que el resto de nuestras APIs: autenticación Basic con su usuario y su API Token, que encontrará en su panel en Sus datos → Configurar → Seguridad. Recuerde autorizar ahí también la IP pública desde la que llamará.

Consultar

/Consultar

Realiza una comprobación antifraude. El parámetro SERVICIO elige cuál; con DatosTelefono devuelve operadora, portabilidad y tipo de línea del número indicado, más el riesgo calculado y sus motivos.

Authorizations:
basicAuth
query Parameters
Servicio
string
Value: "DATOSTELEFONO"
Example: Servicio=DatosTelefono

Comprobación que quiere realizar. No distingue mayúsculas de minúsculas.
DatosTelefono - Operadora, portabilidad y tipo de línea de un número.

Telefono
required
string
Example: Telefono=600000000

Número a comprobar. Puede enviarlo nacional (600000000) acompañado de PREFIJO, o internacional completo (+34600000000 o 0034600000000), en cuyo caso PREFIJO sobra. Se ignoran espacios, guiones y paréntesis.

Prefijo
string
Example: Prefijo=+34

Prefijo internacional del país del número, con o sin +. Solo se usa cuando TELEFONO viene en formato nacional.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Tipo de respuesta a mostrar como resultado de la llamada.
JSON - La respuesta la obtendrá en JSON
XML - La respuesta la obtendrá en XML
TXT - La respuesta la obtendrá en formato Texto

Request Body schema:

Los parámetros se envían en el cuerpo de la petición POST, como objeto JSON (Content-Type application/json, RECOMENDADO) o como formulario application/x-www-form-urlencoded. En el formato formulario, los parámetros de tipo array u objeto se envían como string JSON-codificado. Los nombres de los parámetros no distinguen mayúsculas de minúsculas. La descripción detallada de cada parámetro está en la sección de parámetros de esta operación.

Servicio
string
Telefono
required
string
Prefijo
string
Resp
string

Responses

Response Schema:
Array
Res
required
integer <int32>

Resultado de la llamada
1 Consulta realizada.
-1 Error de autenticación o IP no autorizada.
-2 No dispone de créditos suficientes.
-3 Error en los parámetros. Obtendrá el detalle en Error.
-4 No se ha podido resolver la consulta. No se ha cobrado nada; reinténtelo en unos minutos.
-5 El SERVICIO indicado no existe.

Servicio
string

Comprobación que se ha realizado.

Consulta
string

El dato consultado, ya normalizado a formato internacional.

Numero
Array of arrays

El número en sus distintos formatos y su país. Nacional son los dígitos sin prefijo, que es lo que su programa querrá guardar; Formato es la versión legible para enseñar en pantalla y puede venir vacía. Valido a 0 significa que el número no está asignado o no es válido en su país.

Linea
Array of arrays

Tipo de línea. Tipo es el valor estable para su código: movil, fijo, voip, gratuito, compartido, premium, personal, m2m o desconocido. TipoTexto es la versión legible.

Operadora
Array of arrays

Operadora que presta servicio al número. MCC/MNC identifican la red móvil y vienen vacíos en fijos.

Portabilidad
Array of arrays

Historial de portabilidad. Consta a 0 significa que ese país no publica el dato, que no es lo mismo que no haberse portado. Dias son los días transcurridos desde el cambio (-1 si no se sabe): es el dato clave para detectar un secuestro de línea.

Riesgo
Array of arrays

Riesgo calculado de 0 a 100, su Nivel (BAJO por debajo de 25, MEDIO hasta 49, ALTO a partir de 50) y los Motivos que lo explican, en texto. Es información para su política, no una decisión.

Fuente
string

De dónde salen los datos: propia (nuestro registro de portabilidad, móviles españoles) o proveedor (consulta de numeración internacional).

Repetida
integer

A 1 cuando es la misma consulta hecha hace menos de un minuto: se devuelve el resultado anterior y no se ha cobrado.

Creditos
number

Créditos cobrados por esta llamada.

Cred
number

Créditos que le quedan tras la consulta.

Error
string

Descripción del problema cuando Res es negativo.

Request samples

Content type
{
  • "Servicio": "DatosTelefono",
  • "Telefono": "600000000",
  • "Prefijo": "+34",
  • "Resp": "JSON"
}

Response samples

Content type
[
  • {
    }
]