Prévention des fraudes

Signaux de prévention des fraudes

Google peut fournir des informations supplémentaires sur les clients lorsque nous envoyons SubmitOrderRequest Vous pouvez utiliser ces informations pour éviter les fraudes des transactions dans votre intégration.

Interpréter les signaux de prévention des fraudes

Lorsque la réception d'autres signaux de prévention des fraudes est activée pour votre projet, le Les en-têtes SubmitOrderRequest contiendront des informations sur le client utilisateur au lieu des serveurs de Google. Les en-têtes de requête contiennent les éléments suivants : informations:

  • Adresse IP:l'adresse IP du client utilisateur est disponible en tant que première adresse IP IP dans le champ x-forwarded-for. Cette adresse est au format IPv4 ou IPv6 format déterminé par la configuration du client utilisateur.

  • User-agent:la chaîne user-agent est stockée dans le champ user-agent. avec un compte "Google-ActionsOnGoogle/1.0" . Notez que ce champ peut ne pas s'affichent selon l'appareil de l'utilisateur et selon qu'il a passé commande voix.

Vous trouverez ci-dessous un extrait de l'en-tête HTTP SubmitOrderRequest pour la prévention des fraudes. est activé:

X-Forwarded-For: 72.00.123.12,66.111.12.123, 169.254.1.1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36,gzip(gfe),gzip(gfe) Google-ActionsOnGoogle/1.0

Si les informations sur le client de l'utilisateur ne sont pas suffisantes pour vous permettre d'effectuer une fraude de prévention des maladies, contactez votre représentant Google pour discuter de solutions alternatives.

Gérer les transactions frauduleuses lors du traitement

D'après l'adresse IP de l'utilisateur et les informations sur le user-agent fournies dans les SubmitOrderRequest, utilisez votre algorithme interne de prévention des fraudes pour déterminer si la transaction est légitime.

Si la transaction semble frauduleuse, répondez en envoyant un orderState de REJECTED et rejectionInfo de INELIGIBLE, ainsi qu'une propriété description de l'erreur dans SubmitOrderResponseMessage.

Si la transaction semble légitime, traitez la commande normalement.

Validation de l'adresse de facturation

Afin de limiter la fraude, vous pouvez inclure l'adresse de facturation dans le paiement. de transaction à votre PSP. L'élément billingAddress est renvoyé dans le SubmitOrderRequestMessage

Exemple de googleProvidedPaymentOptions:

{
  "facilitationSpecification": "{\"apiVersion\":2,\"apiVersionMinor\":0,\"merchantInfo\":{\"merchantId\":\"Merchant ID\",\"merchantName\":\"Merchant Name\"},\"allowedPaymentMethods\":[{\"type\":\"CARD\",\"parameters\":{\"allowedAuthMethods\":[\"PAN_ONLY\"],\"allowedCardNetworks\":[\"VISA\",\"AMEX\",\"MASTERCARD\"],\"billingAddressRequired\":true,\"billingAddressParameters\":{\"format\":\"MIN\"}},\"tokenizationSpecification\":{\"type\":\"PAYMENT_GATEWAY\",\"parameters\":{\"gateway\":\"stripev2\",\"gatewayMerchantId\":\"stripe_pk_live_key\"}}}]}"
}

Si le PSP répond que l'adresse ou le code postal est incorrect, vous devez renvoient un exemple de réponse SubmitOrderResponseMessage similaire.

Exemple de réponse

  {
    "expectUserResponse": false,
    "finalResponse": {
        "richResponse": {
            "items": [
                {
                    "structuredResponse": {
                        "orderUpdate": {
                            "actionOrderId": "sample_action_order_id",
                            "orderState": {
                                "state": "REJECTED",
                                "label": "Order rejected"
                            },
                            "updateTime": "2017-05-10T02:30:00.000Z",
                            "rejectionInfo": {
                                "type": "PAYMENT_DECLINED",
                                "reason": "Invalid zipcode"
                            },
                            "orderManagementActions": [
                                {
                                    "type": "CUSTOMER_SERVICE",
                                    "button": {
                                        "title": "Contact customer service",
                                        "openUrlAction": {
                                            "url": "mailto:support@example.com"
                                        }
                                    }
                                },
                                {
                                    "type": "EMAIL",
                                    "button": {
                                        "title": "Email restaurant",
                                        "openUrlAction": {
                                            "url": "mailto:person@example.com"
                                        }
                                    }
                                },
                                {
                                    "type": "CALL",
                                    "button": {
                                        "title": "Call restaurant",
                                        "openUrlAction": {
                                            "url": "tel:+16505554679"
                                        }
                                    }
                                },
                                {
                                    "type": "VIEW_DETAILS",
                                    "button": {
                                        "title": "View order",
                                        "openUrlAction": {
                                            "url": "https://orderview.partner.com?orderid=sample_action_order_id"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            ]
        }
    }
}
      

Le fait de renvoyer le type rejectionInfo PAYMENT_DECLINED affiche une et permet à l'utilisateur de mettre à jour l'adresse de facturation ou d'en choisir une autre mode de paiement. PAYMENT_DECLINED erreurs sont exclues de la section Erreur d'envoi de la commande Alertes.