Prevenzione delle attività fraudolente

Indicatori di prevenzione delle frodi

Google può fornire ulteriori informazioni sul cliente quando invia SubmitOrderRequest. Puoi utilizzare queste informazioni per prevenire attività fraudolente transazioni nella tua integrazione.

Come leggere gli indicatori di prevenzione delle frodi

Se il progetto è abilitato a ricevere ulteriori indicatori di prevenzione delle frodi, Le intestazioni SubmitOrderRequest conterranno informazioni sul client utente anziché sui server di Google. Le intestazioni delle richieste conterranno informazioni:

  • Indirizzo IP: l'indirizzo IP del client utente è disponibile come primo IP nel campo x-forwarded-for. Questo indirizzo è in IPV4 o IPV6 in base a quanto determinato dalla configurazione del client utente.

  • User agent: la stringa dello user agent viene memorizzata nel campo user-agent. con un modello "Google- ActionsOnGoogle/1.0" suffisso. Tieni presente che questo campo potrebbe non vengono compilate a seconda del dispositivo dell'utente e se ha effettuato un ordine la voce.

Di seguito è riportato uno snippet dell'intestazione HTTP SubmitOrderRequest durante la prevenzione delle attività fraudolente è abilitato:

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

Se i dati del cliente dell'utente non sono sufficienti per eseguire attività fraudolente prevenzione, rivolgiti al tuo contatto Google per discutere di soluzioni alternative.

Come gestire le transazioni fraudolente durante l'evasione dell'ordine

In base all'indirizzo IP dell'utente e alle informazioni sullo user agent fornite nella SubmitOrderRequest, utilizza il tuo algoritmo interno per la prevenzione delle frodi per determinare se la transazione è legittima.

Se la transazione sembra essere fraudolenta, rispondi con un orderState di REJECTED e un rejectionInfo di INELIGIBLE, insieme a un documento appropriato descrizione dell'errore in SubmitOrderResponseMessage.

Se la transazione sembra legittima, elabora l'ordine normalmente.

Convalida dell'indirizzo di fatturazione

Per ridurre le attività fraudolente, puoi includere l'indirizzo di fatturazione nella richiesta di pagamento una richiesta di transazione al PSP. billingAddress viene restituito nel SubmitOrderRequestMessage

di Gemini Advanced.

Esempio di 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\"}}}]}"
}

Se il PSP risponde che l'indirizzo o il codice postale non è corretto, restituiscono un esempio simile di risposta SubmitOrderResponseMessage.

Esempio di risposta

  {
    "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"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            ]
        }
    }
}
      

Se viene restituito il tipo rejectionInfo di PAYMENT_DECLINED, viene visualizzata una e consente all'utente di aggiornare l'indirizzo di fatturazione o di sceglierne un altro metodo di pagamento. PAYMENT_DECLINED errori sono esclusi in Errore di invio ordine Avvisi.