Pass any string to get clean merchant data
Starbucks
Uniqlo
LEGO
Woolworths
Zalando
Boots
Raw transaction string
US
Starbucks
starbucks.com
Food & Drink
Get the right merchant every time
Resolution
Works with any input
We filter out processor codes, store numbers, and filler text to expose the actual brand name.
Accuracy
Context-aware merchant resolution
Add a country code to match local brands, preventing confusion with global giants.
One response
One call for the full brand profile
Name, website, logos (in many formats), colors, industry, location.
Coverage
Big brands as well as the corner shop
Merchants we haven't seen get crawled live, on the first request.
Compliance
First-party data, no PII, SOC 2 Type II
No cardholder data, just send the transaction string or normalized label.
Delivery
Clean entire databases in bulk
One API that matches, formats, and updates merchant data across your entire database.
Enrich millions transactions in one pass
Scan millions of rows to fill missing logos, clean names, and sort categories.
Identify merchants as charges arrive
Turn messy transactions into clear logos and names instantly when a card is swiped.
Track rebrands automatically
We notify your system of any logo updates, keeping your app current.
Use case
Where merchant data does the work
Neobanks and PFM apps
Give every transaction a recognizable merchant name and identity.
Replace cryptic strings with recognizable merchants
Help users understand unfamiliar charges instantly
Support local merchants as well as major brands
Card issuers and banks
Show clear merchant identity when customers review charges.
Display the merchant behind unfamiliar charges
Make statements easier to understand across payments
Reduce confusion, support tickets, and disputes
Open banking and payments
A merchant directory you don't maintain by hand.
Resolve merchants your internal matching misses
Refresh logos across millions of merchants at once
Turn normalized merchant names into current brand data
Data aggregators
Enrich transaction feeds without building merchant data yourself.
Enrich transactions before they reach customers
One integration covers every market you serve
First-party assets your customers can display legally
"Brandfetch's global brand library made transactions more identifiable for our users which resulted in a reduction in customer chargebacks for our clients and improved the value of our Merchant API"

Michael Praveen
Principal Director at Envestnet | Yodlee
Frequently asked questions
Your questions, answered
What is Transaction API?
One endpoint that takes a raw bank transaction and returns the merchant behind it: name, domain, logo, industry, and location.
What input does it need?
The raw transaction string from your feed, or your own normalized label, plus an ISO country code to get the right match when merchants share a name.
What if the merchant isn't in your dataset?
It gets crawled live on the first request. If nothing resolves you get a clean empty response, never a wrong guess.
Do you receive any cardholder data?
No. Send the merchant string only. We enforce a strict no-PII policy and are SOC 2 Type II certified.
What logo formats do you return?
SVG, PNG, and WEBP. In light and dark variants, plus icons and symbols. Pick what fits your row height.
How does pricing work?
Per API call, with volume pricing for large backfills. Brand licensing for redistribution is agreed separately.
Can I display these logos in my app?
Yes. We index first-party assets only, and enterprise agreements cover redistribution and retention. See the logo fair use guide.
Can you handle our volume?
Yes. You can send batch jobs to backfill millions of records, while real-time requests resolve instantly as transactions happen. Rate limits depend on your plan, with custom limits set for enterprise customers.
Where are the docs?
For full reference, code samples and webhook setup, click here

