SET API Reference
Simple Easy Transactions (SET) gives businesses three server-to-server APIs for moving money between bank accounts and stablecoins, and a compliance programme that sits under all three. This knowledge base is the reference for each call and for the policies SET applies to every customer.
Status Published 2026-11-08 for transparency with customers and enterprise reviewers. The API reference reflects the code deployed in production. The Compliance section is a draft for counsel and board adoption; it is not yet an adopted policy set. See Compliance.
The three APIs
| API | Who holds the key | What it does | Key |
|---|---|---|---|
| SET Direct Deposit API | A platform that already pays people in USDC (bounties, audits, contests, contractor payouts) | Pays a payee's SET Cash-Out Address or email address; the payee gets dollars in their own bank. The platform reads its payouts and revenue share. | set_partner_… |
| SET API (Platforms) | A B2B platform that onboards its own merchants | Names each merchant, has it verified (KYB), and opens the accounts and addresses each merchant is paid through: USD, EUR and GBP bank details, Cash-Out Addresses, conversion between stablecoins. | set_live_… / set_test_… |
| SET Merchant API | A single business SET onboards directly | The same calls as the SET API, for one customer: the merchant itself. Optional: SET's operator can onboard a merchant with no key at all. | set_live_… / set_test_… |
The four ways money moves
1. Collect in stablecoin payer ──ACH / wire / FedNow, SEPA or Faster Payments──▶ virtual account ──USDC/USDT/EURC──▶ the merchant's wallet
2. Cash out stablecoin any payer ──USDC or EURC──▶ merchant's Cash-Out Address ──ACH / wire, SEPA or Faster Payments──▶ merchant's own bank
3. Collect to the bank payer ──bank transfer──▶ virtual account ──USDC──▶ merchant's Cash-Out Address ──▶ merchant's own bank
4. Convert crypto any payer ──stablecoin──▶ Conversion Address ──another stablecoin or chain──▶ the merchant's walletSET never holds customer funds in any of them. Bank accounts and account numbers, identity verification, currency and stablecoin conversion, and payouts to bank accounts are provided by Bridge, not by SET. SET builds and operates the software. SET is not a bank, a money transmitter or a crypto-asset service provider, and never holds customers' funds or keys. SET's developer fee is withheld by Bridge on each movement.
In Bridge's words (bridge.xyz footer, checked 2026-11-07): "Services for U.S. residents are provided, where applicable, by Bridge Building Inc. (NMLS ID 2450917)." "Services for EEA residents are provided by Bridge Building S.A., registered with the Luxembourg Trade and Companies Register under number B298785 and authorized by the CSSF as a crypto-asset service provider (N00000012) and an electronic money institution (W00000024)." "Services for residents outside the United States and the EEA are provided by Bridge Building Limited."
Base URLs
| Environment | Base URL | Keys | Money |
|---|---|---|---|
| Production | https://wallet.simpleeasytransactions.com | set_live_…, live set_partner_… | Real |
| Staging (sandbox) | https://wallet-staging.simpleeasytransactions.com | set_test_…, test set_partner_… | None. Provider sandbox plus SET's /v1/sandbox/* simulators |
A key works only in its own environment; the wrong one is refused with 401 api_key_wrong_mode.
Conventions
- JSON in, JSON out. Amounts are decimal strings (
"2500.00"), never floats. - Times are ISO 8601 in UTC.
- Errors are
{ "error": "<stable_code>", "message": "…" }with an HTTP status. Codes are stable; messages may change. See Errors. - Lists are
{ "object": "list", "data": [ … ], "hasMore": true | false };limitis 1–100, default 50. - States only move forward. A redirect or a status read in a browser is never evidence that money moved: outcomes come from verified provider events written to SET's idempotent ledger, and a stablecoin delivery is
deliveredonly once SET has confirmed it on chain.
Where to start
- Read Use cases to find the API that fits.
- Get a sandbox key and read Authentication.
- Run the flow in Environments and sandbox.
- Subscribe to Webhooks and events before going live.
- Read Travel Rule data: every movement carries it, and SET refuses one that does not.