Financial Transaction Fraud Features
This dataset provides a detailed, feature-rich record of synthetic banking transactions, including transaction metadata, account and merchant information, contextual behavioral features, and fraud labels. It is ideal for developing, training, and benchmarking machine learning models for fraud detection and anomaly analysis in financial services.
Sample rows
preview · 8 of 200 rows · all 19 columns| transaction_idstring | transaction_typestring | transaction_amountfloat | is_internationalboolean | merchant_categorystring | account_idstring | transaction_datetimedatetime | currencystring | merchant_idstring | device_idstring | channelstring | location_citystring | location_statestring | location_countrystring | previous_transactions_24hinteger | avg_transaction_amount_7dfloat | account_age_daysinteger | is_fraudboolean | fraud_typestring |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TXN000001 | purchase | 54.33 | false | groceries | ACC10001 | 2023-11-04T14:23:55Z | USD | MRC10001 | DEV20001 | POS | Chicago | IL | US | 1 | 38.2 | 875 | false | blank |
| TXN000002 | refund | 0 | true | electronics | ACC10002 | 2023-11-04T08:45:01Z | EUR | MRC10002 | DEV20002 | online | Berlin | BE | DE | 0 | 0 | 2 | true | fake_merchant |
| TXN000003 | purchase | 137.9 | false | clothing | ACC10001 | 2023-11-04T16:03:30Z | USD | MRC10003 | DEV20001 | online | Chicago | IL | US | 2 | 90.11 | 875 | false | blank |
| TXN000004 | transfer | 2500 | true | blank | ACC10003 | 2023-11-03T18:11:04Z | JPY | blank | DEV20003 | online | Tokyo | TK | JP | 1 | 1880 | 11 | false | blank |
| TXN000005 | purchase | 101.35 | false | restaurants | ACC10004 | 2023-11-02T09:53:21Z | GBP | MRC10004 | DEV20004 | POS | London | ENG | GB | 2 | 120 | 1053 | false | blank |
| TXN000006 | refund | 0 | false | electronics | ACC10005 | 2023-11-03T13:29:42Z | USD | MRC10005 | DEV20005 | online | San Francisco | CA | US | 0 | 0 | 0 | false | blank |
| TXN000007 | payment | 800 | false | utilities | ACC10006 | 2023-11-04T12:10:15Z | USD | MRC10006 | DEV20006 | branch | Houston | TX | US | 1 | 465 | 300 | false | blank |
| TXN000008 | purchase | 1500000 | true | electronics | ACC10007 | 2023-11-03T09:41:12Z | JPY | MRC10007 | DEV20007 | online | Osaka | OS | JP | 0 | 0 | 1 | true | card_not_present |
| TXN000009 | purchase | 98.5 | false | groceries | ACC10008 | 2023-11-02T22:32:48Z | CAD | MRC10008 | DEV20008 | POS | Toronto | ON | CA | 1 | 62.25 | 1462 | false | blank |
| TXN000010 | payment | 340.75 | false | education | ACC10009 | 2023-11-04T15:31:20Z | USD | MRC10009 | DEV20009 | branch | Boston | MA | US | 2 | 191 | 700 | false | blank |
| TXN000011 | deposit | 5500 | false | blank | ACC10010 | 2023-11-03T07:07:22Z | AUD | blank | blank | branch | Sydney | NSW | AU | 0 | 0 | 0 | false | blank |
| TXN000012 | purchase | 18.11 | false | restaurants | ACC10011 | 2023-11-04T18:42:51Z | USD | MRC10010 | DEV20010 | mobile | Miami | FL | US | 1 | 14.3 | 145 | false | blank |
| TXN000013 | deposit | 620 | false | blank | ACC10012 | 2023-11-02T03:59:16Z | INR | blank | blank | ATM | Mumbai | MH | IN | 0 | 0 | 3 | false | blank |
| TXN000014 | purchase | 52.99 | false | electronics | ACC10013 | 2023-11-01T21:31:50Z | USD | MRC10011 | DEV20011 | POS | Seattle | WA | US | 1 | 42.1 | 1865 | false | blank |
| TXN000015 | transfer | 10000 | true | blank | ACC10014 | 2023-11-04T10:16:34Z | CHF | blank | DEV20012 | online | Zurich | ZH | CH | 2 | 9600 | 109 | true | money_mule |
| TXN000016 | withdrawal | 500 | false | blank | ACC10015 | 2023-11-04T13:55:12Z | USD | blank | blank | ATM | Phoenix | AZ | US | 3 | 210 | 2786 | false | blank |
| TXN000017 | purchase | 455.15 | false | sports | ACC10016 | 2023-11-03T14:29:05Z | USD | MRC10012 | DEV20013 | mobile | Atlanta | GA | US | 2 | 377 | 401 | false | blank |
| TXN000018 | deposit | 102 | false | blank | ACC10017 | 2023-11-02T00:11:46Z | AUD | blank | blank | branch | Brisbane | QLD | AU | 1 | 0 | 0 | false | blank |
| TXN000019 | purchase | 25 | false | groceries | ACC10018 | 2023-11-04T02:21:55Z | USD | MRC10013 | DEV20014 | POS | Dallas | TX | US | 0 | 37 | 321 | false | blank |
| TXN000020 | withdrawal | 400 | false | blank | ACC10019 | 2023-11-04T09:14:43Z | USD | blank | blank | ATM | Denver | CO | US | 1 | 189 | 1322 | false | blank |
What the 200 rows show
from the 200-row sampleTransfer (transaction type) stands out: 17 of its 17 rows have is_
- 19%is_
international = true - 170.2median transaction_
amount - 5fraud types
- 6channels
- 11currencies
- 13location countries
Median 170.2, from 0.0 to 10,000,000.
- string 12
- integer 2
- float 2
- datetime 1
- boolean 2
Columns
19 columns in four groups| column | type | description | example |
|---|---|---|---|
| Text 12 columns | |||
transaction_id | string | Unique identifier for each transactionunique | TXN000001 |
account_id | string | Unique identifier for the account involved in the transaction | ACC10001 |
currency | string | Currency code in ISO 4217 format (e.g., USD, EUR)11 currencies | USD |
transaction_type | string | Type of transaction (e.g., purchase, withdrawal, transfer, deposit)7 values | purchase |
merchant_id | string | Unique identifier for the merchant or payee (if applicable)optional | MRC10001 |
merchant_category | string | Category of the merchant (e.g., groceries, electronics, travel)10 categories · optional | groceries |
device_id | string | Identifier for the device used to initiate the transactionoptional | DEV20001 |
channel | string | Channel through which the transaction was made (e.g., online, mobile, ATM, branch)6 values | POS |
location_city | string | City where the transaction was initiatedoptional | Chicago |
location_state | string | State or region where the transaction was initiatedoptional | IL |
location_country | string | Country where the transaction was initiated (ISO 3166-1 alpha-2 code)optional | US |
fraud_type | string | Type of fraud detected (if applicable), e.g., card_not_present, account_takeover5 types · optional | fake_merchant |
| Numbers 4 columns | |||
transaction_amount | float | Monetary amount of the transaction0 or more | 54.33 |
previous_transactions_24h | integer | Number of transactions made by the account in the previous 24 hours0 or more · optional | 1 |
avg_transaction_amount_7d | float | Average transaction amount for the account in the past 7 days0 or more · optional | 38.2 |
account_age_days | integer | Number of days since the account was opened0 or more · optional | 875 |
| Dates and times 1 column | |||
transaction_datetime | datetime | Date and time when the transaction occurred | 2023-11-04T14:23:55Z |
| True or false 2 columns | |||
is_international | boolean | Indicates if the transaction is cross-border/international | false |
is_fraud | boolean | Label indicating whether the transaction is fraudulent (1) or not (0) | false |
15 SQL practice questions for the Financial Transaction Fraud Features
Written for this data and checked against it: 12 SQL and 3 Power BI exercises from beginner to advanced. Try the first three free; the practice kit has all 15, a starter .sql file and an answer key with every expected result.
Fraudulent transactions list
Return transaction_id, account_id, transaction_amount and fraud_type for every transaction where is_fraud equals 1. Order the results by transaction_id ascending.
Tables: financial_transaction_fraud_features · your result: 4 columns, 25 rowsDistinct currencies
Return the distinct currency values found in the data as a single column named currency, sorted alphabetically.
Tables: financial_transaction_fraud_features · your result: 1 columns, 11 rowsTransactions per channel
Count the transactions in each channel. Return channel and txn_count, ordered by txn_count descending and then by channel ascending.
Tables: financial_transaction_fraud_features · your result: 2 columns, 6 rows
- 04Average amount by transaction typeBeginner
- 05Fraud count by countryPower BI
- 06Channels with high fraud rateIntermediate
- 07Amount size bucketsIntermediate
- 08Monthly transaction volumeIntermediate
- 09Accounts above overall average spendIntermediate
- 10International fraud ratePower BI
- 11Top accounts by spend within currencyAdvanced
- 12Previous amount per accountAdvanced
- 13Running fraud total by dateAdvanced
- 14Amount spikes versus 7-day averageAdvanced
- 15Fraud share by merchant categoryPower BI
Get the practice kit: the full dataset, all 15 exercises, a starter .sql and the answer key. One-time $3.99.
Get the practice kit · $3.99Use it for
A finance dashboard
The is_
international rate, transaction_ amount by transaction_ type and a breakdown of merchant_ category. Excel, Power BI or Tableau. Why do 38 of 200 rows have is_
international = true? A root-cause class exercise
Hand out the rows and one question. The answer is in the data, not in the brief.
- Transactions200TXN00000154.33purchaseTXN0000020refundTXN0000042500transfer
A software demo
Believable transactions with account_
id, transaction_ datetime and transaction_ amount to fill a screen in front of a buyer.
blueprint · financial-transaction-fraud-features
Behind this dataset
Same schema. As many rows as you need.
These 200 rows came out of a blueprint — 19 columns with generation rules behind each one. Open it in Data Factory to retune a column, add your own, wire in foreign keys, and run it at the size you actually need.
- Transactions have sender/receiver, amount, time
- Fraud events occur at realistic rates
- Geographic and device fingerprints included
- Highly correlated features for difficult modeling
- Regulatory-compliant data structure
1 credit per row. Preview 20 rows free. Buy rows for the full run.
- Exports
- CSV, JSON, JSONL, Parquet, SQL, Excel, TSV, XML
- Licence
- yours to use, including commercially
- API slug
- financial-transaction-fraud-features