Developer Guide

Feedback Order

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.

POST https://api.fraudlabspro.com/v1/order/feedback

Request
Parameter Description
id (required) Unique transaction Id generated by Fraud Check API.
key (required) API license key.
format (optional) Return the result in json or xml format. Default:xml
Valid values: json | xml
action (required) Perform APPROVE, REJECT, or REJECT_BLACKLIST action to transaction.
  • APPORVE: Approve a transaction
  • REJECT: Reject a transaction
  • REJECT_BLACKLIST: Reject and blacklist the transaction
When a transaction was blacklisted, the information will be recorded into the system for future blacklist validation check.
note (optional) Notes for the feedback request.
Response
Parameter Description
fraudlabspro_error Error code in this transaction. Please refer toError Codes for complete list.
fraudlabspro_message More information about the status of this transaction. Please refer to Error Codes for complete list.
Sample Code
<?php
require_once 'lib/FraudLabsPro.php';

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

FraudLabsPro\Order::feedback([
	'id'		=> '20170906MXFHSTRF',
	// Please refer to reference section for full list of feedback statuses
	'status'	=> FraudLabsPro\Order::APPROVE,
	'note'		=> 'This customer made a valid purchase before.',
]);
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";

        // Feedback Order API
        Order fb = new Order();

        // Sets feedback details
        Hashtable data = new Hashtable<>();
        data.put("id", "20180709-NHAEUK");
        data.put("action", fb.APPROVE);  // Please refer to reference section for full list of feedback statuses
        data.put("note", "This customer made a valid purchase before.");

        String result = fb.feedback(data);  // Sends feedback details to FraudLabs Pro
    }
}
Imports System.Net
Imports System.Security.Cryptography

Partial Public Class _Default
	Inherits System.Web.UI.Page

	Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
		Dim request As HttpWebRequest = Nothing
		Dim response As Net.HttpWebResponse = Nothing
		Dim stream As IO.Stream = Nothing

		Dim apiKey As String = "Enter_License_Key"
		Dim format As String = "json"
		Dim id As String = "20130131-O263CR"
		Dim action As String = "APPROVE"

		request = Net.WebRequest.Create("https://api.fraudlabspro.com/v1/order/feedback?key=" & apiKey & _
		"&format=" & System.Web.HttpUtility.UrlEncode(format) & _
		"&id=" & System.Web.HttpUtility.UrlEncode(id) & _
		"&action=" & System.Web.HttpUtility.UrlEncode(action))

		request.Method = "GET"
		response = request.GetResponse()

		Dim reader As System.IO.StreamReader = New IO.StreamReader(response.GetResponseStream())

		Page.Response.Write(reader.ReadToEnd)
	End Sub
End Class
										
using Microsoft.VisualBasic;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using System.Net;
using System.Security.Cryptography;

public partial class _Default : System.Web.UI.Page
{

	protected void Page_Load(object sender, System.EventArgs e)
	{
		HttpWebRequest request = null;
		System.Net.HttpWebResponse response = null;
		System.IO.Stream stream = null;

		string apiKey = "";
		string format = "json";
		string id = "20130131-O263CR";
		string action = "APPROVE";

		request = System.Net.WebRequest.Create("https://api.fraudlabspro.com/v1/order/feedback?key=" + apiKey + "&format=" + System.Web.HttpUtility.UrlEncode(format) + "&id=" + System.Web.HttpUtility.UrlEncode(id) + "&action=" + System.Web.HttpUtility.UrlEncode(action));

		request.Method = "GET";
		response = request.GetResponse();

		System.IO.StreamReader reader = new System.IO.StreamReader(response.GetResponseStream());

		Page.Response.Write(reader.ReadToEnd());
	}
}
 # Import SDK to use the function
from libs.order import Order

 # Configure your API key
api_key = 'YOUR_API_KEY'

feedback_variables = {
	'key': api_key,
	'id': '20180705-WISXW2',
	# Please refer to reference section for full list of feedback statuses
	'action': 'APPROVE',
	'notes': 'This is for testing purpose.',
}
print(Order.feedback(feedback_variables))
$ curl https://api.fraudlabspro.com/v1/order/feedback -X POST \
	-d "key=Enter_License_Key" \
	-d "format=json" \
	-d "id=20130131-O263CR" \
	-d "action=APPROVE"
require 'fraudlabspro_ruby'

FraudlabsproRuby::Configuration.api_key = 'YOUR_API_KEY'

result = FraudlabsproRuby::Api::Order.feedback(
  transaction_id: '20180713-ZNVPV4',
  status: FraudlabsproRuby::Api::Order::APPROVE
)