Wallet-as-a-service and institutional custody platform offering Custodial, MPC, Smart Contract, and Exchange wallet types under one WaaS 2.0 API, plus Cobo Argus on-chain access-control modules for Safe-based DeFi treasury.
- 01wallet-as-a-service (WaaS)
- 02MPC and HSM custody
- 03DeFi treasury with on-chain controls (Argus)
- 04exchange and OTC operations
- 05APAC-regulated custody
- pnpm add @cobo/cobo-waas2-nodejs
| Variable | Scope | Description |
|---|---|---|
| COBO_API_PRIVATE_KEY | Server | Ed25519 private key (hex) registered in the Cobo dashboard; used to sign every WaaS 2.0 request. |
| COBO_ENV | Server | `prod` (https://api.cobo.com/v2) or `dev` (https://api.dev.cobo.com/v2) — sandbox tenants are fully isolated. |
Use Cobo WaaS 2.0 for multi-tenant wallet infrastructure. Server-side, import the WaaS 2.0 client and configure it with the Ed25519 API private key (`new Configuration({ privateKey: process.env.COBO_API_PRIVATE_KEY, env: Env.Prod })`). Common calls: `WalletsApi.createWallet({ walletType: 'Custodial' | 'MPC' | 'SmartContract' | 'Exchange' })`, `TransactionsApi.createTransferTransaction({ requestId, source, destination, tokenId, amount })`, `AddressBookApi.addEntries(...)`. Always pass a unique `request_id` for idempotency. For on-chain Safe-based treasury controls, deploy Cobo Argus authorizer modules to a Safe and grant role-scoped action permissions instead of EOA approvals.
- ⚑Every request is Ed25519-signed over `method + path + nonce + sorted_query + body` — most integration bugs are signature mismatches caused by un-sorted query params or trailing JSON whitespace.
- ⚑Withdrawals are gated by the workspace transaction policy and address book; non-whitelisted destinations are rejected synchronously while large amounts enter `PENDING_APPROVAL` and require quorum sign-off.
- ⚑API keys are IP-restricted when the allowlist is enabled — serverless deployments need a static egress IP or NAT gateway, otherwise requests fail with 403.
- ⚑Dev (`api.dev.cobo.com`) and prod environments are fully isolated, with separate token IDs, wallet IDs, and chain IDs — never share credentials across them.
- ⚑Cobo Argus modules sit on top of Safe; misconfigured role/authorizer mappings can either over-permission a delegate or brick a strategy — simulate every role grant on a fork before mainnet.
- ⚑Geographic licensing: Cobo's regulated entities cover specific APAC, EU, and US states — confirm which licensed entity covers your customer's domicile before onboarding.