Overview
What Noryo Merchant API does, its three routes, the rules to know before writing any code, and where to start.
Noryo Merchant API turns a raw bank descriptor (the descriptor, as the bank prints it on a statement) into a merchant identity: a name, a category, a logo and a location when they are known, and a confidence score. The API answers in JSON over HTTPS. Its machine contract is an OpenAPI 3.1 document, from which the API reference is generated.
This documentation describes what the server actually does. A capability that does not exist is not described.
Three routes, no batch
POST /merchant/v1/enrichments
GET /merchant/v1/enrichments/{enrichment_id}
POST /merchant/v1/enrichments/{enrichment_id}/refreshHTTP| Route | What it does | What it costs |
|---|---|---|
POST /merchant/v1/enrichments | Enriches a descriptor and returns a result identified by an enrichment_id | 1 unit if the result is resolved, nothing otherwise |
GET /merchant/v1/enrichments/{enrichment_id} | Reads a past result back | Never billed |
POST /merchant/v1/enrichments/{enrichment_id}/refresh | Recomputes the identity and returns a new enrichment_id | 1 unit if the result is refresh_recalculated, nothing otherwise |
One request carries one transaction. There is no batch route.
Rules to know before writing any code
- A
200does not mean a merchant was found. Readenrichment.status:not_foundis a normal, complete answer. See Reading the response. - A create call needs at least one identifier: the
Idempotency-Keyheader, theexternal_transaction_idfield, or both. With neither, the API refuses with400 identifier_required. See The two identifiers. confidenceis a score, not a probability. Noryo has measured that its ordering is not monotonic at the top of the range. See Confidence.- The key carries the environment:
nry_mer_sbx_for Sandbox,nry_mer_live_for Production, on the same URL. See Environments. - The raw descriptor is not retained, and the content of a result is kept for 90 days. See Retention and 410.
- Every error is an RFC 9457 Problem Details object whose
codefield is the only machine contract. See Errors and the error catalogue.
Version and host
The version belongs to the family: /merchant/v1. A future merchant/v2 would live beside v1 rather than replace it.
The host is not part of the contract. Noryo may serve the API from more than one domain, and no hostname enters any identity, hash or signature. The contract currently declares https://api.noryo.app: put that value in your base URL configuration rather than in your code. See Versioning and governance.
Where to start
- Quickstart: one enrichment, its replay, its read-back and its refresh, with real responses.
- Core concepts: the API's vocabulary on one page.
- Authentication and API keys: getting and presenting a key.
- Requests: headers, idempotency, formats and validation.
- Enrichments: create, read, refresh, statuses and lifecycle.
- Operations: rate limits, retries, timeouts, errors and request IDs.
Sandbox is free and carries a lifetime allowance of 2,000 units per organisation. Production is not self-service: it opens after Noryo has reviewed an application. See Sandbox and Going live.
Published on 2026-10-08 21:04 UTC (version 1).