Utilisation de la durée de validité des tokens OAuth2
Préconisation : Conserver en mémoire le token OAuth2 JWT pendant sa durée de vie et le renouveler à expiration.
Le champ “exp” du token peut être utilisé pour déterminer si un token est encore valide ou non. Il est également possible de réagir au code HTTP 401 pour renouveler le token JWT et répéter l’appel qui a échoué.
Gestion des opérations en conflit
Préconisation : Utiliser de façon systématique les codes HTTP 409 retournés et les codes/messages contenus dans les PAYLOAD
Selon l’état d’un contrôle une opération peut être impossible à réaliser à un moment donné. Cela ne veut pas dire qu’elle ne pourra pas l’être plus tard quand l’état du contrôle le permettra.
Quelques exemples de conflit :
- Tenter d’uploader un document sur un dossier en cours d’analyse (statut « QUEUING » ou « PROCESSING »)
- Tenter un submit sur un dossier en cours d’analyse (statut « QUEUING » ou « PROCESSING »)
- Tenter de télécharger un rapport de contrôle sur un dossier en cours d’analyse (statut « QUEUING » ou « PROCESSING »)
- Tenter de supprimer un dossier en cours d’analyse (statut « QUEUING » ou « PROCESSING »)
Prise en compte des codes et des messages des PAYLOADS
Préconisation : Généraliser le traitement fait sur les erreurs 409 et utiliser de façon systématique les codes HTTP retournés et les codes/messages contenus dans les PAYLOADS. L’API renvoie un certain nombre d’informations lors des retours d’appels d’API :
- Les codes retours HTTP correspondent aux standards d’utilisation des ressources via des API REST
- Les PAYLOAD sont enrichies avec des informations permettant d’affiner la compréhension d’un code retour HTTP lors d’une opération sur une ressource donnée.
L’ensemble des code d’erreur « errorCodeDetail » sont détaillés dans le Chapitre 12 de la documentation Requester KYC :
Mise à jour des données souscripteur après première analyse entraînant un traitement OCR
Préconisation : Limiter la mise à jour des données souscripteur aux données réellement modifiées (ex : adresse email ou adresse) pour éviter les traitements longs et superflus de ré-analyse OCR des pièces.
Seule la modification des données “critiques” (nom, prénom, nom d’usage) donne lieu au changement de statut à SUSCRIBER_MODIFIED.
Les autres changements donneront lieu au changement de statut du contrôle à MODIFIED ce qui permettra de rejouer les contrôles sans ré-analyse de pièces (quelques dixièmes de seconde seulement au lieu de 10 à 15s de relecture des pièces) lors de la prochaine opération SUBMIT.