Skip to main content

Wallets and Addresses

"Wallets" page

This page displays a list of all wallets in the system with key parameters. Here you can quickly find the required wallet, check its status, and access detailed information.

Wallets table columns

ColumnDescription
IdUnique wallet identifier (TimeTick).
ProjectType or project the wallet belongs to.
CRM_IdExternal client identifier in CRM.
GroupWallet group (logical grouping).
CreatedDate and time the wallet was created (by Id).
UpdatedDate and time of the last wallet data update.
FlagsWallet status flags (e.g., active/blocked).
Max addrMaximum number of addresses allowed for the wallet.

Wallet Status Flags (wallet_info_flags)

The Flags column uses a bitmask of the following values:

ValueNameDescription
0NoneNo flags set.
1WithdrawBlockWithdrawals are blocked.
2TopUpBlockTop-ups are blocked.
4ExchangeBlockExchange operations are blocked.
8InnerTransferBlockInternal transfers are blocked.
16InvestBlockInvestments are blocked.
32WalletBlockLogin to the system is blocked.
64AllTokensNetworksAllow all token networks for input/output (bypass per-currency settings).
128FiatTopupBlockFiat top-ups are blocked.
256SwapBlockInstant swap is blocked.
512Require2FAUser-enabled 2FA for internal transfers and swaps.
1024IsDefaultDefault wallet for (client_id, project) — legacy flows without explicit wallet_id resolve here.
1073741824DeletedDeleted/archived account.

Note, that crypto-top-ups are done via technical addresses (addresses that are created within the system for the client's top-up to attribute the top-up correctly). That means that we don't have technical capacity to stop someone from sending assets to one of our technical addresses. The TopUpBlock flag makes tokens_networks return no top-up terminals, so the wallet UI/API stops offering deposit routes for that wallet; it does not intercept or freeze assets already sent on-chain to an existing technical address.

Blocks affect both back-end (API) and front-end (trexwallet.pwa in its standard version).

The changes are applied instantly after Update button click.

"WalletAddresses" page

Allows you to view and manage addresses linked to the selected wallet. All addresses, their statuses, types, and related parameters are displayed here. Used for controlling fund distribution and configuring new addresses.

Address table columns

ColumnDescription
TypeNetworkNetwork type and address contract (e.g., Ethereum, Bitcoin).
AddressThe address itself or memo.
FlagsAddress status flags.
WalletIdId of the wallet to which the address is linked.
Debit/CreditTotal debit and credit operations for the address.
BalanceCurrent address balance.
CurAddress currency.
UserEUReqBalance equivalent in euros.
...Actions: update balance, debit/credit, transfer, top up, to exchange.

System wallet's addresses are linked to a system InOut wallet (-1) (see System Wallets). For crypto-assets these addresses are considered "hot wallets" that TrexWallet uses to send assets according to client's withdrawal requests.

Technical addresses are used to top up accounts via blockchain in networks that do not provide a single wallet balance with a set of addresses (Ethereum, Tron, and Binance Smart Chain currently operate in technical address mode). There are two mechanisms for collecting funds from technical addresses. If there are enough funds in the base currency on the technical address, the address can grant the rights (approve) to the system hot wallet of the corresponding network to send a specific token from this address. In this case,

You can also transfer funds between the hot wallet (technical address of the system wallet) and the client technical address using the corresponding buttons Top-up, Send.

The list of technical addresses is indicated for each currency in which they have a balance record in the system. Thus, the technical address will not appear in the list immediately after generation by the user, but only after the first replenishment. The same applies to newly created hot wallets (system technical addresses).

You can create system technical addresses (see System Addresses).

"WalletInfo" page

A detailed page with full information about the selected wallet: balances, transaction history, linked addresses, security parameters. Used for analyzing wallet status and making management decisions.

Transactions table

ColumnDescription
SortSorting.
IDTransaction identifier (TimeTick).
DateTransaction date and time.
TypeTransaction type (e.g., transfer, top-up).
StatusCurrent transaction status.
CurrencyTransaction currency.
AmountTransaction amount.
FeeTransaction fee.
PartnerInfoPartner information (if applicable).
TagTransaction tag or label.
GroupTransaction group.
IntGroupInternal group.
ExtGroupExternal group.
UpdatedDate and time of last update.

Balances table

ColumnDescription
CurrencyCurrency code.
BalanceAvailable balance.
Blocked for Top-upAmount blocked for top-up.
Blocked for WithdrawalAmount blocked for withdrawal.
Blocked in OrdersAmount blocked in orders.

Deposits

Within WalletInfo there is an embedded list of the user's investments (a.k.a. deposits): identifier, product type, status, open/close dates, currency, amount, interest rate, accrued income, and flags. Values and enum semantics (investments_state_enum, investments_flags_enum, investments_type_enum) are documented once in Investments process.

Addresses

ColumnDescription
IdAddress Id.
TypeAddress type (e.g., main, reserve).
AddressThe address itself or memo.
TokenToken Id.
Token NameToken name.
BalanceAddress balance.
DebitTotal debit operations.
CreditTotal credit operations.
AddedAddress addition date.

"AddWallet" page

A form for creating a new client wallet manually. Fill in Project and CRM ID and submit. The wallet is created through the same canonical path as the API (private/v1/create_wallet), so it receives proper defaults: the first wallet for a (CRM ID, project) pair is marked IsDefault, gets max_addr_count = 1 and a CRM pseudo-address. The number of wallets per client is capped by the MaxWalletsPerUser setting; once reached, creation returns WalletsLimitReached.

How wallets are created

PathWhen
Automatic (CRM)CRM auto-provisions a wallet via private/v1/create_wallet. The trigger is controlled by the CRM WalletProvision setting: OnPhoneConfirm (default — when a phone login id is attached), OnRegistration (when the client record is created), or None (never).
Manual (admin)The AddWallet page above, or the Add wallet button on WalletInfo for an existing client.
Private APIA trusted service calls private/v1/create_wallet with a WalletData payload.

The wallet group is resolved from the CRM TrexDefaultGroup setting (or the referring agent's tariff group); project comes from the caller's project.

"SystemAddressAdd" page

Used to add special addresses for internal system needs (e.g., commission, reserve, and technical addresses).

"ProjectBalances" page

Allows you to view aggregated balances by projects, which is convenient for analyzing fund distribution between different business areas.

"Saldo" page

Displays the current saldo by wallets and currencies, helping to quickly assess the system's financial state.

Saldo table columns

ColumnDescription
CurrencyCurrency code.
SaldoFinal saldo by currency (difference between all deposits and withdrawals, should be zero).