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
- Imposta CardParameters.billingAddressRequired su
true
in la risposta al pagamento per richiedere all'utente di inserire il proprio indirizzo di fatturazione. - Imposta CardParameters.billingAddressParameters per definire il
campi obbligatori. Ti consigliamo di impostare
{"format":"MIN"}
per ridurre per gli utenti. - Includi il valore billingAddress completo o solo il codice billingAddress.postalCode per la convalida nell'ambito della transazione di pagamento con il tuo PSP.
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.