Answers on privacy, fees, sign-in, funding, payroll, withdrawals, and the network Confiroll runs on.
Everything you need to know about how Confiroll keeps payout amounts private, why you never pay a network fee, and how employers and contractors move money. The questions are grouped by theme, so jump to the section that matches what you are trying to do.
Privacy and security
What is hidden, what is public, and who holds the keys.
Fees and money
Why every action costs you 0 XLM and what you pay with.
Getting started
Signing in, wallets, and getting ready to be paid.
Employers
Adding contractors, funding, and running payroll.
Withdrawals
Cashing out your confidential balance to USDC.
Network
The chain Confiroll settles on and what the money is.
Yes. Every payout amount is encrypted on-chain using a confidential token, so the number is
not a visible argument in the transaction and does not appear on the block explorer. Only
you, with your viewing key, can decrypt your own amounts. This is confidentiality of the
amount, not anonymity of the payment: the settlement is public, and the amount is hidden.
Confiroll never describes payments as unlinkable.
What does 'Confiroll-blind' mean?
Confiroll holds zero of your keys, so it has no way to read your amounts or move your funds.
Payout amounts are hidden from the public, from other employers, and from Confiroll itself.
The keys that could reveal an amount live only on your device. Confiroll builds the app,
sponsors the network fee, and relays your already-signed transactions, and that is the full
extent of what it can do.
Can someone see the amount on the block explorer?
No. When you open a Confiroll payout on a public explorer, you see that the transaction
settled, which accounts were involved, and the timestamp. You do not see a dollar figure,
because the amount is carried as ciphertext and validated by a zero-knowledge proof rather
than posted in the clear. The proof lets the network confirm the transfer is valid without
ever learning the value.
What is public and what is hidden?
Public: that a payment happened, the accounts involved, the time it settled, and which
account paid the fee. Hidden: the amount of every payout, your confidential balance, and the
contractor-to-amount mapping in an employer’s private ledger. The public transaction graph
proves that money moved. Your amounts stay yours.
Can I still pass an audit if amounts are hidden?
Yes, and you stay in control of the process. As an employer you hold the escrow key (also
called the disclosure key) on your own device. To satisfy an audit, pick a payout and
disclose it: your device decrypts the amount with the escrow key and produces a verifiable
disclosure that proves the amount matches the ciphertext recorded on-chain. Export it for an
auditor. Confiroll cannot read the amount, and you can prove it. See
Compliance and disclosure.
What are the two keys?
Everyone has two keys, both generated and stored on your device and never uploaded. The
first is your wallet signing key, which authorizes transactions. The second is your
confidential viewing key, which decrypts your own amounts and builds the private proofs
behind every confidential transfer. The viewing key is derived from your wallet, so it
follows you when you sign in on another device.
What if I lose my key?
Because Confiroll is non-custodial, it cannot recover a key it never held. Your viewing key
is derived from your wallet, so keeping your wallet safe and backed up keeps your access
intact. Follow the backup reminders in Settings under account and keys, and store your wallet
recovery phrase somewhere durable. This is the trade-off for Confiroll never being able to
touch your funds or read your amounts.
Does Confiroll hold my money?
No. Confiroll is non-custodial. Your funds sit in accounts that only you control, and every
payment is signed by you as the transaction source. Confiroll relays your signed transaction
and pays the network fee for it. It never takes possession of funds or keys. For the full
model, see The non-custodial model.
No. You never hold XLM to use Confiroll. Every on-chain action, paying, receiving,
registering, depositing, merging, and withdrawing, is fee-sponsored. Your account balance in
XLM stays flat at zero cost to you.
Who pays the network fee?
Confiroll’s fee sponsor does. You sign your transaction as the source account, and Confiroll
wraps it in a fee-bump so a sponsor account covers the network fee. The result on-chain shows
the sponsor as the fee account and your balance unchanged in XLM. The sponsor can pay a fee
but can never alter or redirect your transaction. See
Fee sponsorship.
What currency do payouts use?
Payouts are denominated in USDC, moved as a confidential token so the amount stays encrypted
on-chain. On the network Confiroll runs on, this is test USDC. Balances, payouts, and
withdrawals are all expressed in USDC in the interface.
Is there a fee to use Confiroll?
There is no network fee for you, because every action is sponsored to 0 XLM. Anchoring a
payslip cycle costs the same whether you pay 3 people or 300, because one Merkle root covers
the whole cycle. You move value in USDC and the plumbing is covered.
What is test USDC?
Test USDC is the USDC asset on the Stellar testnet. It behaves exactly like production USDC
inside Confiroll: you fund with it, pay with it, and withdraw it. You bring test USDC in with
a single click from the built-in faucet, by bridging from another testnet chain, or by
depositing existing testnet USDC you already hold. See Funding.
There is one sign-in for everyone. Connect a Stellar wallet and sign a one-time challenge
(the SEP-10 standard), or sign in with email, in which case an embedded wallet is created for
you. Confiroll then reads your data to determine your role, employer, contractor, or both,
and routes you to the right place. A short-lived session keeps you signed in. See
Getting started.
Do I need a crypto wallet?
Not to start. If you sign in with email, an embedded wallet is created for you on the spot,
so you get the two keys without installing anything. If you prefer to bring your own wallet,
connect it and sign the challenge. Either path gives you a wallet signing key and a
confidential viewing key on your device.
Why does a contractor register before the first payout?
A confidential payout is encrypted to the recipient’s public viewing key, and that key only
exists on-chain after a contractor connects a wallet and self-registers once. Until a
contractor registers, there is no key to encrypt an amount to, so they show as Invited or
Onboarding rather than Ready. Registration is a single fee-sponsored step. See
Contractor onboarding.
How long does onboarding take?
A few minutes. Sign in, connect or create a wallet, and self-register your confidential
account. Registration is fee-sponsored, so you need nothing in XLM. Once your status reaches
Ready, you can receive payouts and see your confidential balance decrypt in your browser.
Can I be both an employer and a contractor?
Yes. Roles come from your data, not from separate accounts. If you run payroll for a team and
also receive payouts yourself, Confiroll gives you access to both the employer app and the
contractor portal from the same sign-in, and you switch between them freely.
Open Contractors and invite a person by wallet address or email. They start as Invited, move
to Onboarding while they connect a wallet and self-register, and become Ready once their
confidential account exists on-chain. Only Ready contractors are payable, so a payroll run
always encrypts to a live viewing key. See Contractors.
How do I fund my balance?
Funding brings USDC into your confidential balance three ways. Use the built-in test-USDC
faucet to mint and deposit in one click, bridge USDC from another testnet chain through the
CCTP flow (burn, wait for the Circle attestation, mint into your vault, deposit), or deposit
existing classic USDC you already hold by adding a trustline and depositing. The CCTP vault
is owned by you, not Confiroll, and depositing and merging are fee-sponsored. See
Funding.
Why does a payroll run ask me to approve every payout?
Each payout is a confidential transfer that you sign as the transaction source. Your browser
encrypts the amount and builds a zero-knowledge proof, and you provide a plain wallet
signature. That is what keeps the flow non-custodial and lets Confiroll sponsor the fee
without ever holding your key. A run of 12 payouts is 12 quick approvals, and the run screen
walks you through them row by row with a live status for each. See
Run payroll.
Where do the amounts in my history come from?
From your private ledger. Because amounts are hidden on-chain and Confiroll is blind, the
mapping of who was paid how much is kept encrypted on your side. On-chain confirms that a
payout settled; your ledger holds what the amount was. History reads both together, so you
see the settled transaction and the amount that only you can decrypt. See
History.
Can my team help run payroll?
Yes. In Settings under team and roles you assign Admin, Approver, and Viewer roles and turn
on an optional payroll approval workflow. An Approver reviews a run before payouts are signed,
a Viewer sees reporting without the ability to change anything, and an Admin manages the
organization. Signing still happens with each signer’s own wallet. See
Settings.
Open Withdraw in the contractor portal and enter an amount. Your device merges any receiving
funds into your spendable balance, builds a withdrawal proof, and asks for your signature.
Confiroll fee-bumps the transaction so you pay 0 XLM, and the USDC lands in your regular
balance. See Withdraw.
What happens to my remaining balance when I withdraw?
The specific amount you withdraw becomes public on exit, so the USDC that leaves is
verifiable. Everything you leave behind stays confidential: your remaining balance is still
encrypted and readable only with your viewing key. Withdrawing part of your balance never
reveals the rest.
Can I cash out to a bank?
You receive crypto USDC. There is no in-app fiat off-ramp, so Confiroll does not convert to a
bank account for you. Once the USDC is in your regular balance you are free to move it wherever
you like, including to an external service that converts to fiat.
Confiroll runs on the Stellar testnet and settles every payout there. Settlement is public on
the Stellar network while amounts stay encrypted, and the on-chain contract addresses are
listed in Settings under network and transparency so anyone can verify the deployment. See
Contracts and addresses.
Is this real money?
Payouts use test USDC on the Stellar testnet. It moves, funds, pays, and withdraws exactly
like production USDC inside Confiroll, and every confidential feature, encrypted amounts,
zero-knowledge proofs, sponsored fees, payslip anchoring, and disclosure, works end to end.
For how Confiroll frames its privacy properties precisely, see
Security and claims.
Confiroll protects the amount, not the fact of a payment. The transaction graph, who paid whom
and when, is public by design; the amount is hidden. That is confidentiality, not anonymity.
⌘I
Assistant
Responses are generated using AI and may contain mistakes.