# Étapes de détection de la fraude

Comprendre les étapes de détection de la fraude, un niveau de vérification supplémentaire pour les autorisations.

Activez les étapes de détection de la fraude pour&nbsp;:

- Minimiser le blocage accidentel des transactions qui semblent frauduleuses, mais qui sont en fait légitimes
- Effectuer des vérifications supplémentaires sur les autorisations que Stripe juge à haut risque
- Effectuer des vérifications supplémentaires sur les autorisations que vous jugez nécessaires

Les étapes de détection de la fraude permettent aux titulaires de carte de relancer des transactions non frauduleuses qui, sans cette fonctionnalité, auraient été bloquées par des contrôles de fraude. Lorsque les étapes de détection de la fraude sont activées et qu’une transaction est refusée pour cause de fraude, Stripe envoie un SMS au titulaire de la carte. Celui-ci peut alors confirmer le caractère frauduleux ou légitime de la transaction en répondant au message. Tous les titulaires de carte ayant associé un numéro de téléphone peuvent utiliser les étapes de détection de la fraude.

## Before you begin

- Veillez à collecter les [numéros de téléphone](https://docs.stripe.com/api/issuing/cardholders/object.md#issuing_cardholder_object-phone_number) de vos titulaires de carte
- Activez les étapes de détection de la fraude dans les [paramètres d’émission de cartes](https://dashboard.stripe.com/settings/issuing/authorizations)

## Transactions à haut risque

Stripe bloque les transactions à partir d’un certain niveau de risque. Le niveau de risque d’une transaction est déterminé par le réseau que vous utilisez. Les autorisations à haut risque sont identifiées par une valeur de `suspected_fraud` dans le champ [request_history.reason](https://docs.stripe.com/api/issuing/authorizations/object.md#issuing_authorization_object-request_history-reason), et ne déclencheront pas les [webhooks `issuing.authorization_request`](https://docs.stripe.com/issuing/controls/real-time-authorizations.md) en cas de refus.

## Flux des étapes de détection de la fraude

Stripe commence à envoyer des étapes de détection de la fraude sur les autorisations à risque élevé dès que vous activez la fonctionnalité dans les [paramètres d’émission de cartes](https://dashboard.stripe.com/settings/issuing/authorizations).

Consultez l’activité relative aux étapes de détection de la fraude à l’aide de l’[API&nbsp;Authorizations](https://docs.stripe.com/api/issuing/authorizations.md). Les autorisations refusées en raison d’une étape de détection de la fraude présentent une valeur dans le champ [fraud_challenges](https://docs.stripe.com/api/issuing/authorizations/object.md#issuing_authorization_object-fraud_challenges). Les autorisations suivantes, dont le titulaire de la carte vérifie la légitimité, présentent la valeur `true` dans le champ [verified_by_fraud_challenge](https://docs.stripe.com/api/issuing/authorizations/object.md#issuing_authorization_object-verified_by_fraud_challenge).

Voici un exemple d’autorisation bloquée et refusée pour cause de fraude&nbsp;:

```json
{
  "id": "iauth_1CmMk2IyNTgGDVfzFKlCm0gU",
  "object": "issuing_authorization",
  "approved": false,
  ..."fraud_challenges": [{
    "channel": "sms",
    "status": "pending"
  }]
}
```

Cet exemple illustre une autorisation ultérieure qui a été vérifiée par le titulaire de la carte&nbsp;:

```json
{
  "id": "iauth_1CmMk28Jx923VfJJwMCejmX",
  "object": "issuing_authorization",
  "approved": true,
  ..."verified_by_fraud_challenge": true
}
```

> Les autorisations légitimes et vérifiées déclenchent des webhooks `issuing_authorization.request`. Si vous utilisez une [autorisation en temps réel](https://docs.stripe.com/issuing/controls/real-time-authorizations.md), tenez compte du paramètre `verified_by_fraud_challenge` au moment d’approuver ou non une autorisation. Si le titulaire de carte a explicitement confirmé l’authenticité d’une transaction, nous vous recommandons de n’appliquer aucun de vos propres contrôles des risques.

Pour utiliser les étapes de détection de la fraude, assurez-vous que&nbsp;:

- Le numéro de téléphone associé à votre titulaire de carte est valide et correct
- La logique de refus de transaction existante dans tout gestionnaire de webhook `issuing_authorization.request` n’entre pas en conflit avec les étapes de détection de la fraude

### Flux pour les titulaires de carte

Vos titulaires de carte peuvent recevoir une étape de détection de la fraude et contacter le service client de votre entreprise pour en savoir plus. Par conséquent, vos équipes internes doivent se tenir prêtes à répondre aux éventuelles questions de vos clients au sujet de ces étapes de détection.

Lorsqu’un titulaire de carte reçoit une étape de détection de la fraude, il peut annuler le rejet de la transaction en vérifiant que l’opération suspecte est légitime et qu’il en est l’auteur. Les étapes de détection de la fraude sont uniquement disponibles pour les titulaires de carte ayant associé un [numéro de téléphone](https://docs.stripe.com/api/issuing/cardholders/object.md#issuing_cardholder_object-phone_number).

Le titulaire de la carte reçoit ce SMS l’invitant à confirmer l’annulation&nbsp;:

> Avez-vous tenté d’effectuer une transaction de *[montant]* chez *[marchand]*&nbsp;? Si oui, répondez «&nbsp;OUI&nbsp;», sinon répondez «&nbsp;NON&nbsp;». Pour vous désinscrire, répondez «&nbsp;STOP&nbsp;».

Si le titulaire de la carte répond «&nbsp;OUI&nbsp;», il reçoit le message suivant&nbsp;:

> Merci, veuillez patienter quelques instants et réessayer.

Pour finaliser l’achat, le titulaire de la carte doit retenter la transaction. Une fois l’opération réalisée, il ne recevra pas d’invitation par SMS, et Stripe ne bloquera pas la transaction pour risque élevé. En revanche, si le titulaire de la carte répond «&nbsp;NON&nbsp;», il reçoit le message suivant&nbsp;:

> Cette transaction a été refusée. Nous vous recommandons d’annuler votre carte et d’en demander une nouvelle. Vérifiez que votre compte ne fait pas l’objet d’autres transactions suspectes.

Si le titulaire de la carte répond «&nbsp;NON&nbsp;», Stripe envoie automatiquement un rapport de fraude au réseau.

Les titulaires de cartes peuvent répondre «&nbsp;STOP&nbsp;» pour se désinscrire des étapes de détection de la fraude et «&nbsp;START&nbsp;» pour s’y réinscrire.

Le diagramme suivant illustre le flux ci-dessus.
Ce diagramme de séquence est un test. (See full diagram at https://docs.stripe.com/issuing/controls/fraud-challenges)
## Les étapes de détection de la fraude pour les plateformes Connect

Si vous utilisez [Connect](https://docs.stripe.com/issuing/connect.md) avec Stripe Issuing, et que vous activez les étapes de détection de la fraude, elles seront activées pour tous les titulaires de cartes sur tous les comptes connectés.

## Disponibilité

Les étapes de détection de la fraude sont uniquement disponibles pour les titulaires de carte dont le numéro de téléphone correspond aux pays suivants. Les demandes de vérification envoyées à d’autres numéros de téléphone, ou à des titulaires de carte se trouvant en dehors de ces pays, n’aboutiront pas.

- GB
- US

Les étapes de détection de la fraude qui ne peuvent être envoyées en raison d’un code de pays non pris en charge ont un [statut](https://docs.stripe.com/api/issuing/authorizations/object.md#issuing_authorization_object-fraud_challenges-status) `undeliverable`.

## Tester les étapes de détection de la fraude

Stripe n’envoie pas de questions de détection de la fraude aux titulaires de cartes en mode test. Pour vous aider à intégrer les étapes de détection de la fraude, nous fournissons des API de support, qui simulent un flux de détection de la fraude, notamment l’envoi d’une question et de sa réponse.

## Détecter la fraude sur une autorisation à haut risque de test

Utilisez les API de support pour [créer une autorisation en mode test](https://docs.stripe.com/api/issuing/authorizations/test_mode_create.md). Le niveau de risque de l’autorisation que vous créez est contrôlable&nbsp;: vous pouvez créer une autorisation à haut risque en remplaçant l’évaluation du risque par défaut par un niveau de risque de fraude élevé.

```curl
curl https://api.stripe.com/v1/test_helpers/issuing/authorizations \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d amount=2300 \
  -d "card={{ISSUINGCARD_ID}}" \
  -d "risk_assessment[fraud_risk][risk_level]=high" \
  -d "risk_assessment[fraud_risk][fraud_score]=95"
```

Cette autorisation serait refusée, avec un `motif` `suspected_fraud` dans son [request_history](https://docs.stripe.com/api/issuing/authorizations/object.md#issuing_authorization_object-request_history). Si les contrôles antifraude sont activés, un contrôle antifraude est créé pour cette autorisation de test à haut risque. Consultez la section [Avant de commencer](https://docs.stripe.com/issuing/controls/fraud-challenges.md#fraud-challenge-flow) pour connaître les étapes nécessaires à l’activation des contrôles antifraude.

Vous pouvez également tester le flux de détection de la fraude en émettant une étape de détection. Pour générer une étape de détection de la fraude de test, créez une autorisation de test sans contourner l’évaluation des risques, puis répondez à un webhook `issuing_authorization.request`. Cette méthode fonctionne même si le flux de détection de la fraude n’est pas activé dans vos paramètres Issuing. Découvrez comment [déclencher des étapes de détection de la fraude](https://docs.stripe.com/issuing/controls/fraud-challenges.md#define-your-own-logic) dans les réponses de webhook.

## Simuler une réponse au flux de détection de la fraude

Après avoir provoqué une étape de détection de la fraude en mode test, vous pouvez simuler la réponse d’un titulaire de carte à l’aide d’une autre API de support. Appelez la méthode de [réponse à une étape de détection de la fraude en mode test](https://docs.stripe.com/api/issuing/authorization/respond.md) en lui transmettant l’ID de l’autorisation que vous avez créée à l’étape&nbsp;1, ainsi qu’un paramètre `confirmed`.

Utilisez le paramétrage `confirmed=true` pour simuler une réponse du titulaire de la carte du type «&nbsp;oui, j’ai effectué cette transaction et elle n’est pas frauduleuse&nbsp;». Paramétrez `confirmed=false` pour simuler une réponse du type «&nbsp;non, je n’ai pas effectué cette transaction, elle est frauduleuse&nbsp;».

```curl
curl https://api.stripe.com/v1/test_helpers/issuing/authorizations/{{ISSUINGAUTHORIZATION_ID}}/fraud_challenges/respond \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d confirmed=true
```

Un rapport de fraude n’est pas soumis au réseau dans un environnement de test lorsque vous définissez `confirmed=false`.

## Réessayer l'autorisation à haut risque

Si vous avez simulé une réponse du type «&nbsp;oui, j’ai effectué cette transaction&nbsp;» (`confirmed=true`), vous pouvez alors réessayer l’autorisation à haut risque en mode test. Cette fois-ci, l’autorisation ne sera pas refusée, car vous avez simulé un scénario dans lequel le titulaire de la carte indique que la transaction initialement refusée est en fait légitime.

```curl
curl https://api.stripe.com/v1/test_helpers/issuing/authorizations \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d amount=2300 \
  -d "card={{ISSUINGCARD_ID}}" \
  -d "risk_assessment[fraud_risk][risk_level]=high" \
  -d "risk_assessment[fraud_risk][fraud_score]=95"
```

Cette nouvelle autorisation ne sera pas refusée pour `suspected_fraud`. Elle pourra soit être approuvée, soit être refusée pour un autre motif (comme un solde insuffisant en mode test). Consultez l’objet [request_history](https://docs.stripe.com/api/issuing/authorizations/object.md#issuing_authorization_object-request_history) de l’autorisation pour en savoir plus.

En outre, le champ [verified_by_fraud_challenge](https://docs.stripe.com/api/issuing/authorizations/object.md#issuing_authorization_object-verified_by_fraud_challenge) de cette nouvelle autorisation sera `true`. Cela indique que le titulaire de la carte a déjà effectué une étape de détection de fraude pour une autorisation similaire (comme simulé à l’étape&nbsp;2).
