Las soluciones de prevención de fraude de Kount están diseñadas para una integración simple: una vez que se haya registrado y tenga una identificación de cliente, simplemente agregue el SDK de Web Client a su sitio web utilizando estas instrucciones, y su sitio estará equipado para nuestras funciones antifraude. El SDK web de Kount es un componente clave que se comunica con los otros segmentos del ecosistema de prevención de fraudes de Kount para mantener su sistema seguro y confiable.
Este artículo contiene instrucciones de instalación y uso para configurar el SDK web en su sitio web. El SDK de Kount se debe agrupar en el sitio web utilizando NPM/Yarn o incluir a través de <script>
etiquetas estáticas en HTML. Kount recomienda usar NPM para instalar el SDK y mantenerlo actualizado; sin embargo, las versiones estáticas están disponibles en GitHub (en inglés) si NPM no está disponible para su sitio web.
Restricciones y seguridad
El SDK debe:
- Entregarse desde el mismo dominio que la dirección del sitio web que se renderiza en el navegador del usuario
- Mantenerse actualizado a medida que se lanzan nuevas versiones
- Utilizarse dentro del contexto de un navegador web
El SDK NO debe:
- Modificarse
- Utilizarse del lado del servidor
- Utilizarse fuera del contexto de un navegador web
Sumas de verificación de integridad (SRI Hashes)
Para verificar la integridad de los archivos descargados, puede iniciar sesión en el sitio de Kount Developer para revisar las sumas de verificación de integridad (en inglés) de los archivos.
Datos necesarios para configurar el SDK
Se requieren los siguientes datos para usar kount-web-client-sdk:
nombre de host
- Proporcionado por Kount a los clientes durante la configuración inicial de la cuenta
- Específico para el entorno (host de prueba o producción)
- Determina dónde enviar las solicitudes del SDK
clientID
- El valor único proporcionado por Kount a los clientes durante la configuración inicial de la cuenta
- Un valor estático que no cambia entre ejecuciones o entornos
- Anteriormente conocido como “merchantID” para algunos clientes
isSinglePageApp
- Valor booleano de verdadero o falso
- Se utiliza para especificar si el SDK se está ejecutando en el contexto de una aplicación de página única (Single Page Application, SPA)
sessionID
- Cadenas de 32-caracteres generadas por usted; estas deben ser aleatorias/imprevisibles
- Debe seguir siendo único para la visita al sitio web del usuario de origen y no puede reutilizarse durante un mínimo de 30 días
- Contiene solo caracteres alfanuméricos, guiones o guiones bajos
(0-9, A-Z, a-z, - y _)
ID de sesión y Kount Command
El ID de sesión web y el ID de sesión de Kount no son iguales. El ID de sesión web es el identificador único de su sistema para la sesión. El ID de sesión de Kount es el ID de sesión que genera y utiliza para identificar una sesión en los puntos finales de DDC de Kount y la API de Kount. Dependiendo de cómo se desempeñe su sesión web, es posible que deba generar un ID de sesión único de Kount para el DDC de Kount (este SDK).
El ID de sesión de Kount debe ser único para cada publicación de RIS, incluso cuando se realizan múltiples transacciones en la misma sesión web.
ID de sesión y Kount Control
El ID de sesión de Kount se puede repetir dentro de la misma sesión web.
Por ejemplo, varios intentos de inicio de sesión en una ventana corta (menos de 15 minutos) pueden usar el mismo ID de sesión de Kount. En este caso, no es necesario reiniciar el DDC cada vez.
Para obtener más información sobre los ID de sesión, revise ID de sesión de sesión para el recopilador de datos del dispositivo (en inglés).
Instalación del SDK del cliente
Paquete de NPM
Si está desarrollando su propio sitio web, utilice el paquete de NPM del directorio que contiene su package.json:
de uso de NPM
npm instalar @kount/kount-web-client-sdk
de uso de Yarn
yarn agregar @kount/kount-web-client-sdk
Archivo estático de GitHub
Obtenga el SDK del repositorio de Kount GitHub (en inglés), agregue este archivo a su sitio web y luego continúe con Uso del SDK.
Configuración
Configuración base e invocación del SDK
Kount proporciona un objeto de plantilla en Github (en inglés) que ilustra el formato requerido del objeto de configuración.
Ejemplo basado en la versión 1.1.4 del SDK:
var kountConfig = {
"clientID": "999999", // clientID asignado a usted por Kount
"hostname": "https://example.com/", // Hostname para la recopilación de datos proporcionado por Kount
"isSinglePageApp": false // O verdadero, cambia algún comportamiento interno
}
Devoluciones de llamadas opcionales del ciclo de vida
El SDK de Web Client proporciona un sistema de devolución de llamada que le permite ejecutar código personalizado en ciertos puntos del proceso de recopilación de datos. Puede aumentar el objeto kountConfig para que contenga uno o más hook de ciclo de vida con una función (o lambda) de su elección. Hay dos hook principales:
collect-begin
– se activa cuando comienza la recopilacióncollect-end
– se activa después de que finaliza la colección
Cuando se ejecutan, las funciones de devolución de llamada reciben un parámetro; un objeto JavaScript que contiene las siguientes propiedades:
sessionID: cadena
– sessionID que generó para el objeto de kountConfigKountClientID: cadena
– clientID (anteriormente conocido como merchantID para algunos clientes)
Ejemplo de adición de devoluciones de llamada opcionales (con código de devolución de llamada arbitraria) al objeto kountConfig configurado en la configuración base:
kountConfig.callbacks = {
'collect-begin': función (params) {
// Cualquier código que desee ejecutar al inicio de la recopilación,
// como agregar silenciosamente el ID de sesión a su formulario de inicio de sesión.
var loginForm = document.forms['loginForm'];
var input = document.createElement('input');
input.type = 'hidden';
input.name = 'kaId';
input.value = params['SessionID'];
loginForm.appendChild(input);
},
'collect-end': function (params) {
// Cualquier código que desee ejecutar cuando terminemos de recopilar datos
loginButton = document.getElementById('login_button');
loginButton.removeAttribute('disabled');
}
};
Integración del SDK
Cuándo usar el SDK
Kount recomienda que agregue el kount-web-client-sdk en todas las páginas principales del flujo de trabajo de su sitio, en particular las páginas que conducen a acciones vulnerables (compra, pago, cambios de seguridad, actualizaciones de información de contacto, etc.). Después de que el kount-web-client-sdk se invoca una vez (y se completa) en una página de su sitio web, no se requiere ninguna otra interacción de SDK para esa página y la recopilación ahora es automática.
Invocación del SDK e inicio de la recopilación
Comience a ejecutar kount-web-client-sdk invocando su función kountSDK exportada con los argumentos adecuados. A partir de la versión 1.1.4, la firma de la función es la siguiente:
function kountSDK(kountConfig, sessionID)
Se requieren ambos parámetros:
kountConfig
– el objeto JavaScript de configuración detallado en la configuración basesessionID
– el ID de sesión que generó para la visita al sitio web de este usuario
Para habilitar la recopilación de datos, utilice el ejemplo a continuación:
// Ejemplo de uso en el navegador con IsCompleted()
<script src="./path/to/kount-web-client-sdk-bundle.js"></script>
<script>
const sessionID = getSessionIDorGenerateOne();
const kountConfig = { /* Configurado como arriba */ };
const sdk = kountSDK(kountConfig, sessionID);
si (sdk) {
// Cualquier lógica posterior a la inicialización puede ir aquí
console.log("¡SDK antifraude activado!");
}
</script>
Verificación del estado de IsCompleted() opcional
Debido a la naturaleza asíncrona del proceso de recopilación del dispositivo, no se conoce el estado de la recopilación hasta que se haya invocado el SDK. La función IsCompleted()
devuelve un booleano que indica si la recopilación se ha completado (verdadero) o no (falso), y se puede llamar desde el objeto SDK devuelto desde kountSDK(kountConfig, sessionID)
.
// Ejemplo de uso en el navegador con IsCompleted()
<script src="./path/to/kount-web-client-sdk-bundle.js"></script>
<script>
const sessionID = getSessionIDorGenerateOne();
const kountConfig = { /* Configurado como arriba */ };
sdk = kountSDK(kountConfig, sessionID);
// SDK es un objeto con esta función si la inicialización tiene éxito
si (sdk) {
// Cualquier lógica posterior a la inicialización puede ir aquí
console.log("¡SDK antifraude activado!");
mientras (!sdk.IsCompleted()) {
// Aún estamos recopilando métricas...
}
// ¡Recopilación finalizada!
}
</script>
Ejemplos adicionales
Uso de React con el SDK instalado por NPM:
importar kountSDK desde '@kount/kount-web-client-sdk';
importar React, { useState } desde 'react';
Ejemplo de función() {
const [sessionID, setSessionID] = useState('');
const clientID = 900900;
función async onDoCollectionClick() {
let kountConfig = {
clientID: "SU_ID_DE_CLIENTE",
hostname: "SU_NOMBRE_DE_HOST_DE_KOUNT",
isSinglePageApp: true,
};
let sessionID = identifyTheSessionID();
kountSDK(kountConfig, sessionID);
}
return (
<div>
<button onClick={onDoCollectionClick}>Colección de Do
</button>
</div>
);
}
Pruebas
Al probar su integración con kount-web-client-sdk, no debe probar nuevas funciones ni ejecutar pruebas de carga con los nombres de host de producción de Kount. Especifique un valor de nombre de host de prueba adecuado en el objeto de configuración de JavaScript que pasa a la invocación del SDK. Comuníquese con su gerente de éxito del cliente para obtener más información.
Resolución de problemas
El SDK de Kount envía mensajes a la consola web del navegador en diferentes niveles. Consulte el código SDK en GitHub (en inglés) para identificar los mensajes de la consola que podrían ayudarlo durante la configuración.
Notas adicionales
Integración de RIS con nuestro SDK del cliente
Si está utilizando el servicio de RIS de Kount, después de invocaciones exitosas del navegador de kount-web-client-sdk, las llamadas del lado del servidor iniciadas por el cliente a RIS (usando el mismo clientID y el mismo sessionID que se especificaron durante las ejecuciones del SDK para la visita al sitio web de un usuario) deben resultar en la funcionalidad documentada de RIS.
Diagrama de secuencia del SDK web estático
Este diagrama resume las relaciones e interacciones entre el navegador del cliente, el sitio del cliente, el kount-web-client-sdk alojado por el cliente y los puntos finales definidos por Kount.