Compare
Logo.dev alternative for merchant logo metadata
TxnKit is a focused cleanup layer for teams evaluating Logo.dev. Use it when the transaction feed already exists and the visible merchant row still looks unfinished.
Target intent
teams comparing logo APIs for transaction feed UI.
TxnKit treats logos as reviewed metadata, not decoration.
Raw descriptor
PAYPAL *ACME-SUPPLYAPI-shaped output
{
"input": {
"descriptor": "PAYPAL *ACME-SUPPLY",
"country": "CA"
},
"output": {
"merchant_name": "Acme Supply",
"category": "Business supplies",
"confidence": "medium",
"signals": [
"processor_pattern",
"merchant_alias",
"category_hint"
],
"warnings": [
"review_low_confidence_matches_before_showing_logo"
],
"logos": []
}
}Low-confidence results should keep fallback labels and warnings visible instead of forcing a guessed logo or website.
No public merchant-logo examples
TxnKit explains logo metadata without presenting unlicensed merchant marks as sample output. Low-confidence responses should suppress logo display.
Supported variant field
| Field | Use |
|---|---|
format, width, height | Choose assets sized for transaction rows, receipt detail, and profile views. |
theme, background, shape | Pick light, dark, transparent, square, rounded, or monochrome-safe variants. |
purpose, source, confidence | Prefer reviewed logo metadata and suppress weak identity matches. |
When to use
- You already receive transaction data and need a narrower Logo.dev alternative for display enrichment.
- Your app needs merchant names, categories, confidence, warnings, and logo-ready metadata.
- You want deterministic enrichment behavior without live LLM, crawler, logo-provider, or third-party enrichment calls.
When not to use
- TxnKit treats logos as reviewed metadata, not decoration.
- Do not use TxnKit to process card numbers, account numbers, full statements, bank credentials, emails, phone numbers, addresses, customer names, or customer PII.
- Do not use TxnKit when the product requirement is guaranteed merchant identity, every-merchant resolution, or contracted uptime terms.
Proof surfaces
The public contract is POST /v1/enrich, backed by the OpenAPI file, benchmark examples, privacy rules, and deterministic request-path tests.