Tester
Sur cette page, vous pouvez essayer les parcours de bout en bout, avec un vrai téléphone, avant d’écrire une ligne de code, puis tester avec votre propre code.
Le site de démonstration
Le site de démonstration joue le rôle d’une banque, d’un opérateur et d’un service en ligne : il déroule les quatre parcours (activation chez un partenaire, identification sur un autre appareil, identification sur le même appareil, demande envoyée depuis un tableau de bord) avec l’application ExcelID sur un téléphone Android. C’est aussi un exemple complet d’intégration, puisqu’il appelle exactement l’API décrite ici.
Ouvrir le site de démonstration
L’accès au site de démonstration se fait sur invitation. Demandez-le à AI-KING GROUP.
Tester avec votre propre code
Avec votre accès de test et un ExcelID de test activé (voir Configurer ExcelID de test), voici un script complet : il active une personne de test, lui demande une signature et attend le résultat.
// node essai.mjs (EXCELID_API_KEY doit être défini ; Node.js 18 ou plus)
const API = 'https://www.excelidapi.aikinggroup.com';
const call = async (path, body) => {
const r = await fetch(API + path, {
method: 'POST',
headers: { 'Content-Type': 'application/json', 'X-Api-Key': process.env.EXCELID_API_KEY },
body: JSON.stringify(body),
});
const json = await r.json();
if (!r.ok) throw new Error(`${path} : ${json.errorCode} : ${json.details}`);
return json;
};
const b64 = (s) => Buffer.from(s, 'utf8').toString('base64');
// 1. Activer une personne de test (à faire une fois)
const enrollment = await call('/v1/enrollments', {
fullName: 'Personne de Test', personalNumber: 'TEST0001', documentVerified: true,
});
console.log('Code à saisir dans l’application :', enrollment.activationCode);
console.log('Appuyez sur Entrée une fois activé…');
await new Promise((ok) => process.stdin.once('data', ok));
// 2. Demander une signature à cette personne
const order = await call('/v1/sign', {
endUserIp: '127.0.0.1',
userVisibleData: b64('Essai de signature depuis mon code'),
requirement: { personalNumber: 'TEST0001' },
});
console.log('Demande envoyée, confirmez dans l’application…');
// 3. Attendre le résultat
while (true) {
const r = await call('/v1/collect', { orderRef: order.orderRef });
if (r.status !== 'pending') { console.log(JSON.stringify(r, null, 2)); break; }
await new Promise((ok) => setTimeout(ok, 2000));
}
process.exit(0);
Laissez l’application ouverte pendant l’essai : la demande s’y affiche dès son arrivée. Vérifiez ensuite la preuve avec Vérifier les signatures.
Liste de contrôle avant la production
- Le parcours même appareil et le parcours autre appareil fonctionnent, avec les secours.
- Tous les
hintCodeeterrorCodede/collectet Erreurs affichent le message recommandé, y compris les codes inconnus. - Le code QR est recalculé chaque seconde sur votre serveur, et
qrStartSecretn’arrive jamais au navigateur. - Vous comparez
device.ipAddressà l’adresse IP observée, et lenonceau retour. - Vous vérifiez et conservez la preuve de chaque signature.
- Votre certificat de production est installé, dans un magasin sûr.