Library
Transaction enrichment library for Spring Boot
Use TxnKit as a transaction enrichment API from Spring Boot. This page shows the safe request shape, a short code snippet, and the boundary for keeping sensitive data out of the integration.
Target intent
Spring Boot teams adding transaction enrichment to a backend service.
TxnKit is a request-time enrichment API and should not be used for batch statement ingestion.
Raw descriptor
AMZN MKTP CA*2R41Short Spring Boot API snippet
Map<String, Object> result = restClient.post()
.uri("https://api.txnkit.dev/v1/enrich")
.header("Authorization", "Bearer " + System.getenv("TXNKIT_API_KEY"))
.body(Map.of("raw_description", "AMZN MKTP CA*2R41", "country", "CA"))
.retrieve()
.body(new ParameterizedTypeReference<>() {});Keep API keys out of browser bundles. For frontend stacks, call a backend route or serverless function that owns the TxnKit request.
API-shaped output
{
"normalized_merchant": "amzn mktp ca 2r41",
"display_name": "Amzn Mktp Ca 2r41",
"category": null,
"subcategory": null,
"website": null,
"logos": {
"preferred": null,
"variants": [],
"warnings": [
"no_verified_logo_for_local_merchant"
]
},
"confidence": 0.56,
"recurring_hint": false,
"processor_hint": "unknown",
"location_hint": null,
"signals": [],
"warnings": [
"local_merchant_identity_not_verified"
]
}Low-confidence results should keep fallback labels and warnings visible instead of forcing a guessed logo or website.
When to use
- You are building in Spring Boot and need one-descriptor merchant cleanup through an HTTP API.
- Your app can keep the TxnKit API key on the server side or inside a trusted serverless function.
- You need merchant display names, categories, confidence, signals, warnings, and logo-ready metadata.
When not to use
- TxnKit is a request-time enrichment API and should not be used for batch statement ingestion.
- 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.