Skip to main content
GET /v2/merchant/wallet/registered returns the list of settlement wallets the authenticated merchant has registered via POST /v2/merchant/wallet/claim. This endpoint backs the merchant Wallets panel in the dashboard.
Live on dev as of 2026-06-14; PROD ETA after next GTFU. Shipped via PR #2103 (Phase 5.4.7).

GET /v2/merchant/wallet/registered

Authentication

Obtain a merchant JWT via POST /merchant/admin/login — see Authentication. Any ?merchantId= query parameter is silently ignored.

Query parameters

None. The response is always the full list for the JWT-bound merchant across all networks.

Example

Response — 200 OK

Fields

Errors

Notes

  • Caching. The response carries Cache-Control: private, max-age=30. Clients should expect up to a 30s lag after a claim / deregister before the change is visible if the response was cached by an intermediate.
  • Auth scope. The endpoint reads merchantId from the JWT sub claim only. Any ?merchantId= query parameter is silently ignored. A merchant cannot read another merchant’s wallets through this endpoint.
  • Ordering. Rows are sorted by claimedAt descending — most-recently claimed first. Primary status does not affect order; check isPrimary to identify the routed-to wallet.
  • Fail-open semantics. If the underlying read throws, the endpoint returns the empty-state envelope (wallets: []) with 200 OK rather than propagating the error. Inspect server logs / Sentry for the underlying failure. Merchants never see a partial Wallets-panel error in the dashboard.
  • Across networks. The list is not filtered by network. A merchant registered on base today and a future second network tomorrow will see both rows here; clients filter client-side as needed.