Secure by architecture.
Even a compromised API key can’t steal your funds. Here’s why.
One direction. No reverse path.
One-way by design
Veil is a one-way offramp. Funds flow in one direction: from your crypto wallet, through a licensed conversion partner, to your bank account. There is no reverse path.
There is no function in the API to send funds to an external wallet. There is no way to redirect a payout to a third party. There is no endpoint to change the destination mid-transaction. The only place money can go is the bank account you verified during onboarding.
If someone gains access to your API key, the worst outcome is that an offramp is triggered early - to your own bank account. Your money still arrives at your bank. Not theirs.
What an attacker cannot do
What an attacker can do
With a compromised API key.
With a stolen API key, an attacker can trigger offramps - but only to your own verified bank account, within your configured limits. They can also read wallet balances and transaction history.
This is the blast radius. It’s limited by design.
To limit exposure further: rotate your API key immediately from the dashboard, enable IP allowlisting for production keys, and set conservative per-wallet daily limits.
How your account is protected
Ten layers. Defense in depth.
Security for automated offramps
Triggered from dashboard or CLI
2FA required for each transaction
Human is present to authenticate
Triggered by rules you configure
2FA required when creating the rule
Executes hands-free within your limits
This is the same model as standing orders in traditional banking - you authenticate once to set up the instruction, then it executes automatically.
If something goes wrong
If you suspect unauthorized access:
veil account freeze from any terminalFreezing is instant and does not require 2FA. All pending offramps are paused. No funds leave your account while frozen.
Questions about security?
Reach us at security@veil.com