How WhoBilled.me Identifies Charges

WhoBilled.me is a reference database, not a blog. This page explains exactly how a billing descriptor gets matched to a merchant, how confident each kind of record is, and how corrections work.

Matching

When you search a charge, we match your text against the database two ways: exact descriptor matching (the precise string as it appears on statements, like BKG*HOTEL AT BOOKING.C) and normalized matching (punctuation, spacing, case, and store-number suffixes stripped, so COSTCO WHSE #0119 and COSTCO-WHSE 0119 resolve to the same record). Descriptors from payment facilitators (like MB*MINECRAFT) are additionally decomposed into the processor and the sub-merchant you actually bought from.

Evidence tiers

Every record shows which of these tiers it belongs to. Higher tiers override lower ones, and a correction marked verified can never be overwritten by an automated process.

Merchant-verified
The merchant has claimed the record and confirmed its details through Descriptors.com. Shown with a green Verified badge.
Payment-industry sourced
The descriptor-to-merchant link comes from acquirer, processor, or issuer data — including descriptor strings card issuers field the most confusion calls about. Includes merchant category codes (MCC) where known.
Team-verified correction
A record our team has manually researched and corrected, cross-checked against the merchant's own public presence. Marked verified so it cannot regress.
AI-identified
The merchant was identified from public business information by our identification pipeline and cross-checked against business-registry data. Always labeled "AI-identified — not yet merchant-verified" in gray, never with a green Verified badge.
Suspected match / Unidentified
Where evidence is incomplete, the record says so plainly: "Suspected merchant — not yet confirmed," or an unidentified descriptor page that exists so cardholders searching that exact string still get honest guidance instead of silence.

What we will and won't claim

Identifying a descriptor tells you who a charge is from. It cannot tell you whether your specific transaction was authorized — someone who shares your card may have made the purchase, or in rare cases a fraudster may have used a legitimate merchant. That's why every page separates merchant identification from transaction legitimacy, and recommends contacting the merchant before disputing with your bank.

Freshness

Each record displays its "last updated" date. Content changes — new identifications, corrections, merchant claims — are pushed to search engines the same day they happen.

Corrections and disputes

If a record is wrong, we want to know. Use the "Was this helpful?" and feedback controls on any charge page, and a human reviews the report. Confirmed mis-attributions are corrected at the data layer: the descriptor is repointed to the right merchant, the fix is marked verified, and the corrected page replaces the old answer everywhere the same day. Merchants who find their descriptors misrepresented can claim the record and take direct control of it.

About the database

Scale, sources, and update practices are documented at About the WhoBilled.me Billing Descriptor Database.