Webhooks can be tested at no cost in development environments. To enable webhooks in production,
upgrade to the Enterprise plan in the Privy Dashboard.
Transfer events
When you initiate a transfer from a custodial wallet via/transfer, Privy emits wallet action webhooks as the transfer progresses through its lifecycle:
| Event | Description |
|---|---|
wallet_action.transfer.created | The transfer action has been created and submitted to the custodian for review. |
wallet_action.transfer.succeeded | The transfer has been confirmed on-chain. |
wallet_action.transfer.rejected | The transfer was rejected by the custodian during compliance review. |
wallet_action.transfer.failed | The transfer failed after being initiated on-chain. |
Balance events
You can subscribe to balance change events when funds are deposited or withdrawn via webhooks. For complete details on balance webhook events, payloads, and setup, see the balance event webhooks documentation.If the deposit is an outcome of orchestration via a known provider (e.g. onramp, a refund from a
failed offramp attempt, or indirect deposit from another crypto wallet), the
wallet.funds_deposited webhook
payload would include an
additional bridge_metadata field with orchestration details:Example: Onramp from fiat deposit via virtual account
Example: Onramp from fiat deposit via virtual account
Next steps
Wallet action webhooks
Complete guide to wallet action lifecycle webhooks
Funding
Complete guide to using Bridge to onramp and offramp funds from your Privy custodial wallets
Balance event webhooks
Complete guide to balance change webhooks

