# FraudLabs Pro

FraudLabs Pro is an online payment fraud detection service that helps merchants minimize chargebacks and maximize revenue by detecting fraud across various payment methods.

- **Category:** payment processing
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 8
- **Triggers:** 0
- **Slug:** `FRAUDLABS_PRO`
- **Version:** 20260312_00

## Tools

### Create FraudLabs Pro Reseller Sub-Account

**Slug:** `FRAUDLABS_PRO_CREATE_ACCOUNT`

Creates a new FraudLabs Pro user account under a reseller account. Requires a Reseller API key (not a regular API key). Use this action to provision new sub-accounts for customers when operating as a FraudLabs Pro reseller. Returns account credentials (username and password) upon successful creation. Prerequisites: - Must have a FraudLabs Pro Reseller account (apply at https://www.fraudlabspro.com/reseller/program) - Requires valid Reseller API key (different from standard FraudLabs Pro API key) - All required fields must contain valid data matching FraudLabs Pro validation rules Important: - Phone numbers should contain only digits (no +, -, spaces, or parentheses) - Country must be valid ISO 3166-1 alpha-2 code (e.g., US, GB, CA) - Industry must be a valid ID from 1-14

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fax` | string | No | Fax number (digits only, no special characters). Optional. |
| `key` | string | Yes | FraudLabs Pro Reseller API key (different from regular API key). Required for account creation. Apply at https://www.fraudlabspro.com/reseller/program |
| `city` | string | Yes | City name for the billing address |
| `name` | string | Yes | Full name of the account holder (first and last name) |
| `email` | string | Yes | Email address for the new account. Used for login and communications. |
| `phone` | string | Yes | Contact phone number (digits only, no special characters or spaces) |
| `state` | string | Yes | State or province name/code for the billing address |
| `format` | string ("json" | "xml") | No | Response format (json or xml). Defaults to json for structured data. |
| `company` | string | Yes | Company or organization name for the account |
| `country` | string | Yes | ISO 3166-1 alpha-2 country code (2-letter code). See https://www.fraudlabspro.com/developer/reference/country-codes |
| `address1` | string | Yes | Primary street address (building number and street name) |
| `address2` | string | No | Secondary address line (apartment, suite, unit, floor, etc.). Optional. |
| `industry` | string | Yes | Industry classification ID (1-14). Options: 1=Retail(e-Commerce), 2=Retail(Brick&Mortar), 3=Hospitality, 4=Ticketing, 5=Clubs, 6=Memberships, 7=Digital Content, 8=Online Games, 9=Software, 10=Telecom, 11=Travel, 12=Non-Profit, 13=Services, 14=High Risk |
| `username` | string | Yes | Desired username for the new FraudLabs Pro account. Must be unique across all accounts. |
| `zip_code` | string | Yes | Postal code or ZIP code for the billing address |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### FLP Feedback Order

**Slug:** `FRAUDLABS_PRO_FLP_FEEDBACK_ORDER`

Submit fraud screening feedback to improve FraudLabs Pro's machine learning model. Use this after reviewing a screened order to mark it as approved, rejected, or blacklisted. This feedback trains the algorithm to better detect fraud patterns in future transactions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The fraudlabspro_id returned from a Screen Order API call. This identifies which transaction to provide feedback for. |
| `key` | string | Yes | Your FraudLabs Pro API license key. |
| `note` | string | No | Optional internal note explaining the reason for this feedback decision (e.g., 'Customer verified by phone', 'Known fraudster pattern'). |
| `action` | string ("APPROVE" | "REJECT" | "REJECT_BLACKLIST") | Yes | Feedback action: APPROVE (legitimate transaction), REJECT (fraudulent), or REJECT_BLACKLIST (fraudulent and add to permanent blacklist for enhanced future detection). |
| `format` | string ("json" | "xml") | No | Response format. Defaults to 'json'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### FraudLabs Pro Screen Order

**Slug:** `FRAUDLABS_PRO_FLP_SCREEN_ORDER`

Tool to screen orders for fraud. Use when you need to assess transaction risk before fulfillment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ip` | string | Yes | Transaction IP address (IPv4 or IPv6) |
| `email` | string | No | User's email address |
| `amount` | string | No | Transaction amount (must be positive) |
| `bin_no` | string | No | First 6 or 8 digits of card for bank identification |
| `format` | string ("json" | "xml") | No | Response format |
| `currency` | string | No | Transaction currency (ISO-4217 code, e.g., USD) |
| `quantity` | integer | No | Total quantity of items |
| `username` | string | No | Username used for signup |
| `bill_addr` | string | No | Billing street address |
| `bill_city` | string | No | Billing city |
| `card_hash` | string | No | SHA2 hash of card number |
| `last_name` | string | No | User's last name |
| `ship_addr` | string | No | Shipping street address |
| `ship_city` | string | No | Shipping city |
| `avs_result` | string | No | Single-character AVS result from processor |
| `bill_state` | string | No | Billing state or province (US/CA code, e.g., NY) |
| `cvv_result` | string | No | Single-character CVV2 result (processor response) |
| `department` | string | No | Merchant product/service department ID |
| `email_hash` | string | No | SHA2 hash of email if email not provided |
| `first_name` | string | No | User's first name |
| `ship_state` | string | No | Shipping state or province (US/CA code, e.g., NY) |
| `user_phone` | string | No | User's phone number |
| `bill_country` | string | No | Billing country ISO-3166 alpha-2 code (e.g., US) |
| `email_domain` | string | No | Email domain; auto-extracted if email provided |
| `flp_checksum` | string | No | Device validation checksum from FraudLabs Pro JavaScript |
| `payment_mode` | string ("creditcard" | "paypal" | "cod" | "bankdeposit" | "giftcard" | "crypto" | "wired" | "others") | No | Payment mode for transaction |
| `ship_country` | string | No | Shipping country ISO-3166 alpha-2 code (e.g., US) |
| `bill_zip_code` | string | No | Billing postal or ZIP code |
| `ship_zip_code` | string | No | Shipping postal or ZIP code |
| `user_order_id` | string | No | Merchant's order ID (max 15 chars) |
| `ship_last_name` | string | No | Shipping recipient last name |
| `payment_gateway` | string | No | Payment gateway name |
| `ship_first_name` | string | No | Shipping recipient first name |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get FraudLabs Pro Order Result (v2)

**Slug:** `FRAUDLABS_PRO_GET_ORDER_RESULT2`

Tool to retrieve an existing transaction from FraudLabs Pro fraud detection system using the v2 API. This API is only available for paid plans.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | FraudLabs Pro transaction ID (fraudlabspro_id) or your platform's order ID (user_order_id). Required unless retrieving without specific ID. |
| `key` | string | No | FraudLabs Pro API key. If not provided, will use key from authentication metadata. |
| `format` | string ("json" | "xml") | No | Response format; json (default) or xml |
| `id_type` | string ("FraudLabsPro::ID" | "FraudLabsPro::UserOrderID") | No | Type of ID provided in the 'id' parameter. Use FraudLabsPro::ID for FraudLabs Pro transaction IDs or FraudLabsPro::UserOrderID for your order IDs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get SMS Verification Result

**Slug:** `FRAUDLABS_PRO_GET_SMS_VERIFICATION_RESULT`

Verify an OTP (one-time password) received via SMS. Returns 'Y' if the OTP is valid, 'N' if invalid or expired. Must be called after using Send SMS Verification to obtain a transaction ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | FraudLabs Pro API key |
| `otp` | string | Yes | The one-time password (OTP) code received by the user via SMS that needs to be verified |
| `format` | string ("json" | "xml") | No | Response format, 'json' (default) or 'xml' |
| `tran_id` | string | Yes | Unique transaction ID returned by the Send SMS Verification API |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Send SMS OTP Verification

**Slug:** `FRAUDLABS_PRO_SEND_SMS_VERIFICATION`

Sends an SMS message containing a one-time password (OTP) to verify a user's phone number. The API generates a random 6-digit OTP, replaces the <otp> placeholder in your message template, and sends the SMS to the recipient. Returns a transaction ID that you must use with the Get SMS Verification Result action to verify the OTP the user enters. Testing: Use phone number '+11' for sandbox testing (no credits deducted). For verification testing with sandbox number, use OTP '123456'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | FraudLabs Pro API key |
| `tel` | string | Yes | Recipient mobile number in E.164 format, e.g., +12015550123 |
| `mesg` | string | Yes | SMS message template; must include <otp> placeholder; max 140 characters |
| `format` | string ("json" | "xml") | No | Response format: json (default) or xml |
| `otp_timeout` | integer | No | OTP timeout in seconds; default 3600; min 15; max 86400 |
| `country_code` | string | No | ISO 3166 country code for the phone, e.g., US |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Subscribe Reseller Plan

**Slug:** `FRAUDLABS_PRO_SUBSCRIBE_PLAN`

Tool to subscribe a reseller account to a specific plan. Use after obtaining a reseller API key and selecting a plan. Example: Subscribe user "john_doe" to the MICRO plan.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | Your Reseller API key. |
| `plan` | string ("MICRO" | "SMALL" | "MEDIUM" | "LARGE" | "ENTERPRISE") | Yes | Plan code. Only MICRO plan is currently accepted. |
| `format` | string ("json" | "xml") | No | Response format. Valid values: json, xml. Default is json. |
| `username` | string | Yes | Username of the account to subscribe. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Test Order Status Changed Webhook Delivery

**Slug:** `FRAUDLABS_PRO_WEBHOOK_ORDER_STATUS_CHANGED`

Tool to send a test webhook payload to the provided callback URL for FraudLabs Pro order status change notifications. This helps validate your endpoint behavior. Important: FraudLabs Pro webhook registration must be configured manually via dashboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `test_id` | string | No | Test transaction id to include in the webhook payload |
| `test_action` | string ("APPROVE" | "REJECT") | No | FraudLabs Pro status to include in the webhook payload |
| `callback_url` | string | Yes | URL to receive FraudLabs Pro order status change notifications |
| `extra_fields` | object | No | Additional key/value pairs to include in the payload |
| `payload_format` | string ("form" | "json") | No | Payload encoding format for the test webhook POST |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
