The veilify_* methods and Round fields describe the proposed Veilify interface. No live Veilify RPC deployment is published yet.
Errors carry error.data.reason. Clients should branch on reason, not message.

Codes

Request reasons

Withdrawal status reasons

Returned in veilify_getWithdrawals → reason, for moved or failed legs: gas_spike · fee_above_reserve · relayer_busy · relayer_balance · nonce_conflict · waiting_for_change · funds_not_settled · withdrawals_paused · screening_unavailable · check_pending · schedule_changed · send_failed · simulation_failed · reverted · proof_failed · expired · cancelled · fee_rate_changed · recipient_not_allowed

Warnings

Returned in veilify_prepareWithdrawal → warnings. They don’t block the request.