Skip to main content
Beta — HandCash BRC wallet (Desktop). Bridge ports, TLS, and origin allowlists can change. This page is for the local BRC-100 bridge, not cloud Connect or Wallet API.

Endpoints

When HandCash Desktop is running and unlocked, apps reach the wallet on loopback: Use the primary HTTPS endpoint when available; fall back to 3321 if the primary is unreachable (some environments reject the local certificate).

Ownership

  • Desktop owns the local BRC-100 bridge and the permission UX.
  • Your app must present a clear origin the wallet can approve or deny.
  • Method payloads should match BRC-100. HandCash-specific migrate / claim helpers may be origin-gated to HandCash hosts.

Discovery

Use POST /getVersion with {} as the body. This is the BRC-100 substrate probe used by wallet clients:
Also available: GET /health does not prove that the renderer is unlocked and ready to answer wallet calls. Use getVersion for wallet discovery.

Responses and errors

Successful methods return their BRC-100 JSON result with HTTP 200. Errors are JSON:
Common bridge errors: Do not retry a mutating request blindly after a transport timeout: the wallet may have completed it after the caller disconnected. Reconcile by label, transaction ID, or application protocol state first.

Deadlines

The bridge holds your request while the user decides: roughly 120 seconds for reads and prompts, 300 seconds for spends. Past that you get 503 WALLET_BRIDGE_TIMEOUT for a read or 503 WALLET_BRIDGE_PENDING for a spend, and WALLET_BRIDGE_PENDING may still complete afterwards. If your HTTP client disconnects, the wallet cancels the pending prompt. Other transport failures are 503 WALLET_BRIDGE_UNAVAILABLE when the wallet window cannot answer and 500 HTTP_BRIDGE_ERROR for anything else.

Origin and permission rules

Your origin identifies your app, and the wallet gates methods in tiers: public discovery, a one-time connection, per-action approval, and separate scoped grants for item, token, and catalog reads. Market, migration, handle-claim, and administrative helpers are restricted to HandCash-owned hosts. Full rules, grant behaviour, and every permission error code: Permissions and scopes.

Checklist for a first integration

  1. User installs and unlocks HandCash Desktop.
  2. Your app probes getVersion on 2121, then 3321.
  3. It calls isAuthenticated, then waitForAuthentication if needed.
  4. The user grants your origin and any action-specific permissions.
  5. Your app calls standard BRC-100 methods and handles structured errors.
  6. It never treats cloud Connect authToken or WaaS access keys as substitutes for this path.