FraudLabs Pro (Independent Publisher) (#2233)

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload
This commit is contained in:
Troy Taylor 2022-12-22 16:45:08 -05:00 коммит произвёл GitHub
Родитель b93fafdefc
Коммит 9a1f1c9604
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
3 изменённых файлов: 953 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,898 @@
{
"swagger": "2.0",
"info": {
"title": "FraudLabs Pro",
"description": "FraudLabs Pro provides fraud prevention solution to protect the online businesses from payment frauds (also known as CNP frauds). It helps merchants to minimize their chargebacks or fraud losses. It also helps to increase the revenues by letting the legitimate buyers to smoothly complete the transactions while blocking the malicious fraudsters.",
"version": "1.0",
"contact": {
"name": "Troy Taylor",
"url": "https://www.hitachisolutions.com",
"email": "ttaylor@hitachisolutions.com"
}
},
"host": "api.fraudlabspro.com",
"basePath": "/v1/order/",
"schemes": [
"https"
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"paths": {
"/screen": {
"post": {
"responses": {
"200": {
"description": "default",
"schema": {
"type": "object",
"properties": {
"is_country_match": {
"type": "string",
"description": "Is country a match.",
"title": "Is Country Match"
},
"is_high_risk_country": {
"type": "string",
"description": "Is a high rick country.",
"title": "Is High Risk Country"
},
"ip_country": {
"type": "string",
"description": "The IP country.",
"title": "IP Country"
},
"ip_region": {
"type": "string",
"description": "The IP region.",
"title": "IP Region"
},
"ip_city": {
"type": "string",
"description": "The IP city.",
"title": "IP City"
},
"ip_continent": {
"type": "string",
"description": "The IP continent.",
"title": "IP Continent"
},
"ip_latitude": {
"type": "string",
"description": "The IP latitude.",
"title": "IP Latitude"
},
"ip_longitude": {
"type": "string",
"description": "The IP longitude.",
"title": "IP Longitude"
},
"ip_timezone": {
"type": "string",
"description": "The IP timezone.",
"title": "IP Timezone"
},
"ip_elevation": {
"type": "string",
"description": "The IP elevation.",
"title": "IP Elevation"
},
"ip_domain": {
"type": "string",
"description": "The IP domain.",
"title": "IP Domain"
},
"ip_mobile_mnc": {
"type": "string",
"description": "The IP mobile MNC.",
"title": "IP Mobile MNC"
},
"ip_mobile_mcc": {
"type": "string",
"description": "The IP mobile MCC.",
"title": "IP Mobile MCC"
},
"ip_mobile_brand": {
"type": "string",
"description": "The IP mobile brand.",
"title": "IP Mobile Brand"
},
"ip_netspeed": {
"type": "string",
"description": "The IP netspeed.",
"title": "IP Netspeed"
},
"ip_isp_name": {
"type": "string",
"description": "The IP ISP name.",
"title": "IP ISP Name"
},
"ip_usage_type": {
"type": "string",
"description": "The IP usage type.",
"title": "IP Usage Type"
},
"is_free_email": {
"type": "string",
"description": "Is free email.",
"title": "Is Free Email"
},
"is_disposable_email": {
"type": "string",
"description": "Is disposable email.",
"title": "Is Disposable Email"
},
"is_new_domain_name": {
"type": "string",
"description": "Is new domain name.",
"title": "Is New Domain Name"
},
"is_domain_exists": {
"type": "string",
"description": "Does domain exist.",
"title": "Is Domain Exists"
},
"is_proxy_ip_address": {
"type": "string",
"description": "Is proxy IP address.",
"title": "Is Proxy IP Address"
},
"is_bin_found": {
"type": "string",
"description": "Is Bin found.",
"title": "Is Bin Found"
},
"is_bin_country_match": {
"type": "string",
"description": "Is Bin country match.",
"title": "Is Bin Country Match"
},
"is_bin_prepaid": {
"type": "string",
"description": "Is Bin prepaid.",
"title": "Is Bin Prepaid"
},
"card_brand": {
"type": "string",
"description": "The card brand.",
"title": "Card Brand"
},
"card_type": {
"type": "string",
"description": "The card type.",
"title": "Card Type"
},
"card_issuing_bank": {
"type": "string",
"description": "The card issuing bank.",
"title": "Card Issuing Bank"
},
"card_issuing_country": {
"type": "string",
"description": "The card issuing country.",
"title": "Card Issuing Country"
},
"is_address_ship_forward": {
"type": "string",
"description": "Is address a shipping forward.",
"title": "Is Address Ship Forward"
},
"is_bill_ship_city_match": {
"type": "string",
"description": "Is bill ship city a match.",
"title": "Is Bill Ship City Match"
},
"is_bill_ship_state_match": {
"type": "string",
"description": "Is bill ship state a match.",
"title": "Is Bill Ship State Match"
},
"is_bill_ship_country_match": {
"type": "string",
"description": "Is bill ship country a match.",
"title": "Is Bill Ship Country Match"
},
"is_bill_ship_postal_match": {
"type": "string",
"description": "Is bill ship postal code a match.",
"title": "Is Bill Ship Postal Match"
},
"is_ip_blacklist": {
"type": "string",
"description": "Is IP blacklisted.",
"title": "Is IP Blacklist"
},
"is_email_blacklist": {
"type": "string",
"description": "Is email blacklisted.",
"title": "Is Email Blacklist"
},
"is_credit_card_blacklist": {
"type": "string",
"description": "Is credit card blacklisted.",
"title": "Is Credit Card Blacklist"
},
"is_device_blacklist": {
"type": "string",
"description": "Is device blacklisted.",
"title": "Is Device Blacklist"
},
"is_user_blacklist": {
"type": "string",
"description": "Is user blacklisted.",
"title": "Is User Blacklist"
},
"is_ship_address_blacklist": {
"type": "string",
"description": "Is ship address blacklisted.",
"title": "Is Ship Address Blacklist"
},
"is_phone_blacklist": {
"type": "string",
"description": "Is phone blacklisted.",
"title": "Is Phone Blacklist"
},
"is_disposable_phone_number": {
"type": "string",
"description": "Is disposable phone number.",
"title": "Is Disposable Phone Number"
},
"is_high_risk_username": {
"type": "string",
"description": "Is high risk username.",
"title": "Is High Risk Username"
},
"is_malware_exploit": {
"type": "string",
"description": "Is a malware exploit.",
"title": "Is Malware Exploit"
},
"is_export_controlled_country": {
"type": "string",
"description": "Is export controlled country.",
"title": "Is Export Controlled Country"
},
"user_order_id": {
"type": "string",
"description": "The user order identifier.",
"title": "User Order ID"
},
"user_order_memo": {
"type": "string",
"description": "The user order memo.",
"title": "User Order Memo"
},
"fraudlabspro_score": {
"type": "integer",
"format": "int32",
"description": "The FraudLabs Pro score.",
"title": "FraudLabs Pro Score"
},
"fraudlabspro_status": {
"type": "string",
"description": "The FraudLabs Pro status.",
"title": "FraudLabs Pro Status"
},
"fraudlabspro_id": {
"type": "string",
"description": "The FraudLabs Pro identifier.",
"title": "FraudLabs Pro ID"
},
"fraudlabspro_rules": {
"type": "string",
"description": "The FraudLabs Pro rules.",
"title": "FraudLabs Pro Rules"
},
"fraudlabspro_version": {
"type": "string",
"description": "The FraudLabs Pro version.",
"title": "FraudLabs Pro Version"
},
"fraudlabspro_error_code": {
"type": "string",
"description": "The FraudLabs Pro code.",
"title": "FraudLabs Pro Error Code"
},
"fraudlabspro_message": {
"type": "string",
"description": "The FraudLabs Pro message.",
"title": "FraudLabs Pro Message"
},
"fraudlabspro_credits": {
"type": "integer",
"format": "int32",
"description": "The FraudLabs Pro credits.",
"title": "FraudLabs Pro Credits"
}
}
}
}
},
"summary": "Screen order",
"description": "Screen an order transaction for payment fraud. This request will detect all possible fraud traits based on the input parameters supplied. The more input parameter supplied, the higher accuracy of fraud detection.",
"operationId": "ScreenPost",
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"type": "object",
"properties": {
"ip": {
"type": "string",
"description": "The IP address.",
"title": "IP"
},
"last_name": {
"type": "string",
"description": "The last name.",
"title": "Last Name"
},
"first_name": {
"type": "string",
"description": "The first name.",
"title": "First Name"
},
"bill_addr": {
"type": "string",
"description": "The bill address.",
"title": "Bill Address"
},
"bill_city": {
"type": "string",
"description": "The bill city.",
"title": "Bill City"
},
"bill_state": {
"type": "string",
"description": "The bill state.",
"title": "Bill State"
},
"bill_country": {
"type": "string",
"description": "The bill country.",
"title": "Bill Country"
},
"bill_zip_code": {
"type": "string",
"description": "The bill zip code.",
"title": "Bill Zip Code"
},
"ship_last_name": {
"type": "string",
"description": "The ship last name.",
"title": "Ship Last Name"
},
"ship_first_name": {
"type": "string",
"description": "The ship first name.",
"title": "Ship First Name"
},
"ship_addr": {
"type": "string",
"description": "The ship address.",
"title": "Ship Address"
},
"ship_city": {
"type": "string",
"description": "The ship city.",
"title": "Ship City"
},
"ship_state": {
"type": "string",
"description": "The ship state.",
"title": "Ship State"
},
"ship_country": {
"type": "string",
"description": "The ship country.",
"title": "Ship Country"
},
"ship_zip_code": {
"type": "string",
"description": "The ship zip code.",
"title": "Ship Zip Code"
},
"user_phone": {
"type": "string",
"description": "The user phone number.",
"title": "User Phone"
},
"email": {
"type": "string",
"description": "The email address.",
"title": "Email"
},
"email_hash": {
"type": "string",
"description": "The email hash.",
"title": "Email Hash"
},
"email_domain": {
"type": "string",
"description": "The email domain.",
"title": "Email Domain"
},
"username": {
"type": "string",
"description": "The username.",
"title": "Username"
},
"bin_no": {
"type": "string",
"description": "The bin number.",
"title": "Bin Number"
},
"card_hash": {
"type": "string",
"description": "The card hash.",
"title": "Card Hash"
},
"avs_result": {
"type": "string",
"description": "The AVS result.",
"title": "AVS Result"
},
"cvv_result": {
"type": "string",
"description": "The CVV result.",
"title": "CVV Result"
},
"user_order_id": {
"type": "string",
"description": "The user order identifier.",
"title": "User Order ID"
},
"user_order_memo": {
"type": "string",
"description": "The user order memo.",
"title": "User Order Memo"
},
"amount": {
"type": "number",
"format": "float",
"description": "The amount.",
"title": "Amount"
},
"quantity": {
"type": "integer",
"format": "int32",
"description": "The quantity.",
"title": "Quantity"
},
"currency": {
"type": "string",
"description": "The currency.",
"title": "Currency"
},
"department": {
"type": "string",
"description": "The department.",
"title": "Department"
},
"payment_gateway": {
"type": "string",
"description": "The payment gateway.",
"title": "Payment Gateway"
},
"payment_mode": {
"type": "string",
"description": "The payment mode.",
"title": "Payment Mode",
"enum": [
"creditcard",
"affirm",
"paypal",
"googlecheckout",
"bitcoin",
"cod",
"moneyorder",
"wired",
"bankdeposit",
"elviauthorized",
"paymitco",
"cybersource",
"sezzle",
"viabill",
"amazonpay",
"pmnts_gateway",
"giftcard",
"ewayrapid",
"others"
]
},
"flp_checksum": {
"type": "string",
"description": "The FLP checksum.",
"title": "FLP Checksum"
}
}
}
}
],
"x-ms-visibility": "important"
}
},
"/feedback": {
"post": {
"responses": {
"200": {
"description": "default",
"schema": {
"type": "object",
"properties": {
"fraudlabspro_error_code": {
"type": "string",
"description": "The FraudLabs Pro code.",
"title": "FraudLabs Pro Error Code"
},
"fraudlabspro_message": {
"type": "string",
"description": "The FraudLabs Pro message.",
"title": "FraudLabs Pro Message"
}
}
}
}
},
"summary": "Give order feedback",
"description": "Update status of a transaction from pending-manual-review to APPROVE, REJECT or IGNORE. The FraudLabs Pro algorithm will improve the formula in determine the FraudLabs Pro score using the data collected.",
"operationId": "FeedbackPost",
"parameters": [
{
"name": "body",
"in": "body",
"required": false,
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The identifier.",
"title": "ID"
},
"action": {
"type": "string",
"description": "The action.",
"title": "Action",
"default": "APPROVE",
"enum": [
"APPROVE",
"REJECT",
"REJECT_BLACKLIST"
]
},
"note": {
"type": "string",
"description": "The note.",
"title": "Note"
}
}
}
}
]
}
},
"/result": {
"get": {
"responses": {
"200": {
"description": "default",
"schema": {
"type": "object",
"properties": {
"is_country_match": {
"type": "string",
"description": "Is country a match.",
"title": "Is Country Match"
},
"is_high_risk_country": {
"type": "string",
"description": "Is a high rick country.",
"title": "Is High Risk Country"
},
"ip_country": {
"type": "string",
"description": "The IP country.",
"title": "IP Country"
},
"ip_region": {
"type": "string",
"description": "The IP region.",
"title": "IP Region"
},
"ip_city": {
"type": "string",
"description": "The IP city.",
"title": "IP City"
},
"ip_continent": {
"type": "string",
"description": "The IP continent.",
"title": "IP Continent"
},
"ip_latitude": {
"type": "string",
"description": "The IP latitude.",
"title": "IP Latitude"
},
"ip_longitude": {
"type": "string",
"description": "The IP longitude.",
"title": "IP Longitude"
},
"ip_timezone": {
"type": "string",
"description": "The IP timezone.",
"title": "IP Timezone"
},
"ip_elevation": {
"type": "string",
"description": "The IP elevation.",
"title": "IP Elevation"
},
"ip_domain": {
"type": "string",
"description": "The IP domain.",
"title": "IP Domain"
},
"ip_mobile_mnc": {
"type": "string",
"description": "The IP mobile MNC.",
"title": "IP Mobile MNC"
},
"ip_mobile_mcc": {
"type": "string",
"description": "The IP mobile MCC.",
"title": "IP Mobile MCC"
},
"ip_mobile_brand": {
"type": "string",
"description": "The IP mobile brand.",
"title": "IP Mobile Brand"
},
"ip_netspeed": {
"type": "string",
"description": "The IP netspeed.",
"title": "IP Netspeed"
},
"ip_isp_name": {
"type": "string",
"description": "The IP ISP name.",
"title": "IP ISP Name"
},
"ip_usage_type": {
"type": "string",
"description": "The IP usage type.",
"title": "IP Usage Type"
},
"is_free_email": {
"type": "string",
"description": "Is free email.",
"title": "Is Free Email"
},
"is_disposable_email": {
"type": "string",
"description": "Is disposable email.",
"title": "Is Disposable Email"
},
"is_new_domain_name": {
"type": "string",
"description": "Is new domain name.",
"title": "Is New Domain Name"
},
"is_domain_exists": {
"type": "string",
"description": "Does domain exist.",
"title": "Is Domain Exists"
},
"is_proxy_ip_address": {
"type": "string",
"description": "Is proxy IP address.",
"title": "Is Proxy IP Address"
},
"is_bin_found": {
"type": "string",
"description": "Is Bin found.",
"title": "Is Bin Found"
},
"is_bin_country_match": {
"type": "string",
"description": "Is Bin country match.",
"title": "Is Bin Country Match"
},
"is_bin_name_match": {
"type": "string",
"description": "Is .",
"title": "Is Bin Name Match"
},
"is_bin_phone_match": {
"type": "string",
"description": "Is .",
"title": "Is Bin Phone Match"
},
"is_bin_prepaid": {
"type": "string",
"description": "Is Bin prepaid.",
"title": "Is Bin Prepaid"
},
"is_address_ship_forward": {
"type": "string",
"description": "Is address a shipping forward.",
"title": "Is Address Ship Forward"
},
"is_bill_ship_city_match": {
"type": "string",
"description": "Is bill ship city a match.",
"title": "Is Bill Ship City Match"
},
"is_bill_ship_state_match": {
"type": "string",
"description": "Is bill ship state a match.",
"title": "Is Bill Ship State Match"
},
"is_bill_ship_country_match": {
"type": "string",
"description": "Is bill ship country a match.",
"title": "Is Bill Ship Country Match"
},
"is_bill_ship_postal_match": {
"type": "string",
"description": "Is bill ship postal code a match.",
"title": "Is Bill Ship Postal Match"
},
"is_ip_blacklist": {
"type": "string",
"description": "Is IP blacklisted.",
"title": "Is IP Blacklist"
},
"is_email_blacklist": {
"type": "string",
"description": "Is email blacklisted.",
"title": "Is Email Blacklist"
},
"is_credit_card_blacklist": {
"type": "string",
"description": "Is credit card blacklisted.",
"title": "Is Credit Card Blacklist"
},
"is_device_blacklist": {
"type": "string",
"description": "Is device blacklisted.",
"title": "Is Device Blacklist"
},
"is_user_blacklist": {
"type": "string",
"description": "Is user blacklisted.",
"title": "Is User Blacklist"
},
"is_ship_address_blacklist": {
"type": "string",
"description": "Is ship address blacklisted.",
"title": "Is Ship Address Blacklist"
},
"is_phone_blacklist": {
"type": "string",
"description": "Is phone blacklisted.",
"title": "Is Phone Blacklist"
},
"is_high_risk_username_password": {
"type": "string",
"description": "Is .",
"title": "Is High Risk Username Password"
},
"is_malware_exploit": {
"type": "string",
"description": "Is a malware exploit.",
"title": "Is Malware Exploit"
},
"is_export_controlled_country": {
"type": "string",
"description": "Is export controlled country.",
"title": "Is Export Controlled Country"
},
"user_order_id": {
"type": "string",
"description": "The user order identifier.",
"title": "User Order ID"
},
"user_order_memo": {
"type": "string",
"description": "The user order memo.",
"title": "User Order Memo"
},
"fraudlabspro_score": {
"type": "integer",
"format": "int32",
"description": "The FraudLabs Pro score.",
"title": "FraudLabs Pro Score"
},
"fraudlabspro_distribution": {
"type": "integer",
"format": "int32",
"description": "The FraudLabs Pro .",
"title": "FraudLabs Pro Distribution"
},
"fraudlabspro_status": {
"type": "string",
"description": "The FraudLabs Pro status.",
"title": "FraudLabs Pro Status"
},
"fraudlabspro_id": {
"type": "string",
"description": "The FraudLabs Pro identifier.",
"title": "FraudLabs Pro ID"
},
"fraudlabspro_message": {
"type": "string",
"description": "The FraudLabs Pro message.",
"title": "FraudLabs Pro Message"
}
}
}
}
},
"parameters": [
{
"name": "id",
"in": "query",
"x-ms-summary": "ID",
"description": "The identifier.",
"required": false,
"type": "string"
},
{
"name": "id_type",
"in": "query",
"x-ms-summary": "ID Type",
"description": "The identifier type.",
"required": false,
"type": "string",
"default": "fraudlabspro_id",
"enum": [
"fraudlabspro_id",
"user_order_id"
]
}
],
"description": "Retrieve an existing transaction from FraudLabs Pro fraud detection system. Please take note that this API is only available for paid plan.",
"operationId": "ResultGet",
"summary": "Get order result"
}
}
},
"definitions": {},
"parameters": {},
"responses": {},
"securityDefinitions": {
"API Key": {
"type": "apiKey",
"in": "query",
"name": "key"
}
},
"security": [
{
"API Key": []
}
],
"tags": [],
"x-ms-connector-metadata": [
{
"propertyName": "Website",
"propertyValue": "https://www.fraudlabspro.com/"
},
{
"propertyName": "Privacy policy",
"propertyValue": "https://www.fraudlabspro.com/privacy-policy"
},
{
"propertyName": "Categories",
"propertyValue": "Commerce"
}
]
}

Просмотреть файл

@ -0,0 +1,34 @@
{
"properties": {
"connectionParameters": {
"api_key": {
"type": "securestring",
"uiDefinition": {
"displayName": "API Key",
"description": "The API Key for this api",
"tooltip": "Provide your API Key",
"constraints": {
"tabIndex": 2,
"clearText": false,
"required": "true"
}
}
}
},
"iconBrandColor": "#da3b01",
"capabilities": [],
"policyTemplateInstances": [
{
"templateId": "setqueryparameter",
"title": "JSON Format",
"parameters": {
"x-ms-apimTemplateParameter.name": "format",
"x-ms-apimTemplateParameter.value": "json",
"x-ms-apimTemplateParameter.existsAction": "override"
}
}
],
"publisher": "Troy Taylor",
"stackOwner": "FraudLabsPro.com"
}
}

Просмотреть файл

@ -0,0 +1,21 @@
# FraudLabs Pro
FraudLabs Pro provides fraud prevention solution to protect the online businesses from payment frauds (also known as CNP frauds). It helps merchants to minimize their chargebacks or fraud losses. It also helps to increase the revenues by letting the legitimate buyers to smoothly complete the transactions while blocking the malicious fraudsters.
## Publisher: Troy Taylor, Hitachi Solutions
## Prerequisites
You will need to [sign up](https://www.fraudlabspro.com/subscribe?id=1) for an account with FraudLabs.
## Obtaining Credentials
You will find your API key in the account dashboard.
## Supported Operations
### Screen order
Screen an order transaction for payment fraud. This request will detect all possible fraud traits based on the input parameters supplied. The more input parameter supplied, the higher accuracy of fraud detection.
### Give order feedback
Update status of a transaction from pending-manual-review to APPROVE, REJECT or IGNORE. The FraudLabs Pro algorithm will improve the formula in determine the FraudLabs Pro score using the data collected.
### Get order result
Retrieve an existing transaction from FraudLabs Pro fraud detection system. Please take note that this action is only available for paid plan.
## Known Issues and Limitations
There are no known issues at this time.