Enrichment · Early Access

Every transaction, resolved to a real merchant

Raw descriptors are cryptic. Astrada Enrichment matches each transaction to a verified business — clean name and logo, category, and street-level location — fast enough to use at authorization.

From descriptor to verified business

We don't just clean up messy strings. Each transaction is matched against a database of verified businesses — so the record you receive describes the merchant, not the processor's abbreviation of it.

POST /webhooks — transaction.enriched
// what the network sends
"descriptor": "TST* HNK 042 NEW YO", "mcc": "5812"

// what your platform receives — enrichment.merchant.created
{
    "merchant": {
      "name": "Hanoi Kitchen",
      "category": "Restaurants"
    },
    "location": {
      "address": "114 Ludlow St", "city": "New York",
      "state": "NY", "postalCode": "10002", "phoneNumber": "+1212…"
    },
    "_links": {
      "message":       { "href": "/transaction-messages/b3a3c651…" },
      "merchant":      { "href": "https://hanoikitchen.nyc" },
      "merchant-logo": { "href": "https://cdn…/logo.png" }
    }
}
Verified merchant identity Non-MCC categorization Street-level location Real time, in the auth flow

What enrichment returns

Every field below arrives on the same API as your real-time network feed — no second integration, no second vendor.

Location precision

Physical transactions resolve to a street address, city, region, and postal code — not just a city guess. Built for receipt matching. Latitude/longitude is on the roadmap.

Logos, websites & contact info

Brand logos, merchant websites, and phone numbers on matched transactions — the details that make a feed instantly recognizable and cut "what is this charge?" tickets.

Normalization on everything

Even unmatched transactions come back cleaned: normalized capitalization and structure, noise removed, misplaced data sorted into the right fields. Nothing raw ever reaches your UI.

Who was paid — and what was bought

Merchant-level data and line-item detail land on the same transaction record: recognizable to users, itemized for the books.

Level 2/3 Data

What was bought

Line-item settlement detail, itemized on transactions that support it — straight from the network.

Line items with quantities and unit prices
Tax amounts and rates per transaction
GL coding and policy at the line-item level
Same webhook, same transaction record

What platforms build with it

Recognizable spend feeds

Clean names, logos, and locations mean users recognize their purchases — fewer support tickets, faster approvals, shorter dispute cycles.

Accurate coding & analytics

Persistent merchant IDs and four-tier categories make GL coding, policy rules, and merchant-level reporting reliable — no regexes on descriptors.

Controls at authorization

Enrichment returns fast enough to sit inside your authorization flow — so a resolved merchant and category can inform policy while the transaction is still open, not after it settles.

Know every merchant. In real time.

Enrichment ships on the same API as your network feed. Turn it on with a config change — no second integration.