FraDAP Dashboard
Tenant Name -
Monthly Requests 0
Billing Estimate ₦0.00
Active Rules 0

Decision Distribution

Evaluation Latency (Average)

Fraud Decision Rules

Name Condition Action Priority Actions

API Reference & Integration

Integrate the FraDAP gateway into your transactional workflows. Make real-time POST requests to evaluate account behaviors and risk patterns.

POST /v1/risk/evaluate
Send transaction and device metadata to receive instant decisions: APPROVE, REVIEW, or BLOCK.
cURL Request
curl -X POST <baseurl>/v1/risk/evaluate \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "accountId": "acc_101",
    "amount": 250000,
    "deviceId": "dev_mac_88a2",
    "ipAddress": "102.89.23.4",
    "merchantId": "merch_12",
    "paymentMethod": "CARD",
    "currency": "NGN",
    "country": "NG",
    "state": "Lagos",
    "bvn": "22233344455",
    "email": "customer@gmail.com",
    "phoneNumber": "+2348011223344",
    "cardBin": "506118",
    "transactionType": "WITHDRAWAL",
    "isVpn": false,
    "isEmulator": false,
    "deviceOs": "Android"
  }'

Payload Parameter Definitions

The API receives context data about transactions. All fields except accountId and amount are optional, but supplying them increases rule precision. Historical and metrics variables are calculated dynamically.

Parameter Type Required Description / Usage Example
Incoming Request Payload Parameters (Sent by Client)
accountId string Yes Unique identifier of the customer transacting. (e.g. acc_101)
amount number Yes Transaction monetary value (in base unit, e.g. Naira). (e.g. 15000)
deviceId string No Unique device ID token for fingerprint tracking and device reuse.
ipAddress string No Client IPv4 or IPv6 address. (e.g. 102.89.23.4)
merchantId string No Target merchant account identifier.
country string No 2-letter country code of transaction source. (e.g. NG, GH)
state string No State or province name. (e.g. Lagos)
bvn string No 11-digit Bank Verification Number.
email string No Customer email address. (e.g. user@domain.com)
phoneNumber string No International format phone number. (e.g. +2348011223344)
cardBin string No First 6 or 8 digits of credit/debit card. (e.g. 506118)
paymentMethod string No Channel type (e.g. CARD, BANK_TRANSFER, USSD).
currency string No 3-letter ISO currency code. (e.g. NGN)
transactionType string No Transaction category (e.g. WITHDRAWAL, DEPOSIT, TRANSFER).
isVpn boolean No Flag indicating whether transaction is routed through a VPN or proxy server.
isEmulator boolean No Flag indicating whether transaction runs on a virtual device emulator.
deviceOs string No Client operating system. (e.g. Android, iOS, Windows)
Derived Risk Signals & Computed Metrics (Auto-Hydrated)
velocity_1m number Auto Calculated count of transaction requests from this account in the last 1 minute.
velocity_5m number Auto Calculated count of transaction requests from this account in the last 5 minutes.
velocity_1h number Auto Calculated count of transaction requests from this account in the last 1 hour.
velocity_24h number Auto Calculated count of transaction requests from this account in the last 24 hours.
device_reuse_count number Auto Total unique account identifiers that have transacted on this device ID in the past 24 hours.
merchant_unique_payers_24h number Auto Unique payer accounts sending to this merchantId in the past 24 hours (MMM Ponzi indicator).
payer_unique_merchants_24h number Auto Unique merchantIds this accountId has sent to in the past 24 hours (dispersal/layering indicator).

Rule Syntax & Logical Operators

Rules compile into a custom domain-specific language (DSL) and evaluate on every transaction. You can combine multiple conditions using standard Go-like logical operators:

  • && (Logical AND), || (Logical OR)
  • == (Equals), != (Not Equals)
  • >, <, >=, <= (Numeric comparisons)
  • startsWith, endsWith (String pattern matches, e.g. email endsWith "@trash.com")
  • in, not in (List membership checks, e.g. state in ["Lagos", "Kano"])

Example Scenario Templates

1. Excessive Single Transactions

Scenario: Automatically decline transactions over 1,000,000 NGN.

Expression: amount > 1000000
Action: BLOCK
2. Suspicious Emulator Withdrawal via VPN

Scenario: Flag high-value withdrawals made on Android/iOS emulators using VPN proxies.

Expression: transactionType == "WITHDRAWAL" && isEmulator && isVpn && amount > 50000
Action: REVIEW
3. Account Takeover / Fast Velocity Spike

Scenario: Block card testing bots or sudden rapid account withdrawals.

Expression: velocity_5m > 3
Action: BLOCK
4. Card BIN Restriction

Scenario: Decline transactions from blacklisted card BIN numbers.

Expression: cardBin in ["506118", "411111"]
Action: BLOCK

Fraud Case Studies & Scenario Library

Explore real-world fraud patterns across Fintech, Banking, Card Payments, Betting, Insurance, and Investments. Click **Apply Rule** to pre-fill the Rule Creator, or **Copy Payload** to mock evaluate instantly.

Rule compiled successfully!