Authentification
Comprendre l'authentification de l'API Jèko avec les clés API
Deux en-têtes à chaque requête
Toutes les requêtes API nécessitent une authentification à l'aide de clés API. Vous devez inclure deux en-têtes avec chaque requête :
X-API-KEY: Votre clé APIX-API-KEY-ID: L'identifiant de votre clé API
Obtenir les clés API
Pour obtenir votre clé API et votre identifiant de clé API :
- Connectez-vous au Dashboard Business à https://business.jeko.africa/
- Naviguez vers Paramètres > API & Webhooks
- Générez ou copiez vos identifiants API depuis cette section
Activer l'accès API
Générer vos clés ne suffit pas. L'accès à l'API est une étape à part, et tant qu'elle n'est pas faite vos appels sont rejetés, même avec des clés valides :
{
"id": "business_not_enabled_for_api_access",
"message": "This business account is not enabled for API access"
}Le statut est 403. Un 401 voudrait dire que vos clés ou vos en-têtes sont en cause.
Avoir des clés ne veut pas dire avoir l'accès. Si votre premier appel répond 403 alors que vos en-têtes sont bons, c'est presque toujours ça. Le détail de ce qui ouvre l'accès est dans Activer l'accès à l'API.
Pour l'activer, faites vérifier votre boutique depuis l'application Jèko Business :
- Ouvrez l'application, sur l'onglet Accueil
- Touchez l'encart qui affiche votre plafond de collecte, en haut de l'écran
- Suivez le parcours de vérification
Cet encart n'apparaît qu'au propriétaire du compte : un caissier voit le sien, sur les terminaux, et ne peut pas lancer la vérification.
Les informations du compte suffisent : dès qu'elles sont complètes, l'accès API est activé, sans pièce d'identité à fournir. Relancez votre appel, il passe. Aucune demande au support n'est nécessaire.
Si votre entreprise a été intégrée par un Service Provider, c'est déjà fait : l'accès API a été activé lors de votre intégration.
Si vous restez bloqué, écrivez à hello@jeko.africa en indiquant l'identifiant de votre magasin.
Les plafonds de collecte
La vérification se fait par niveaux, et chaque niveau relève le montant que vous pouvez encaisser. Ce plafond est visible sur l'accueil de l'application et dans les paramètres de la boutique.
Ces plafonds valent aussi pour vos appels API. Une transaction refusée pour dépassement n'a rien à voir avec vos clés : montez d'un niveau de vérification pour relever la limite.
Exemple de requête
curl -X GET "https://api.jeko.africa/partner_api/stores" \
-H "X-API-KEY: your_api_key_here" \
-H "X-API-KEY-ID: your_api_key_id_here"Restreindre l'appel à vos adresses IP
En plus des clés, vous pouvez n'autoriser la Partner API que depuis des adresses que vous désignez. C'est désactivé par défaut : sans liste, aucune adresse n'est refusée.
Le réglage est dans le tableau de bord, Paramètres → API, bloc Restriction par adresse IP, au même endroit que vos clés. Il ne se pilote pas par l'API.
Une fois la liste renseignée, tout appel venu d'ailleurs reçoit un 403
partner_api_ip_not_whitelisted, sur l'ensemble de la Partner API et pas
seulement sur les paiements.
Il faut des adresses exactes, une par une. La notation CIDR n'est pas
acceptée : 203.0.113.0/24 est refusé à la saisie. Si vos appels partent de
plusieurs serveurs, ou d'un hébergeur dont l'adresse de sortie change, chaque
adresse doit figurer dans la liste, qui est limitée à cinquante entrées.
Renseignez l'adresse publique de votre serveur, celle que Jèko voit, pas
celle de votre machine de développement. Une adresse reçue en IPv6 mappée,
::ffff:203.0.113.42, correspond bien à 203.0.113.42.
Erreurs d'authentification
401 Unauthorized: Clé API invalide ou manquante403 Forbidden: La clé API n'a pas la permission d'accéder à la ressource demandée403avec"id": "business_not_enabled_for_api_access": les clés sont valides, mais l'accès API de votre entreprise n'est pas encore activé. Voir la section Activer l'accès API plus haut403avec"id": "partner_api_ip_not_whitelisted": les clés sont valides, mais l'appel vient d'une adresse absente de votre liste. Voir Restreindre l'appel à vos adresses IP plus haut