Wallet types
Bluum supports three wallet types, depending on your integration model:| Type | Balance source | Best for |
|---|---|---|
| Hosted | Bluum manages the balance directly | Most integrations — Bluum tracks all cash |
| BYO (Bring Your Own) | Your system provides the balance via an endpoint | Partners who manage their own ledger |
| Omnibus | Computed from an immutable double-entry ledger | Partners needing full audit trail |
How money flows
- Deposit — Money enters the wallet from a linked bank account
- Buy order — Wallet balance decreases; a hold is placed during execution
- Sell order — Proceeds return to the wallet after the order fills
- Withdrawal — Money leaves the wallet to the user’s bank account
Wallet holds
When an order is placed, Bluum creates a hold on the wallet to reserve funds for the trade. This prevents the user from spending the same money twice.| Hold status | Meaning |
|---|---|
ACTIVE | Funds reserved, order in progress |
RELEASED | Order canceled, funds returned to available balance |
CAPTURED | Order filled, funds debited |
EXPIRED | Hold expired (order timed out) |
Balance fields
| Field | Description |
|---|---|
balance | Total wallet balance (available + held) |
available_balance | Balance available for new trades or withdrawals |
reserved_balance | Balance reserved by active holds |
Transactions
Every wallet operation creates a transaction record:| Transaction type | Description |
|---|---|
deposit | Funds received from bank account |
withdrawal | Funds sent to bank account |
buy | Funds debited for order execution |
sell | Proceeds credited from order fill |
fee | Trading commission or platform fee |
Key endpoints
| Method | Path | Description |
|---|---|---|
GET | /accounts/{account_id}/wallets | Get wallet details and balance |
GET | /accounts/{account_id}/transactions | List wallet transactions |