No cardholder data changes hands
Enrichment works from the descriptor, the amount and the timestamp. It doesn't need to know who the cardholder is, and we never receive that information.
Cards and authorization
A location-scoped spend control needs the exact store, not a brand name. Smartbills resolves the descriptor to the site at authorization and attaches the receipt once issued.
Smartbills resolves each descriptor to the store itself, with its address and geocode, fast enough to sit in the authorization path.
A chain with four hundred locations resolves to the one your cardholder walked into, with an address and geocode. Controls scoped to a site, region or category stop declining purchases they should allow.
When a network merchant issues the receipt, a webhook moves the transaction from resolved to known and the basket appears under it, without the cardholder photographing anything.
Enrichment works from the descriptor, the amount and the timestamp. It doesn't need to know who the cardholder is, and we never receive that information.
Why teams switch
A chain with four hundred locations resolves to its head office, so we can't tell where the card was used.
The descriptor resolves to the store the cardholder actually walked into, and comes back with a street address and geocode you can scope a control to.
Controls scoped to a site keep declining purchases they were written to allow.
Location and category are resolved before the authorization decision. The rule runs against a real merchant record and a legitimate purchase goes through on the first try.
Cardholders end up photographing a receipt to explain a charge we already approved.
When the merchant issues the receipt, a webhook attaches it to the transaction with its line items. The explanation is already on the row when anyone looks.
Two ways to ship it: call the API at authorization and render the result yourself, or place our receipt view next to the transaction in your app.
Send descriptor, amount and timestamp in the authorization path. No cardholder identifier is needed or received.
A chain resolves to the location where the card was tapped, with its address and geocode.
If the merchant issues one, a webhook upgrades the transaction from resolved to known.
On your statement and in your app, with your own threshold for what's confident enough to show.
An itemized receipt view that opens from any transaction row in your card app.
The batch endpoint fills in the past statements your cardholders couldn't make sense of.
POS push and mailbox capture add receipts as purchases happen. Nobody photographs a slip.
The row updates in place when the document arrives after authorization.
Each product works on its own, and when you run two, the same record carries from the receipt to the ledger entry.
Resolve a card descriptor into a business your customer recognizes, with logo, location and category, plus the itemized receipt when the merchant sent us one.
Itemized receipts from the merchant's point of sale, shown inside your own app under the transaction they belong to. For banks, fintechs, retailers and any app built on the API.
Corporate cards with receipt capture, coming soon: the itemized receipt arrives with the card transaction, and each card's limit comes from your budget.
FAQ
What people ask us before they sign up.
Get started
Send us a backfill of past authorizations and we'll report matched, resolved and unresolved per market before you write any code.