Transaction Categorization

Transaction categorization is a feature where we classify your Transactions into useful categories (Restaurants, Gas Stations, Income, etc.) using our categorizer AI engine. This allows you to quickly summarize, group, and extract valuable insights from your items' transactions right out of the box.

For example, you could understand how much a user spent last month on eating, how much in services, and so on, and with this show them a summary of their expenses (like in our Creating a use case from scratch guide), or you can use it to create any kind of solutions, from client profiling to income analysis.

Using categorization

We return the result of our categorization in the category field of a transaction, this is the main category matched by our model.

{
    "id": "6ec156fe-e8ac-4d9a-a4b3-7770529ab01c",
    "description": "TED Example",
    "amount": 1500,
    "date": "2021-04-12T00:00:00.000Z",
    // Categoy's name is provided 
    "category": "Transfer - TED",
    "categoryId": "05080000",
    ...
}

The category will be a string if there was a category found, or null if we could not interpret any known category.

📘

Trial/Premium feature

Categorization is enabled by default during trial period. After that, it is an opt-in premium feature.

If you do not have the transaction categorization feature enabled, category will be null for all transactions.

How categories are organized

View all possible categories in our GET /categories endpoint. We can find the transaction's category in this list with its categoryId:

[
  {
    "id": "05080000",
    "description": "Transfer - TED",
    "descriptionTranslated": "Transferência - TED",
    "parentId": "05000000",
    "parentDescription": "Transfers"
  },
  ...
]

We can see its translation to Portuguese in the descriptionTranslatedfield.

You might notice that it has a parentDescription Transfers. This means that it is under a more general category called Transfers:

[
  ...
  {
    "id": "05000000",
    "description": "Transfers"
  },
  ...
]

Categories are organized in a tree. This allows you to use more general or specific categories, depending on your particular needs. The Category Tree is detailed at the bottom of this guide.

Category accuracy

As much as we constantly train our categorizer model, categorization is never perfect. In case you encounter a wrong category in a transaction, you can correct it by using our Transaction Update endpoint, or from Demo by clicking on its Category field.

After you submit a category correction, you will get corrected category field on the transaction, and also provide feedback on the correct annotation into our model, further improving the quality of categorization.

Category Rules

Pluggy works on continuous improvement of categorization accuracy, to provide the best labels in the market, but sometimes we may return labels that are not aligned to customer expectations. Category rules allow customers to add their own rules before our labeling solution & provide instant feedback to our model, which could later be established as a data point on our ML model.

The Category Rules will be used at the beginning of the process, to label the transactions with your desired category. These rules have an insensitive exact match with the information provided to categorize. Category Rules are client specific, and are only valid for an specific client_id

Transactions that are recategorized will automatically create a Category Rule for the transaction's client.

For more information visit our API Reference.

Category Tree

Level 1Level 2Level 3
IncomeSalary
Retirement
Entrepreneurial activities
Government aid
Non-recurring income
Loans and FinancingLate payment and overdraft costs
Interests charged
Loans
Financing- Real estate financing
- Vehicle Financing
- Student loan
InvestmentsAutomatic investment
Fixed income
Mutual funds
Variable income
Margin
Proceeds interests and dividends
Pension
Same person transferSame person transfer - Cash
Same person transfer - PIX
Same person transfer - TED
TransfersTransfer - Bank slip (Boleto)
Transfer - Cash
Transfer - Check
Transfer - DOC
Transfer - Foreign exchange
Transfer - Internal
Transfer - PIX
Transfer - TED
Credit card payment
Third-party transfersBank slip
Debt card
DOC
PIX
TED
Legal obligationsBlocked balances
Alimony
ServicesTelecommunicationsInternet
Mobile
TV
EducationOnline Courses
University
School
Kindergarten
Wellness and fitnessGyms and fitness centers
Sports practice
Wellness
TicketsStadiums and arenas
Landmarks and museums
Cinema, theater and concerts
ShoppingOnline shopping
Electronics
Pet supplies and vet
Clothing
Kids and toys
Bookstore
Sports goods
Office Supplies
Cashback
Digital servicesGaming
Video streaming
Music streaming
GroceriesN/A
Food and drinksEating out
Food delivery
TravelAirport and airlines
Accommodation
Mileage programs
Bus tickets
Donations
Gambling- Lottery
- Online bet
-
-
Taxes- Income taxes
- Taxes on investments
- Tax on financial operations
-
-
-
Bank fees- Account fees
- Wire transfer fees and ATM fees
- Credit card fees
-
-
-
HousingRent
Houseware
Urban land and building tax
UtilitiesWater
Electricity
Gas
HealthcareDentist
Pharmacy
Optometry
Hospital clinics and labs
Transportation- Taxi and ride-hailing
- Public transportation
- Car rental
- Bicycle
Automotive- Gas stations
- Parking
- Tolls and in-vehicle payment
- Vehicle ownership taxes and fees
- Vehicle maintenance
- Traffic tickets
Insurance- Life insurance
- Home Insurance
- Health insurance
- Vehicle insurance
-
-
-
-
Leisure--