Skip to main content
Flinks offers multiple categorization capabilities that transform raw transaction data into structured, actionable insights. This guide explains the different categorization types and how they work together.

Broad Categorization vs Transaction Categorization

Flinks provides two levels of categorization:

Broad Categorization

Assigns a Category and SubCategory to every transaction. This is included as part of the Enrich product and provides a standardized view of spending and income patterns.
  • Covers all transaction types (debits and credits)
  • Assigns one of 15+ primary categories (e.g., Food & Dining, Income, Utilities)
  • Available for both Canadian and US transactions
  • For the full list, see Transaction Categorization

Transaction Categorization (Attributes)

Goes deeper than broad categorization by extracting specific financial signals used in lending, underwriting, and risk assessment. Available through Enrich Attributes packages, this includes:
  • Income detection and classification
  • Recurring payment identification
  • NSF (non-sufficient funds) and overdraft tracking
  • Loan and cash advance detection
  • Custom attribute packages tailored to specific use cases

Income detection

Flinks identifies and classifies income transactions, distinguishing between:
  • Employment income — Regular salary and wage deposits
  • Government benefits — Social assistance, tax refunds, pension payments
  • Freelance / gig income — Irregular income from multiple sources
  • Other income — Interest, dividends, rental income

Use cases

Use caseHow income detection helps
LendingVerify stated income against actual deposits for affordability assessment
BNPL (Buy Now, Pay Later)Assess repayment capacity in real time before approving a purchase
Account openingUnderstand a customer’s income profile during onboarding

Categorization accuracy

Flinks categorization models achieve >85% accuracy across transaction types, with continuous improvement as models are retrained on new data. Factors that affect accuracy:
  • Transaction string quality — Banks format transaction descriptions differently. Some include merchant names, while others use abbreviated codes.
  • Region and language — Models perform best on English and French transactions in Canada and the US.
  • Transaction type — Common merchants (major retailers, utilities) have higher accuracy than niche or local businesses.

Merchant normalization

Raw transaction descriptions from banks are often cryptic:
CHECKCARD 0315 STARBUCKS STORE 12345 TORONTO ON
Flinks normalizes these into clean, readable merchant names:
Starbucks
Merchant normalization:
  • Strips transaction codes, dates, and location suffixes
  • Maps variations of the same merchant to a single canonical name
  • Works across different banks and transaction formats
This makes it possible to aggregate spending by merchant across accounts and institutions.

Custom rules

Clients can layer their own categorization rules on top of Flinks attributes. This is useful for:
  • Reclassifying transactions based on your business logic
  • Adding industry-specific categories not in the standard taxonomy
  • Flagging specific merchants or transaction patterns
Custom rules are applied after Flinks categorization, so you always receive the base categorization plus your custom overrides.

Coverage

RegionBroad CategorizationTransaction Categorization (Attributes)
CanadaSupportedSupported
United StatesSupportedSupported
Accuracy varies by region and language. Transaction string quality depends on the financial institution — some banks provide detailed descriptions while others use abbreviated codes.