Financial Transaction Fraud Patterns

This dataset provides detailed records of financial transactions, labeled as either legitimate or fraudulent, with comprehensive contextual information such as account, merchant, location, device, and channel data. It is designed to support the development and evaluation of fraud detection algorithms, enabling advanced pattern analysis and risk assessment in financial services. The inclusion of both fraudulent and legitimate cases makes it ideal for supervised machine learning and anomaly detection research.

  • last updated 21 Jul 2025
  • by GoMask
The brief that made it

Training and benchmarking machine learning models for fraud detection

Sample rows

preview · 8 of 200 rows · all 22 columns
transaction_idstringtransaction_typestringamountfloatis_fraudbooleanmerchant_categorystringaccount_idstringtransaction_datetimedatetimecurrencystringmerchant_idstringmerchant_namestringlocation_street_addressstringlocation_citystringlocation_statestringlocation_postal_codestringlocation_countrystringchannelstringfraud_typestringfraud_reported_datetimedatetimedevice_idstringip_addressstringuser_agentstringnotesstring
TXN000001purchase57.42falsegroceriesACC1023452022-01-12T15:28:09ZUSDMRC1201WholeMart Market1723 Main StDallasTX75201USin-personblankblankblankblankblankblank
TXN000002purchase120.5falserestaurantsACC2034562022-03-09T13:54:22ZEURMRC1032La Vie Boulangerie19 Rue de la PaixParisIDF75002FRin-personblankblankblankblankblankLunch with client
TXN000003purchase45.99falseelectronicsACC3045672022-05-22T19:10:47ZUSDMRC1510BestBuy Electronics950 Market StSan FranciscoCA94102USin-personblankblankblankblankblankblank
TXN000004purchase220.75falsebooksACC4056782022-06-01T08:46:31ZAUDMRC2071Bookworm Library33 George StSydneyNSW2000AUin-personblankblankblankblankblankPaid by card
TXN000005purchase89.1falsegroceriesACC5067892022-07-14T20:19:25ZCADMRC3201FreshMart2310 King St WTorontoONM5V3E9CAin-personblankblankblankblankblankEvening grocery run
TXN000006purchase17.3falsepharmacyACC6078902022-09-18T16:03:58ZJPYMRC4132Tokyo Pharmacy8 Chome-2 GinzaTokyoTKY1040061JPin-personblankblankblankblankblankblank
TXN000007purchase135.25falserestaurantsACC7089012022-10-03T12:48:11ZUSDMRC1870GreenLeaf Restaurant4127 Oak AveChicagoIL60603USin-personblankblankblankblankblankBirthday dinner
TXN000008purchase39.87falsepharmacyACC8090122022-12-10T10:22:34ZUSDMRC2112Pharma Health678 Health BlvdMiamiFL33101USin-personblankblankblankblankblankPrescription pickup

What the 200 rows show

from the 200-row sample

Transfer (transaction type) stands out: 17 of its 29 rows have is_fraud = true, against 4 of 171 for the rest.

  • 11%is_fraud = true
  • 81.0median amount
  • 4fraud types
  • 6channels
  • 9currencies
  • 10location countries
Is fraud rate by transaction_typeis_fraud = true
0%50%100%7%with…1 of …0%depo…0 of …59%tran…17 of…0%paym…0 of …2%purc…2 of …7%refu…1 of …0%other0 of 1
amount200 rows, in bands of 100M
01002001960000000040500M1Bamount →

Median 81.0, from 0.0 to 1,000,000,000.

merchant_category106 rows with a value · 94 left blank
  1. electronics26
  2. groceries24
  3. books23
  4. restaurants14
  5. pharmacy14
  6. travel2
  7. other2
  8. services1
22 columns by typefrom the column list below
  • string 18
  • float 1
  • datetime 2
  • boolean 1

Columns

22 columns in four groups
blueprint · 22 columns
columntypedescriptionexample
Text 18 columns
transaction_idstringUnique identifier for each financial transactionuniqueTXN000001
account_idstringUnique identifier for the account involved in the transactionACC102345
currencystringISO 4217 currency code used in the transaction (e.g., USD, EUR)9 currenciesUSD
transaction_typestringType of transaction (e.g., withdrawal, deposit, transfer, payment, purchase)7 valuespurchase
merchant_idstringUnique identifier for the merchant or recipient (if applicable)optionalMRC1201
merchant_namestringName of the merchant or recipient (if applicable)optionalWholeMart Market
merchant_categorystringCategory of the merchant (e.g., groceries, electronics, travel, services)8 categories · optionalgroceries
location_street_addressstringStreet address where the transaction took place (if available)optional1723 Main St
location_citystringCity where the transaction took place (if available)optionalDallas
location_statestringState or province where the transaction took place (if available)optionalTX
location_postal_codestringPostal code of the transaction location (if available)optional75201
location_countrystringCountry where the transaction took place (if available, ISO 3166-1 alpha-2 code)10 countries · optionalUS
channelstringChannel through which the transaction was initiated (e.g., online, in-person, mobile, ATM)6 valuesin-person
fraud_typestringType of fraud detected (if applicable, e.g., card theft, account takeover, phishing)4 types · optionalaccount takeover
device_idstringUnique identifier for the device used to initiate the transaction (if available)optionalWEB-43221
ip_addressstringIP address from which the transaction was initiated (if available)optional198.51.100.22
user_agentstringUser agent string of the device/browser used (if available)optionalMobileBankApp/3.2
notesstringAdditional notes or comments about the transaction or fraud caseoptionalLunch with client
Numbers 1 column
amountfloatMonetary amount of the transaction0 or more57.42
Dates and times 2 columns
transaction_datetimedatetimeDate and time when the transaction occurred2022-01-12T15:28:09Z
fraud_reported_datetimedatetimeDate and time when the fraud was reported (if applicable)optional2023-08-22T13:00:00Z
True or false 1 column
is_fraudbooleanIndicates whether the transaction is fraudulent (true) or legitimate (false)false

Use it for

  • is fraud11%21 of 200 rowsmean amount by transa…480.0with…4.5depo…138.2Mtran…77.7paym…

    A finance dashboard

    The is_fraud rate, amount by transaction_type and a breakdown of merchant_category. Excel, Power BI or Tableau.

  • Why do 21 of 200 rows have is_fraud = true?

    A root-cause class exercise

    Hand out the rows and one question. The answer is in the data, not in the brief.

  • A software demo

    Believable transactions with account_id, transaction_datetime and amount to fill a screen in front of a buyer.

Not quite right?

Make it yours.

Same 22 columns, your size and your rules. See 20 rows before you pay.

Preview 20 rows free

1,000 rows: $1.99 · 10,000: $12.99One-time. No subscription. All prices

This dataset200 rows22 columns
Yours1,000 rows22 columnslocation_street_address: UK only

blueprint · financial-transaction-fraud-patterns

Behind this dataset

Same schema. As many rows as you need.

These 200 rows came out of a blueprint — 22 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.

Rules it was built with
  • Each transaction labeled as fraudulent or legitimate.
  • Includes transaction amount and merchant type.
  • Timestamp and anonymized account ID required.
  • Multiple fraud types annotated.
Rows
Open the blueprint in Data Factory

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-patterns

What should your data show?

Preview 20 rows free
No signup. No card.