Skip to main content
Transaction enrichment uses the same Brand endpoint as domain and email lookups. Send one raw descriptor and, when available, include merchant category and location hints.
The response does not include a public confidence score. Use high_confidence_only when a wrong match is more costly than an unresolved transaction, and keep an explicit unresolved state in your product.

Identify a merchant

The PHP tab uses the SDK’s low-level request method because the 2.14.0 Brand helper requires conflicting lookup fields. See the PHP guide for details.
The endpoint costs 10 credits. It returns the shared Brand response, whose nested fields are independently optional.

Add matching hints

Do not invent missing MCC, geography, or phone values. Incorrect hints can be worse than omitted hints.

Model unresolved transactions

Merchant descriptors are noisy and some cannot be mapped reliably. Treat that as a normal product state:
  • Keep the original descriptor for auditability.
  • Distinguish an unresolved merchant from a timeout or service error.
  • Provide a neutral category fallback instead of assigning an unverified logo.
  • Do not display high_confidence_only as a numeric score. It is a request mode, not a score returned by the API.

Cache matches

Cache successful matches in your application when repeated descriptors are common. Include any matching context that can change the result:
Normalize casing and whitespace for the cache key, but send the original descriptor to Context.dev. Use a shorter negative-cache window than your successful-match window so previously unresolved merchants can be retried.

Review uncertain matches

For expense, compliance, or financial-reporting workflows, semantic validation belongs in your application:
  • Compare the returned domain and title with the raw descriptor and transaction context.
  • Keep human review for consequential or ambiguous matches.
  • Store the input, result, and lookup time needed for your audit trail.
  • Never infer that a returned address is a legal entity or headquarters address unless you verify it separately.

Next steps

Merchant transaction feeds

Add readable merchant rows, unresolved states, and saved corrections.

Retrieve brand data

Understand the shared brand response model.

Troubleshooting

Handle lookup failures and decide when to retry.

Brand API reference

Review the complete transaction lookup contract.
Use timeouts and partial results to choose the deadline behavior. Partial Brand profiles omit fields that have not completed; retain partial: true instead of treating an incomplete profile as a complete cached record.