Aller au contenu

Règles Shield

Les règles personnalisées, la liste de blocage, la liste d'autorisation et leur priorité.

Le score décide seul la plupart du temps. Trois dérogations déterministes s'appliquent ensuite aux cas où vous possédez une information invisible dans les signaux : un client fiable, un numéro déjà utilisé pour vous frauder ou une tranche de paiements que vous souhaitez contrôler quel que soit son score.

Toutes les trois nécessitent Shield Advanced et s'exécutent uniquement lorsque votre propre configuration de Shield est active.

Ordre de résolution d'une décision

Rien ici ne remplace le score. Tous ces éléments s'appliquent après son calcul. Cette séquence explique tous les résultats présentés sur cette page.

ÉtapeDéroulement
1Les signaux sont collectés et le score est calculé
2Une correspondance avec la liste de blocage ou les sanctions fixe le score à 100
3Le score est comparé à vos seuils et produit une autorisation, un examen ou un blocage
4Vos règles sont parcourues dans l'ordre et la première règle live correspondante décide
5L'action de cette règle s'applique par-dessus la décision du score

La règle de la première correspondance s'applique uniquement à l'étape 4. L'étape 2 explique pourquoi une règle d'autorisation ne peut pas sauver un client présent dans la liste de blocage.

Composition d'une règle

namestringobligatoire
Jusqu'à 120 caractères. Ce nom apparaît dans les motifs d'un paiement décidé par cette règle. Nommez-la donc selon ce qu'elle détecte.
conditionsarrayobligatoire
Entre une et dix conditions, chacune composée d'un champ, d'un opérateur et d'une valeur. Elles doivent toutes être satisfaites. Il n'existe aucun OR et une liste vide ne correspond à rien.
actionenumobligatoire
block, review, challenge_3ds ou allow. Le tableau ci-dessous décrit chaque action.
modeenumobligatoiredéfaut : live
Les règles live décident. Les règles test sont évaluées et comptabilisées sans jamais rien modifier.
priorityintegerfacultatifdéfaut : dix au-dessus de la valeur la plus élevée
La valeur la plus faible s'exécute en premier. Les règles de même priorité sont parcourues de la plus récente à la plus ancienne. La plus récente remporte donc une égalité.
enabledbooleanfacultatifdéfaut : true
Une règle désactivée n'est pas chargée et ne comptabilise aucune correspondance.

Chaque règle contient également un compteur de correspondances et l'heure de sa dernière correspondance. Ces deux valeurs sont mises à jour pour tous les paiements concernés, y compris pour les règles test. Ce compteur mesure réellement si une règle produit un effet.

Les huit champs

Le générateur repose sur un catalogue fermé. Il ne possède aucun langage d'expression et ne peut accéder à aucun élément absent de cette liste, y compris le score de risque lui-même.

ChampTypeOpérateurs
Montant de la transactionnumbergt gte lt lte eq
Deviselistin not.in
Moyen de paiementlistin not.in
Adresse e-mail du clienttexteq contains matches
Téléphone du clientlistin not.in
Pays de l'adresse IPlistin not.in
Première transaction de ce clientbooleanis_true is_false
Correspond à une entrée de la liste de blocagebooleanis_true

Vous devez connaître plusieurs comportements avant d'écrire une règle.

Le montant utilise les unités principales, comme le paiement. 50000 représente donc cinquante mille XAF.

Le moyen de paiement correspond au type du canal, pas à son slug : card, mobile_money, wallet, bank, crypto. C'est le seul endroit du produit où un terme de niveau produit est la bonne valeur.

Les numéros de téléphone sont comparés uniquement selon leurs chiffres. +237 6 70 00 00 00 et 237670000000 représentent donc la même valeur. La comparaison des adresses e-mail ne tient pas compte de la casse, tout comme matches, dont * est le seul caractère générique et qui est ancré aux deux extrémités.

Première transaction signifie que ce client n'a encore jamais réussi un paiement live avec vous. Un paiement sans client associé compte comme une première transaction.

Les quatre actions

L'effet d'une action dépend de la décision déjà prise par le score. Ce comportement surprend souvent.

ActionEffet
blockLe paiement est refusé, quel que soit son score
reviewLe paiement est signalé, sauf si le score l'a déjà bloqué. Un examen ne lève jamais un blocage
challenge_3ds3D Secure est demandé sur un paiement par carte. La décision d'autorisation, d'examen ou de blocage ne change pas
allowLa décision du score est ignorée et le paiement est traité, sauf en cas de correspondance avec la liste de blocage ou les sanctions

challenge_3ds atteint l'émetteur uniquement par les prestataires dont le driver peut transmettre cette demande. Ailleurs, le prestataire applique sa propre politique 3D Secure et la règle ne change rien.

Mode test

Une règle en mode test est évaluée sur chaque paiement live. Elle comptabilise ses correspondances et est enregistrée comme correspondante sur le paiement, sans jamais prendre de décision. C'est ce qui se rapproche le plus d'une simulation dans Shield, et la seule disponible. Il n'existe toujours aucune sandbox pour Shield.

Pour l'utiliser, écrivez la règle envisagée en mode test, laissez-la fonctionner pendant une semaine, puis consultez son compteur de correspondances. Vous devez savoir qu'une règle aurait bloqué quatre cents paiements avant de la passer en live.

La liste de blocage

Une entrée dans la liste de blocage fixe le score à 100. Elle entraîne donc un refus avec tous les seuils que vous pourriez configurer. C'est l'outil le plus direct de Shield et le seul qui ne nécessite aucune règle.

typeenumobligatoire
email, phone, ip, country ou card_bin.
valuestringobligatoire
Jusqu'à 255 caractères. La comparaison des adresses e-mail ignore la casse, celle des téléphones utilise uniquement leurs chiffres, celle des adresses IP est exacte et celle des pays utilise leur code à deux lettres. Le BIN d'une carte est comparé à ses six premiers chiffres. Une entrée de plus de six chiffres ne correspond donc jamais.
reasonstringfacultatif
Jusqu'à 500 caractères, à votre intention. La décision enregistre cette valeur comme motif.

Une entrée country est comparée au pays de l'adresse IP du payeur, pas à son numéro de téléphone ni à sa devise. Bloquer NG arrête tous les paiements effectués depuis une adresse IP nigériane, y compris ceux de vos propres clients nigérians qui se trouvent dans le pays.

La liste s'applique uniquement lorsqu'elle est activée

Une entrée dans la liste de blocage ne produit aucun effet si blocklist_enabled ne vaut pas true dans vos paramètres. L'ajout d'une entrée depuis le Dashboard l'active automatiquement. L'ajout par l'API ne le fait pas.

La liste de blocage est la seule partie de cette page qui possède une API.

POSThttps://api.wajub.com/shield/blocklist

Le type et la valeur sont obligatoires. Vous pouvez renseigner le motif, qui sera enregistré dans la décision lorsque l'entrée correspond.

Bloquer un numéro
curl https://api.wajub.com/shield/blocklist \
  -H "Authorization: sk.kZ3qP8mWvL2xR7tB5nY4hC6dF9jS1aG0eU3i…" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "phone",
    "value": "+237690000000",
    "reason": "confirmed fraud, chargeback March"
  }'

La liste complète est renvoyée après chaque écriture. Vous n'avez donc pas besoin d'un second appel pour consulter le résultat.

La liste d'autorisation

Il n'existe aucune table de liste d'autorisation. Un client autorisé correspond à une règle classique avec l'action allow. Le Dashboard en écrit une lorsque vous clôturez un examen avec allow this customer : une règle par identifiant, à la priorité 0 pour passer avant toutes les autres, et une correspondance exacte avec l'adresse e-mail ou avec les chiffres du téléphone.

Vous pouvez créer la même règle manuellement. Gardez-la tout aussi précise. Une règle allow avec contains au lieu de eq autoriserait x-attacker@mail.com en même temps que attacker@mail.com.

Ce qu'une règle ne peut pas faire

Elle ne peut pas consulter le score. Le catalogue ne contient aucun champ de score de risque. Vous ne pouvez donc pas écrire « bloquer les premières transactions dont le score dépasse 60 ». Les seuils sont le seul moyen d'agir sur le score.

Elle ne peut pas combiner les conditions avec OR. Toutes les conditions d'une règle doivent être remplies. Deux possibilités nécessitent deux règles.

Elle ne peut pas lire vos métadonnées. Aucun élément envoyé avec le paiement n'est visible dans une règle, à l'exception du montant, de la devise, du canal, de l'adresse e-mail et du téléphone du client.

Elle ne peut pas sortir un paiement de la liste de blocage. Cette décision correspond à l'étape 2 ci-dessus et est prise avant même la lecture des règles.

Que pensez-vous de ce contenu ?