Sahtekarlığı önleme sinyalleri
Google, SubmitOrderRequest
numaralı telefonu gönderdiğimizde müşteriyle ilgili ek bilgiler sağlayabilir. Entegrasyonunuzda sahte işlemleri önlemek için bu bilgileri kullanabilirsiniz.
Sahtekarlığı önleme sinyallerini okuma
Projeniz sahtekarlık önleme ek sinyalleri alacak şekilde etkinleştirildiğinde SubmitOrderRequest
başlıkları Google'ın sunucuları yerine kullanıcı istemcisi hakkında bilgi içerir. İstek başlıkları aşağıdaki bilgileri içerir:
IP adresi: Kullanıcı istemcisinin IP adresi,
x-forwarded-for
alanında ilk IP olarak bulunur. Bu adres, kullanıcı istemcisinin yapılandırması tarafından belirlenen IPV4 veya IPV6 biçimindedir.Kullanıcı aracısı: Kullanıcı aracısı dizesi,
user-agent
alanında "Google-ActionsOnGoogle/1.0" son ekiyle depolanır. Kullanıcının cihazına ve sesle sipariş verip vermediğine bağlı olarak bu alanın doldurulmayabileceğini unutmayın.
Aşağıda, sahtekârlığı önleme etkinleştirildiğinde SubmitOrderRequest
HTTP üst bilgisinin snippet'ini görebilirsiniz:
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
Kullanıcı istemcisi bilgileri, sahtekarlığı önlemeniz için yeterli değilse alternatif çözümleri görüşmek üzere Google temsilcinizle iletişime geçin.
Sipariş karşılama sırasında sahte işlemler nasıl ele alınır?
Kullanıcının IP adresine ve SubmitOrderRequest
içinde sağlanan kullanıcı aracısı bilgilerine dayanarak işlemin yasal olup olmadığını belirlemek için dahili sahtekarlığı önleme algoritmanızı kullanın.
İşlemin sahte olduğunu düşünüyorsanız SubmitOrderResponseMessage
içinde uygun bir hata açıklamasıyla birlikte REJECTED
orderState
ve INELIGIBLE
rejectionInfo
ile yanıt verin.
İşlem yasal görünüyorsa siparişi normal şekilde işleyin.
Fatura adresi doğrulaması
Sahtekarlığı azaltmak amacıyla, fatura adresini PSP'nize gönderilen ödeme işlemi isteğine ekleyebilirsiniz. billingAddress, SubmitOrderRequestMessage
içinde döndürülür.
- Kullanıcının fatura adresini girmesini zorunlu kılmak için ödeme yanıtında CardParameters.billingAddressRequired değerini
true
olarak ayarlayın. - Gerekli alanları tanımlamak için CardParameters.billingAddressParameters alanını ayarlayın. Kullanıcılarla yaşanabilecek zorlukları azaltmak için
{"format":"MIN"}
özelliğinin ayarlanması önerilir. - PSP'nizle yapılan ödeme işleminin bir parçası olarak doğrulama için tam billingAddress adresini veya yalnızca billingAddress.postalCode'u ekleyin.
Örnek 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\"}}}]}" }
PSP, adresin veya posta kodunun yanlış olduğu yanıtı verirse benzer bir örnek SubmitOrderResponseMessage
yanıtı döndürmeniz gerekir.
Örnek yanıt
{ "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" } } } ] } } } ] } } }
PAYMENT_DECLINED
rejectionInfo türünün döndürülmesi bir mesaj görüntüler ve kullanıcının fatura adresini güncellemesine veya başka bir ödeme yöntemi seçmesine olanak tanır. PAYMENT_DECLINED
hata, Sipariş Hata Uyarıları Gönder bölümünde hariç tutulur.