בדף הזה מוסבר איך להשתמש ב"הגנה על עסקאות" כדי להגן ביעילות על עסקאות תשלום מפני מתקפות, כמו הונאה בכרטיסי אשראי, הונאה באמצעי תשלום גנוב ושימוש לרעה באמצעי תשלום באמצעות השתלטות על החשבון.
התכונה "הגנה על עסקאות" עוזרת לכם להגן על עסקאות תשלום על ידי זיהוי של מתקפות ידניות ממוקדות וניסיונות הונאה בקנה מידה נרחב. הוא מאמן באופן אוטומטי מודלים של התנהגות ועסקאות כדי לזהות אירועים שסביר להניח שמקורם בתרמית, ושאם הם יאושרו, הם עלולים להוביל למחלוקת או להחזר כספי בעקבות ביטול עסקה.
במסגרת המודלים האלה, התכונה "הגנה על עסקאות" בודקת אותות של עסקאות כדי לזהות מתקפות של הונאות בכרטיסי אשראי וביטולי עסקאות. לדוגמה, סדרה של ניסיונות רכישה עם מחיר הרצפה עשויה להצביע על מתקפת הונאה בכרטיסי אשראי. בתגובה, תקבלו חישוב של ציון סיכונים לסוגים שונים של הונאה, שתוכלו להשתמש בהם כדי לשלוח את העסקה לבדיקה ידנית, או לחסום ישירות עסקאות חשודות מספיק.
כדי להגדיר את "הגנה על עסקאות":
מפעילים את התכונה "הגנה על עסקאות" בפרויקט ב- Google Cloud .
שולחים בקשת API של
create assessmentמה-backend עם נתוני העסקאות, באמצעות השילוב של ממשק המשתמש או השילוב של ה-API בלבד שנבחר קודם.בתגובה לבקשת ה-API של
create assessment, מערכת reCAPTCHA מספקת ניקוד לסיכון בעסקה וסיבות נוספות להסבר (לדוגמה,HIGH_TRANSACTION_VELOCITY), אם רלוונטי.קובעים את הפעולה הבאה של המשתמשים על סמך הניקוד.
אתם יכולים לאשר את העסקה, לבקש אימות נוסף, להעביר אותה לבדיקה ידנית או לחסום אותה.
לפני שמתחילים
אם אתם משתמשים חדשים ב-reCAPTCHA, בצעו את הפעולות הבאות:
אם אתם מתכננים שילוב של ממשק קצה, ודאו שהסביבה שלכם תומכת באסימונים שגדולים מ-8KB, כי יכול להיות שההגנה על עסקאות תשתמש באסימונים גדולים יותר.
הפעלת ההגנה על עסקאות
נכנסים לדף reCAPTCHA במסוף Google Cloud .
מוודאים ששם הפרויקט מופיע בבורר המשאבים.
אם שם הפרויקט לא מופיע, לוחצים על בורר המשאבים ובוחרים את הפרויקט.
לוחצים על הגדרות.
בחלונית הגנה על עסקאות, לוחצים על Configure.
לוחצים על המתג הפעלה ואז על שמירה.
בחירת שיטת שילוב
בוחרים באפשרות שילוב של ממשק משתמש כדי לשלב באופן אוטומטי אותות ממכשיר ממשק המשתמש, או באפשרות שילוב של API בלבד אם אתם מעדיפים לא לשלב בממשק המשתמש.
כשה-JavaScript מופעל, reCAPTCHA יוצר טוקן ייחודי לכל סשן של משתמש ואוסף נתוני התנהגות של המשתמש כדי להעריך אותו.
השילוב של API בלבד מחזיר החלטה רק על סמך נתוני העסקה הנדרשים, ולא דורש את האסימון הזה.
שילוב של ממשק קצה – הטמעת reCAPTCHA באתר
שימוש ב"הגנה על עסקאות" עם שילוב של reCAPTCHA בממשק הקצה עוזר להגן מפני התקפות של הונאות בכרטיסי אשראי ועסקאות שמקורן בתרמית. כדי להתחיל לזהות מתקפות, צריך להתקין מפתח reCAPTCHA מבוסס-ניקוד בכל דף במסלול המשתמש לתשלום. זה כולל את הממשק שבו המשתמש בודק את עגלת הקניות, בוחר את אמצעי התשלום ומשלים את הרכישה.
אחרי שהמשתמש בוחר אפשרות בכל שלב, שולחים קריאה ל-grecaptcha.enterprise.execute() כדי ליצור טוקן. במאמר התקנת מפתחות מבוססי-ניקוד מוסבר איך להתקין מפתחות מבוססי-ניקוד ולקרוא ל-execute().
בדוגמה הבאה אפשר לראות איך לשלב מפתח מבוסס-ניקוד באירוע של עסקה בכרטיס אשראי:
function submitForm() {
grecaptcha.enterprise.ready(function() {
grecaptcha.enterprise.execute(
'reCAPTCHA_site_key', {action: 'purchase'}).then(function(token) {
document.getElementById("token").value = token;
document.getElementByID("paymentForm").submit();
});
});
}<form id="paymentForm" action="?" method="POST"> Total: $1.99 Credit Card Number: <input name="cc-number" id="cc-number" autocomplete="cc-number"><br/> <input type="hidden" id="token" name="recaptcha_token"/> <button onclick="submitForm()">Purchase</button> </form>
<script src="https://www.google.com/recaptcha/enterprise.js"></script>
אתם יכולים להתנסות עם הקוד הזה ב-JSFiddle. כדי לעשות את זה, לוחצים על הסמל <> בפינה השמאלית העליונה של חלון הקוד.
<html>
<head>
<title>Protected Payment</title>
<script src="https://www.google.com/recaptcha/enterprise.js"></script>
<script>
function submitForm() {
grecaptcha.enterprise.ready(function() {
grecaptcha.enterprise.execute(
'reCAPTCHA_site_key', {action: 'purchase'}).then(function(token) {
document.getElementById("token").value = token;
document.getElementByID("paymentForm").submit();
});
});
}
</script>
</head>
<body>
<form id="paymentForm" action="?" method="POST">
Total: $1.99
Credit Card Number: <input name="cc-number" id="cc-number" autocomplete="cc-number"><br/>
<input type="hidden" id="token" name="recaptcha_token"/>
<button onclick="submitForm()">Purchase</button>
</form>
</body>
</html>שילוב של ממשק משתמש – יצירת הערכות עם נתוני עסקאות
כדי לקבל החלטות לגבי שימוש לרעה באמצעי תשלום, צריך ליצור הערכות עם נתוני עסקאות באמצעות השדות הנוספים ב-method projects.assessments.create.
כדי לקבל הערכה של "הגנה על עסקאות" עם שילוב של ממשק קצה, צריך לספק לפחות אחד משדות המזהים הנדרשים הבאים:
- נתוני עסקאות
cardBinו-cardLastFour. - משתמש
accountId - משתמש
email - משתמש
phoneNumber
כדי לשפר את איכות הזיהוי, מומלץ להוסיף שדות אופציונליים כמו payment_method, email, phone_number ו-billing_address.
{ "event": { "token": "YOUR_TOKEN", "site_key": "KEY_ID", "expected_action": "YOUR_CHECKOUT_ACTION_NAME", "transaction_data": { "transaction_id": "txid-1234567890", "payment_method": "credit-card", "card_bin": "411111", "card_last_four": "1234", "currency_code": "USD", "value": 39.98, "user": { "email": "someEmailAddress@example.com" }, "billing_address": { "recipient": "name1 name2", "address": [ "123 Street Name", "Apt 1" ], "locality": "Sunnyvale", "administrative_area": "CA", "region_code": "US", "postal_code": "123456" } } } }
כדי לשפר את איכות הניקוד, מומלץ לשלוח גם אותות נוספים.
במאמר יצירת הערכה לאתר מוסבר איך יוצרים הערכות. יכול להיות שההגנה על עסקאות תשתמש באסימונים גדולים יותר, לכן ודאו שהבקשה נשלחת בבקשת POST ולא ב-GET, ובגוף ולא בכותרת.
שילוב API בלבד – יצירת הערכות עם נתוני עסקאות
כדי לקבל החלטות לגבי שימוש לרעה באמצעי תשלום, צריך ליצור הערכות עם נתוני עסקאות באמצעות השדות הנוספים ב-method projects.assessments.create.
מכיוון ששילוב של reCAPTCHA API-only יוצר הערכה של הגנה על עסקאות באמצעות נתוני העסקאות שאתם מספקים בלבד, אתם חייבים לספק לפחות את הפרטים הבאים:
- כתובת לחיוב
regionCodeו-postalCode. - נתוני עסקאות
paymentMethod. - אחד מהפרטים הבאים:
- נתוני עסקאות
cardBinו-cardLastFour. - משתמש
accountId - משתמש
email - משתמש
phoneNumber
- נתוני עסקאות
{ "event": { "site_key": "KEY_ID", "expected_action": "YOUR_CHECKOUT_ACTION_NAME", "transaction_data": { "transaction_id": "txid-1234567890", "payment_method": "credit-card", "card_bin": "411111", "card_last_four": "1234", "currency_code": "USD", "value": 39.98, "user": { "account_id": "abcde12345", "email": "someEmailAddress@example.com", "phone_number": "+18005550175" }, "billing_address": { "recipient": "name1 name2", "address": [ "123 Street Name", "Apt 1" ], "locality": "Sunnyvale", "administrative_area": "CA", "region_code": "US", "postal_code": "123456" } } } }
כדי לשפר את איכות הציונים, מומלץ לספק כמה שיותר קלט, וגם לשלוח אותות נוספים.
פירוש ההערכות
אחרי שמתחילים לשלוח את נתוני העסקאות, מקבלים את ההערכות כתגובת JSON עם הרכיב fraudPreventionAssessment בתגובה של Assessment.
הדוגמה הבאה היא תגובה לדוגמה:
{ "event": {.... .... } ..... .... .... "fraudPreventionAssessment": { "transactionRisk": 0.9, "riskReasons": [ { "reason": "HIGH_TRANSACTION_VELOCITY" } ] } }
התשובה שתקבלו כוללת ניקוד וקודי סיבה, אם רלוונטי. ככל שהציון גבוה יותר, כך גדל הסיכוי שהעסקה היא תרמית ומסוכנת. ככל שהציון נמוך יותר, כך גדל הסיכוי שהעסקה לגיטימית. לדוגמה, ציון של 0.9 מצביע על כך שסביר יותר שהעסקה היא תרמית ומסוכנת, וציון של 0.1 מצביע על כך שסביר יותר שהעסקה לגיטימית.
הפעולות שאתם מבצעים על סמך ההערכה הן באחריותכם.
כדי להשתמש בשילוב הפשוט ביותר, אתם יכולים להגדיר ערכי סף ב-transactionRisk שיעזרו לכם לקבל החלטה. לדוגמה, הוא יכול לעזור לשלוח לבדיקה ידנית או לדחות ישירות עסקאות שסביר להניח שמקורן בתרמית.
אתם יכולים גם להשתמש בניקוד בתהליכי העבודה שלכם למניעת הונאות, או כחלק מהכללים במערכת הקיימת שלכם. מכיוון ש-reCAPTCHA בודק אותות ייחודיים ויש לו חשיפה ייחודית להתנהגות באינטרנט, אתם יכולים לצפות לערך מצטבר גם עם מנוע זיהוי הונאות שכבר פועל.
כל קבוצת ציונים מכוילת לשיעור מקסימלי של תוצאות חיוביות מוטעות, שמייצג את השיעור המקסימלי של משתמשים לגיטימיים שעלולים לחוות חיכוך נוסף. הסף שצריך לבחור תלוי בצרכים של העסק. הנה כמה דוגמאות לשימוש בציון של transactionRisk:
| סבילות לסיכון | הסף המומלץ | שיעור מקסימלי של תוצאות חיוביות כוזבות | דוגמה לשימוש |
|---|---|---|---|
| נמוכה | 0.5 | 5% | לדרוש אימות נוסף, כמו אימות דו-שלבי, לפני אישור העסקה |
| בינוני | 0.7 | 1% | שליחת העסקה לבדיקה ידנית |
| גבוהה | 0.9 | 0.1% | דחיית העסקה |
המאמרים הבאים
- כדי לשפר את איכות הזיהוי של הונאות, כדאי לקרוא על אותות נוספים.
- כדי להוסיף הערות להערכות, קראו את המאמר הוספת הערות להערכות באמצעות אירועי עסקאות.