Why it is virtual
On a transparent blockchain like Stellar, a traditional balance — an address holding XLM — is publicly visible to anyone. If Hypertron credited your payments to a wallet address linked to your account, an observer watching the blockchain could see your incoming and outgoing flows, reconstruct your revenue, and potentially identify your clients by tracing fund paths. The virtual balance system avoids this by keeping all funds in the shared pool. Your balance is not a number stored in a contract or a wallet — it is derived from the set of payment commitments attributed to your account that have not yet been withdrawn. When you request a withdrawal, Hypertron selects the right commitments, marks their nullifiers as spent, and sends you the funds through the Privacy Relay Layer. Your balance decreases not because an on-chain record was updated, but because those commitments are now marked as used.Your virtual balance is fully backed by real XLM in the pool. It represents funds you can withdraw at any time, subject to the commitment and nullifier process.
The three states
Your dashboard breaks your virtual balance into three states that together give you a complete picture of your funds.Total received
The cumulative XLM credited to your account from all confirmed payments. This number only goes up as new payments arrive.
Pending withdrawals
XLM you have requested to withdraw that is currently being processed. Funds in this state have had their nullifiers marked on-chain but the payout has not yet completed.
Completed payouts
XLM that has been successfully sent to your wallet through the Privacy Relay Layer. These withdrawals are finalized and cannot be reversed.
How your balance increases
Your virtual balance increases when a payment is confirmed and attributed to your account. Here is what happens in sequence:Payment lands in the pool
Your client submits a Stellar payment to the shared pool address. The transaction includes the memo from your payment link.
Memo matched
Hypertron’s backend detects the transaction on Horizon and reads the memo. It matches the memo to your payment link and records the payment as belonging to your account.
Commitment registered
A cryptographic commitment is generated from the payment details and stored in the PoolManager contract on-chain. This is the on-chain proof that the payment occurred.
How your balance decreases
Your virtual balance decreases when you request a withdrawal and it is processed successfully.Withdrawal requested
You enter an amount and a destination wallet address in the dashboard and submit the withdrawal request. Hypertron checks that your available virtual balance covers the requested amount.
Commitments selected
Hypertron selects enough unspent payment commitments to cover your withdrawal. Each selected commitment corresponds to one or more confirmed payments.
Nullifiers marked on-chain
The PoolManager contract marks the nullifiers for the selected commitments as spent. This prevents those commitments from being used in any future withdrawal.
Payout sent
The Privacy Relay Layer sends the funds to your destination address through a sequence of ephemeral wallets and randomized routing. Once the payout transaction is confirmed, the withdrawal status updates to completed.
What the dashboard shows you
The Overview section of your dashboard gives you a real-time view of your virtual balance:- Revenue chart — Monthly XLM received, plotted over time.
- Recent payments — The latest payment events on your links, including amount and workflow stage.
- Withdrawal history — All withdrawal requests, their status (pending or completed), and payout transaction hashes for completed payouts.
Withdraw funds
Step-by-step guide to requesting a withdrawal from your virtual balance.
ZK commitments
Learn how commitments and nullifiers back your virtual balance on-chain.
