Double Up your fraud validation queries for free. Click to learn more!

Developer Guide

Get Order Result

Retrieve an existing transaction from FraudLabs Pro fraud detection system.

Please take note that this API is only available for paid plan. Please upgrade your plan to use it if you are currently subscribed to Micro plan.

GET https://api.fraudlabspro.com/v1/order/result

Request
Parameter Description
id (required) Unique transaction ID generated by Fraud Check API. Or order ID generated by your platform.
key (required) API license key.
format (optional) Return the result in json or xml format. Default:xml
Valid values: json | xml
id_type (optional) The type of ID passed.
  • fraudlabspro_id: An unique transaction ID generated by FraudLabs Pro
  • user_order_id: Order ID passed from your platform
Response
Parameter Description
is_country_match Whether country of IP address matches billing address country.
Return values: Y, N, NA (NA means not applicable)
is_high_risk_country Whether IP address or billing address country is in the latest high risk list.
Return values: Y, N, NA (NA means not applicable)
distance_in_km Distance of location between IP address and bill. Value in kilometer.
distance_in_mile Distance of location between IP address and bill. Value in mile.
ip_country Estimated country of the IP address.
ip_region Estimated region of the IP address.
ip_city Estimated city of the IP address.
ip_continent Estimated continent of the IP address. Please refer to Continent-Country for details.
ip_latitude Estimated latitude of the IP address.
ip_longitude Estimated longitude of the IP address.
ip_timezone Estimated timezone of the IP address.
ip_elevation Estimated elevation of the IP address.
ip_domain Estimated domain name of the IP address.
ip_mobile_mnc Estimated mobile mnc information of the IP address, if it is a mobile network.
ip_mobile_mcc Estimated mobile mcc information of the IP address, if it is a mobile network.
ip_mobile_brand Estimated mobile brand information of the IP address, if it is a mobile network.
ip_netspeed Estimated netspeed of the IP address.
ip_isp_name Estimated ISP name of the IP address.
ip_usage_type Estimated usage type of the IP address. Return values as below:
  • Commercial
  • Organization
  • Government
  • Military
  • University/College/School
  • Library
  • Content Delivery Network
  • Fixed Line ISP
  • Mobile ISP
  • Data Center/Web Hosting/Transit
  • Search Engine Spider
is_free_email Whether the email is from free email provider.
Return values: Y, N, NA (NA means not applicable)
is_disposable_email Whether the email is a disposable email. Only applicable for Small Plan onward.
Return values: Y, N, NA (NA means not applicable)
is_new_domain_name Whether the email domain name a newly registered name. Only applicable for non-free email domain.
Return values: Y, N, NA (NA means not applicable)
is_domain_exists Whether the email domain name is a valid domain.
Return values: Y, N, NA (NA means not applicable)
is_proxy_ip_address Whether the IP address is from a known anonymous proxy server.
Return values: Y, N, NA (NA means not applicable)
is_bin_found Whether the BIN information matches our BIN list.
Return values: Y, N, NA (NA means not applicable)
is_bin_country_match Whether the country of issuing bank matches BIN country code.
Return values: Y, N, NA (NA means not applicable)
is_bin_name_match Whether the name of issuing bank matches BIN bank name. (obsolete, will be removed in future)
Return values: Y, N, NA (NA means not applicable)
is_bin_phone_match Whether the customer service phone number matches BIN phone. (obsolete, will be removed in future)
Return values: Y, N, NA (NA means not applicable)
is_bin_prepaid Whether the credit card is a type of prepaid card.
Return values: Y, N, NA (NA means not applicable)
is_address_ship_forward Whether the shipping address is in database of known mail drops.
Return values: Y, N, NA (NA means not applicable)
is_bill_ship_city_match Whether the billing city matches the shipping city.
Return values: Y, N, NA (NA means not applicable)
is_bill_ship_state_match Whether the billing state matches the shipping state.
Return values: Y, N, NA (NA means not applicable)
is_bill_ship_country_match Whether the billing country matches the shipping country.
Return values: Y, N, NA (NA means not applicable)
is_bill_ship_postal_match Whether the billing postal/zip code matches the shipping postal/zip code.
Return values: Y, N, NA (NA means not applicable)
is_ip_blacklist Whether the IP address is in our blacklist database.
Return values: Y, N, NA (NA means not applicable)
is_email_blacklist Whether the email address is in our blacklist database.
Return values: Y, N, NA (NA means not applicable)
is_credit_card_blacklist Whether the credit card is in our blacklist database.
Return values: Y, N, NA (NA means not applicable)
is_device_blacklist Whether the device Id is in our blacklist database.
Return values: Y, N, NA (NA means not applicable)
is_user_blacklist Whether the username is in our blacklist database.
Return values: Y, N, NA (NA means not applicable)
is_ship_address_blacklist Whether the ship address is in our blacklist database.
Return values: Y, N, NA (NA means not applicable)
is_phone_blacklist Whether the user's phone number is in our blacklist database.
Return values: Y, N, NA (NA means not applicable)
is_high_risk_username_password Whether the username and password is in our high risk database.
Return values: Y, N, NA (NA means not applicable)
is_malware_exploit Whether the machine is infected.
Return values: Y, N, NA (NA means not applicable)
is_export_controlled_country Whether the country is from an embargoed country.
Return values: Y, N, NA (NA means not applicable)
user_order_id Return the order identifier given by merchant earlier.
user_order_memo Return the order description given by merchant earlier.
fraudlabspro_score Overall score between 1 and 100. 100 is the highest risk and 1 is the lowest risk.
fraudlabspro_distribution Return the distribution of the risk rate range from 1 to 100. Distribution score of 90 means it is at top 10% high score in sample.
fraudlabspro_status Final action based on the rules analysis.
Return values: APPROVE | REJECT | REVIEW
fraudlabspro_id System own unique identifier to identify this API transaction.
fraudlabspro_version Version of the fraud analysis engine used in this transaction.
fraudlabspro_error_code Error code in this transaction. Please refer to Error Codes for complete list.
fraudlabspro_message More information about the status of this transaction. Please refer to Error Codes for complete list.
fraudlabspro_credits Balance of queries in your account after this transaction.
Sample Code
<?php
require_once 'lib/FraudLabsPro.php';

// Configures FraudLabs Pro API key
FraudLabsPro\Configuration::apiKey('YOUR_API_KEY');

$result = FraudLabsPro\Order::getTransaction('20170906MXFHSTRF', FraudLabsPro::FLP_ID);
import com.fraudlabspro.*;
import java.util.Hashtable;

public class FLP {

    public static void main(String[] args) {
        // Configures FraudLabs Pro API key
        FraudLabsPro.APIKEY = "YOUR_API_KEY";

        // Get Order Result API
        Order orderResults = new Order();

        // Sets order ID to return all available information regarding the order
        Hashtable data = new Hashtable<>();
        data.put("id", "20180709-NHAEUK");
        data.put("id_type", orderResults.FLP_ID);

        String result = orderResults.getTransaction(data);  // Obtains order results from FraudLabs Pro
    }
}
Imports FraudLabsPro.FraudLabsPro
Public Class WebForm3
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        'Configure FraudLabs Pro API KEY
        FraudLabsProConfig.APIKey = "YOUR_API_KEY"

        'Set Get Order Result parameter     
        Dim GetOrder_Result_Parameter As New OrderPara
        GetOrder_Result_Parameter.ID = "20180709-NHAEUK"
        GetOrder_Result_Parameter.IDType = Order.IDTypes.FLP_ID

        'Get Order Result API
        Dim OrderResult As New Order
        Dim result = OrderResult.GetOrderResult(GetOrder_Result_Parameter) 'Get order result from FraudLabs Pro
        Response.Write("IsCountryMatch: " + result.IsCountryMatch + "</br>")
        Response.Write("IsHighRiskCountry: " + result.IsHighRiskCountry + " </br>")
        Response.Write("DistanceInKM: " + result.DistanceInKM + "</br>")
        Response.Write("DistanceInMile: " + result.DistanceInMile + "</br>")
        Response.Write("IPCountry: " + result.IPCountry + "</br>")
        Response.Write("IPRegion: " + result.IPRegion + "</br>")
        Response.Write("IPCity: " + result.IPCity + "</br>")
        Response.Write("IPContinent: " + result.IPContinent + "</br>")
        Response.Write("IPLatitude: " + result.IPLatitude + "</br>")
        Response.Write("IPLongtitude: " + result.IPLongtitude + "</br>")
        Response.Write("IPTimeZone: " + result.IPTimeZone + "</br>")
        Response.Write("IPElevation: " + result.IPElevation + "</br>")
        Response.Write("IPDomain: " + result.IPDomain + "</br>")
        Response.Write("IPMobileMNC: " + result.IPMobileMNC + "</br>")
        Response.Write("IPMobileMCC: " + result.IPMobileMCC + "</br>")
        Response.Write("IPMobileBrand: " + result.IPMobileBrand + "</br>")
        Response.Write("IPNetSpeed: " + result.IPNetSpeed + "</br>")
        Response.Write("IPISPName: " + result.IPISPName + "</br>")
        Response.Write("IPUsageType: " + result.IPUsageType + "</br>")
        Response.Write("IsFreeEmail: " + result.IsFreeEmail + "</br>")
        Response.Write("IsDisposableEmail: " + result.IsDisposableEmail + "</br>")
        Response.Write("IsNewDomainName: " + result.IsNewDomainName + "</br>")
        Response.Write("IsDomainExists: " + result.IsDomainExists + "</br>")
        Response.Write("IsProxyIPAddress: " + result.IsProxyIPAddress + "</br>")
        Response.Write("IsBinFound: " + result.IsBinFound + "</br>")
        Response.Write("IsBinCountryMatch: " + result.IsBinCountryMatch + "</br>")
        Response.Write("IsBinNameMatch: " + result.IsBinNameMatch + "</br>")
        Response.Write("IsBinPhoneMatch: " + result.IsBinPhoneMatch + "</br>")
        Response.Write("IsBinPrepaid: " + result.IsBinPrepaid + "</br>")
        Response.Write("IsAddressShipForward: " + result.IsAddressShipForward + "</br>")
        Response.Write("IsBillShipCityMatch: " + result.IsBillShipCityMatch + "</br>")
        Response.Write("IsBillShipStateMatch: " + result.IsBillShipStateMatch + "</br>")
        Response.Write("IsBillShipCountryMatch: " + result.IsBillShipCountryMatch + "</br>")
        Response.Write("IsBillShipPostalMatch: " + result.IsBillShipPostalMatch + "</br>")
        Response.Write("IsIPBlacklist: " + result.IsIPBlacklist + "</br>")
        Response.Write("IsEmailBlacklist: " + result.IsEmailBlacklist + "</br>")
        Response.Write("IsCreditCardBlacklist: " + result.IsCreditCardBlacklist + "</br>")
        Response.Write("IsDeviceBlacklist: " + result.IsDeviceBlacklist + "</br>")
        Response.Write("IsUserBlacklist: " + result.IsUserBlacklist + "</br>")
        Response.Write("IsShipAddressBlackList: " + result.IsShipAddressBlackList + "</br>")
        Response.Write("IsPhoneBlacklist: " + result.IsPhoneBlacklist + "</br>")
        Response.Write("IsHighRiskUsernamePassword: " + result.IsHighRiskUsernamePassword + "</br>")
        Response.Write("IsMalwareExploit: " + result.IsMalwareExploit + "</br>")
        Response.Write("IsExportControlledCountry: " + result.IsExportControlledCountry + "</br>")
        Response.Write("UserOrderID: " + result.UserOrderID + "</br>")
        Response.Write("UserOrderMemo: " + result.UserOrderMemo + "</br>")
        Response.Write("FraudLabsProScore: " + result.FraudLabsProScore + "</br>")
        Response.Write("FraudLabsProDistribution: " + result.FraudLabsProDistribution + "</br>")
        Response.Write("FraudLabsProStatus: " + result.FraudLabsProStatus + "</br>")
        Response.Write("FraudLabsProID: " + result.FraudLabsProID + "</br>")
        Response.Write("FraudLabsProVersion: " + result.FraudLabsProVersion + "</br>")
        Response.Write("FraudLabsProErrorCode: " + result.FraudLabsProErrorCode + "</br>")
        Response.Write("FraudLabsProMessage: " + result.FraudLabsProMessage + "</br>")
        Response.Write("FraudLabsProCredit: " + result.FraudLabsProCredit + "</br>")
    End Sub
End Class
using FraudLabsPro.FraudLabsPro;

public class WebForm3 : System.Web.UI.Page
{
    protected void Page_Load(object sender, System.EventArgs e)
    {
        // Configure FraudLabs Pro API KEY
        FraudLabsProConfig.APIKey = "YOUR_API_KEY";

        // Set Get Order Result parameter     
        OrderPara GetOrder_Result_Parameter = new OrderPara();
        GetOrder_Result_Parameter.ID = "20180709-NHAEUK";
        GetOrder_Result_Parameter.IDType = Order.IDTypes.FLP_ID;

        // Get Order Result API
        Order OrderResult = new Order();
        var result = OrderResult.GetOrderResult(GetOrder_Result_Parameter); // Get order result from FraudLabs Pro
        Response.Write("IsCountryMatch: " + result.IsCountryMatch + "</br>");
        Response.Write("IsHighRiskCountry: " + result.IsHighRiskCountry + " </br>");
        Response.Write("DistanceInKM: " + result.DistanceInKM + "</br>");
        Response.Write("DistanceInMile: " + result.DistanceInMile + "</br>");
        Response.Write("IPCountry: " + result.IPCountry + "</br>");
        Response.Write("IPRegion: " + result.IPRegion + "</br>");
        Response.Write("IPCity: " + result.IPCity + "</br>");
        Response.Write("IPContinent: " + result.IPContinent + "</br>");
        Response.Write("IPLatitude: " + result.IPLatitude + "</br>");
        Response.Write("IPLongtitude: " + result.IPLongtitude + "</br>");
        Response.Write("IPTimeZone: " + result.IPTimeZone + "</br>");
        Response.Write("IPElevation: " + result.IPElevation + "</br>");
        Response.Write("IPDomain: " + result.IPDomain + "</br>");
        Response.Write("IPMobileMNC: " + result.IPMobileMNC + "</br>");
        Response.Write("IPMobileMCC: " + result.IPMobileMCC + "</br>");
        Response.Write("IPMobileBrand: " + result.IPMobileBrand + "</br>");
        Response.Write("IPNetSpeed: " + result.IPNetSpeed + "</br>");
        Response.Write("IPISPName: " + result.IPISPName + "</br>");
        Response.Write("IPUsageType: " + result.IPUsageType + "</br>");
        Response.Write("IsFreeEmail: " + result.IsFreeEmail + "</br>");
        Response.Write("IsDisposableEmail: " + result.IsDisposableEmail + "</br>");
        Response.Write("IsNewDomainName: " + result.IsNewDomainName + "</br>");
        Response.Write("IsDomainExists: " + result.IsDomainExists + "</br>");
        Response.Write("IsProxyIPAddress: " + result.IsProxyIPAddress + "</br>");
        Response.Write("IsBinFound: " + result.IsBinFound + "</br>");
        Response.Write("IsBinCountryMatch: " + result.IsBinCountryMatch + "</br>");
        Response.Write("IsBinNameMatch: " + result.IsBinNameMatch + "</br>");
        Response.Write("IsBinPhoneMatch: " + result.IsBinPhoneMatch + "</br>");
        Response.Write("IsBinPrepaid: " + result.IsBinPrepaid + "</br>");
        Response.Write("IsAddressShipForward: " + result.IsAddressShipForward + "</br>");
        Response.Write("IsBillShipCityMatch: " + result.IsBillShipCityMatch + "</br>");
        Response.Write("IsBillShipStateMatch: " + result.IsBillShipStateMatch + "</br>");
        Response.Write("IsBillShipCountryMatch: " + result.IsBillShipCountryMatch + "</br>");
        Response.Write("IsBillShipPostalMatch: " + result.IsBillShipPostalMatch + "</br>");
        Response.Write("IsIPBlacklist: " + result.IsIPBlacklist + "</br>");
        Response.Write("IsEmailBlacklist: " + result.IsEmailBlacklist + "</br>");
        Response.Write("IsCreditCardBlacklist: " + result.IsCreditCardBlacklist + "</br>");
        Response.Write("IsDeviceBlacklist: " + result.IsDeviceBlacklist + "</br>");
        Response.Write("IsUserBlacklist: " + result.IsUserBlacklist + "</br>");
        Response.Write("IsShipAddressBlackList: " + result.IsShipAddressBlackList + "</br>");
        Response.Write("IsPhoneBlacklist: " + result.IsPhoneBlacklist + "</br>");
        Response.Write("IsHighRiskUsernamePassword: " + result.IsHighRiskUsernamePassword + "</br>");
        Response.Write("IsMalwareExploit: " + result.IsMalwareExploit + "</br>");
        Response.Write("IsExportControlledCountry: " + result.IsExportControlledCountry + "</br>");
        Response.Write("UserOrderID: " + result.UserOrderID + "</br>");
        Response.Write("UserOrderMemo: " + result.UserOrderMemo + "</br>");
        Response.Write("FraudLabsProScore: " + result.FraudLabsProScore + "</br>");
        Response.Write("FraudLabsProDistribution: " + result.FraudLabsProDistribution + "</br>");
        Response.Write("FraudLabsProStatus: " + result.FraudLabsProStatus + "</br>");
        Response.Write("FraudLabsProID: " + result.FraudLabsProID + "</br>");
        Response.Write("FraudLabsProVersion: " + result.FraudLabsProVersion + "</br>");
        Response.Write("FraudLabsProErrorCode: " + result.FraudLabsProErrorCode + "</br>");
        Response.Write("FraudLabsProMessage: " + result.FraudLabsProMessage + "</br>");
        Response.Write("FraudLabsProCredit: " + result.FraudLabsProCredit + "</br>");
    }
}
 # Import SDK to use the function
from libs.order import Order

 # Configure your API key
api_key = 'YOUR_API_KEY'

get_transaction_variables = {
	'key': api_key,
	'id': '20180705-WISXW2',
	'id_type': 'FraudLabsPro::FLP_ID'
}
print(Order.get_transaction(get_transaction_variables))
$ curl https://api.fraudlabspro.com/v1/order/result?key=Enter_License_Key&format=json&id=20130131-O263CR
require 'fraudlabspro_ruby'

FraudlabsproRuby::Configuration.api_key = 'YOUR_API_KEY'

result = FraudlabsproRuby::Api::Order.getTransaction(
  transaction_id: '20180713-ZNVPV4',
  id_type: FraudlabsproRuby::Api::Order::FLP_ID
)