Privacy is not binary.
It should be programmable.
Define who can see transaction data, when, and under what conditions — without giving up auditability.
The Problem with On-Chain Privacy Today
Existing solutions force a false choice between two broken extremes.
Fully Public
All amounts, senders, and receivers exposed to anyone forever.
Fully Hidden
Mixer-style anonymity that breaks compliance and triggers regulators.
VeilPay
Programmable rules that selectively reveal data to authorized parties only.
How It Works
Three steps from payment to programmable privacy.
Send with Rules
Define a privacy policy per transaction — hide amount, sender, receiver, or all three.
Rules Enforced
The rule engine applies your policy. Public sees [Hidden]. A ZK commitment is generated.
Authorized Reveal
Auditors or designated roles can reveal data on-demand. Time-based auto-reveal supported.
Built for Real-World Finance
Example: On-Chain Payroll
- HR sends salary to 10 employees on Solana
- Public sees transactions exist, amounts are hidden
- Employees see only their own payment
- Auditor reveals full data when required
- After 90 days, data auto-reveals for archival