Open · O4
Documented interfaces and export
Are ABIs, event schemas, an API schema, and a payee data export in a non-proprietary format all in the repo?
Why it matters
Interfaces and exports are what let you integrate without the vendor's SDK and leave with your records intact.
Scoring anchors
| ABIs, event schemas, API schema (OpenAPI or equivalent), and a payee data export in a non-proprietary format, all in the repo. | |
| ABIs and API schema; export absent or proprietary. | |
| Documented only. | |
| None. | |
| No admissible evidence submitted yet. Counts as 0 in the pillar. |
Admissible evidence
- Files at a pinned commit verified
Common failures
- API reference only on a hosted docs site, not versioned with the code.
Current ratings
| Provider | Score | Finding |
|---|---|---|
| Aleo (credits.aleo private transfers) | The program interface and the node API are versioned in the repos. We found no payee export format in the CLI or SDK. Scored 2: interfaces present, export absent. | |
| AnomaPay | Interfaces are documented on a hosted site, not versioned with code; no payee export. Scored 1. | |
| Avalanche Card | No admissible evidence yet. | |
| Avici Card | No admissible evidence yet. | |
| Aztec (Alpha mainnet private token transfers) | ABIs, events and the node API schema are versioned in the repo. We found no payee export format in the wallet tooling. Scored 2: interfaces present, export absent. | |
| Bitget Wallet Card | Interfaces are documented on a hosted docs site, not versioned in a repo. No payee export format is specified. Documented only, so 1. | |
| Blanksquare (Shielder) | Interfaces can be derived from verified source, and the docs describe the SDK, but no ABI file, API schema or payee export is committed. Judgment call: 1, as the interface record is source and hosted docs only. | |
| COCA Card | No admissible evidence yet. | |
| Coinbase Commerce (Onchain Payment Protocol) | ABIs can be derived from the verified source, and the events are in the repo. No repo has an API schema; the Charge API was only ever described on hosted docs, which are now replaced by a migration page. We found no payee data export in any format. Judgment call: we score 1, because the API schema is not in the repo. | |
| Curvy | ABIs and events are in the repo, and the SDK carries a typed client for the API. No API schema (OpenAPI or equivalent) is published, and there is no payee export. Judgment call: the required API has no schema in the repo, so we take the lower anchor, 1. | |
| Daimo Pay | ABIs can be derived from the verified source, and the event schemas are in the repo. The repo's API schema covers only the endpoints the browser uses. The full merchant API is described only in a hosted OpenAPI file, which is the documented common failure. No payee data export exists in any format. Judgment call: we score 1 and not 2, because the API schema is not in the repo. | |
| Deblock Card | No admissible evidence yet. | |
| Ethena Pay | ABIs and event definitions can be pulled from the explorer for the wallet facets, but nothing is versioned in a repo, there is no API schema, and no export format is published. Judgment call: explorer ABIs are more than "none" but less than repo files, so 1. | |
| ether.fi Cash | Event schemas and interfaces exist in source, so ABIs can be rebuilt. The method reference lives only on the hosted docs. There is no API schema, and the only export is a cardholder CSV from the closed app, with no payee export. Judgment call: ABIs are derivable but not committed and the API schema is absent, so this does not reach 2; it is "documented only" = 1. | |
| Exa Card | ABIs, events and an API schema generator are versioned with the code. The cardholder export is a PDF statement (server/api/activity.ts); there is no payee export, since merchants are paid through Visa. Judgment call: the API schema is generated rather than committed, and there is no payee export, so 2. | |
| Fluidkey | Contract interfaces are public, but there is no API schema for the backend, and the transaction export is documented only. Scored 1. | |
| Fuse Card | No admissible evidence yet. | |
| Gnosis Pay | ABIs, event definitions and an API schema (generated from OpenAPI) are in repos. The only export is a cardholder-side CSV of card transactions; there is no payee (merchant) export, because merchants are paid through Visa. Judgment call: the payee-export requirement is not met, so 2. | |
| HesabPay | A REST API and a statement export are documented. Nothing is versioned in a public repo, and the export format is not named. Judgment call: the API reference at developers.hesab.com is a client-rendered app whose docs routes appear to sit behind login, so this score rests on the terms and policy text, not on a published API schema. | |
| Hinkal | Contract interfaces and events are in the repo. The API schema (OpenAPI) and the export feature are documented on the hosted docs site only, and no export format is versioned with code. Judgment call: ABIs are in the repo, but the API schema is not, so we take the lower anchor, 1. | |
| Holyheld Card | No ABI, event schema, API schema or data export is versioned in a repo. The holyheld.com/documentation link in the README returns 404. Judgment call: an ABI embedded in a minified npm bundle is not a documented interface, so 0. | |
| Houdini Swap | An OpenAPI schema is published, but only on the hosted API, not versioned in a repo. No payee data export exists, and the privacy notice says transaction data is deleted after 72 hours. Documented only, so 1. | |
| Hyperbeat Card | No ABIs, event schemas, API schema or export are published. The docs name functions (settle, approveService) in prose only. 0. | |
| Jupiter Card | No admissible evidence yet. | |
| M-Pesa | API and callback schemas are documented on a hosted portal, with a Postman collection in place of OpenAPI. None of this is versioned in a repo, and no payee export format is specified, so the score is 1 (documented only). | |
| MetaMask Card | Interfaces are available only through verification metadata, not versioned in a provider repo. There is no API schema, and I found no payee or cardholder export in the repo. Judgment call: between "documented only" and "none"; ABIs are recoverable, so 1. | |
| Opera MiniPay | The Mini App interface is documented on a hosted docs site, not versioned in a public repo. No payee data export format is documented. Settlement uses standard ERC-20 ABIs that MiniPay does not define. | |
| Monero | A payee can export transfers to CSV from the CLI, and the RPC request and response types are versioned in the repo. There are no contract ABIs. The RPC interface is defined as C++ serialization structs; the human-readable RPC reference lives on the website, not in the repo. Judgment call: the export would support 3, but we are not sure the C++ definitions count as an API schema equivalent to OpenAPI, so we take the lower anchor, 2. | |
| Nullmask | Interfaces are documented on a hosted site only; no ABI files, API schema or export in a repo. Scored 1. | |
| Oobit Card | No admissible evidence yet. | |
| Payy Card | The ABIs and event schemas are in the repo. Backend routes appear only implicitly, through a Rust client, and there is no API schema and no export. Judgment call: between 1 and 2, so I took the lower; a typed client is not an API schema. | |
| Phantom Cash | No admissible evidence yet. | |
| Plasma One | ABIs and events can be read from the explorer, but nothing is versioned in a repo and there is no API schema or data export. Judgment call: 1, as for other explorer-only cases. | |
| Privacy Pools (0xbow) | ABIs and event schemas are in the repo, and the ASP API's shape is in the frontend client (see O2). We found no payee export in a non-proprietary format; account state is rebuilt from the user's mnemonic and chain data. Scored 2. | |
| Railgun | ABIs and event schemas are in the repos, and no API is required. We found no payee export in a non-proprietary format in the SDK; Railway and the docs point to viewing keys and a Koinly tax export, which we did not inspect. Scored 2. | |
| Request Network | The repo contains the ABIs, the event schemas, and a written spec of the Request Node API. Request data is stored as JSON under a public JSON Schema, so it is portable. The repo has no payee export feature. The hosted API's OpenAPI schema is not versioned in any repo. Judgment call: we treat the node API spec in the README as "or equivalent" to OpenAPI, which supports 2. We score 2 and not 3, because no export function exists. | |
| Rizon Card | No admissible evidence yet. | |
| SafePal Card | Interfaces are documented on a hosted docs site, not versioned in a repo. No payee export format is specified. Documented only, so 1. | |
| Solayer Card (Emerald Card / Solayer Pay) | No admissible evidence yet. | |
| Tongo (confidential ERC-20 on Starknet) | ABIs and event schemas are in the repo. No protocol API exists or is needed. There is no export function; account history is rebuilt from events by the SDK. Judgment call: 2, as for other API-free protocols. | |
| Tornado Cash (Classic pools) | ABIs and event schemas are in the repo. There is no protocol API to document, as no backend is required. There is no payee export function; the note string is the only record a payee holds. Judgment call: we treat the absence of any required API as satisfying the API part, giving 2; no export, so not 3. | |
| Tria | No admissible evidence yet. | |
| Tuyo Card | No admissible evidence yet. | |
| Umbra Cash | ABIs, events and the API's types are in the repo. We found no payee export in a non-proprietary format. Scored 2. | |
| Wirex One | Partial ABIs and prose API docs for BaaS integrators are in a repo. There is no machine-readable API schema, no ABI for the contracts that move funds, and no user data export. Judgment call: partial coverage fits "documented only" (1) better than 2. | |
| Wise | The API reference and an open-format statement export are documented on the hosted docs site. The only API schema in a repo is a Postman collection last updated in July 2024, which does not track the current API versions. Judgment call: 1 (documented only), because the versioned schema is not in a repo; a reviewer could argue 2 if the Postman collection is accepted as current. | |
| WORM (BETH proof-of-burn) | ABIs and the optional prover API are in the repo. The API is a README list, not OpenAPI. There is no payee export; the CLI writes burn.json and note files for the user. Scored 2. | |
| XPlace Card | No admissible evidence yet. | |
| Zcash (shielded transfers) | Interfaces are versioned in the repos: the transaction format and consensus rules in the ZIPs, the light-wallet gRPC schema, and the node RPC. There are no contract ABIs to publish. We did not find a documented payee export format in the reference wallet. Judgment call: treating the protocol and RPC schemas as covering the ABI and API parts gives 2; no export, so not 3. | |
| zERC20 (zBNB on BNB Chain) | ABIs ship in the npm package, and the API and events are described on GitBook, but none of it is versioned in a public provider repository. We found no payee export function. Scored 1: documented only. |