Transfer Types
HIFI supports two types of wallet transfers:| Type | Description | Best For | 
|---|---|---|
| Single Transfer | Send to one recipient | Individual payments, one-time transactions | 
| Batch Transfer | Send to up to 50 recipients in a single transaction | Payroll, airdrops, bulk distributions | 
Creating Single Transfers
Send stablecoins to a single recipient on the same blockchain.External Wallet Registration: Before sending to external wallet addresses, you must register them using the External Wallets API. Unregistered addresses will cause the transfer to fail.
Response
Response
Unique transfer ID. Use this to check status using the Retrieve a crypto transfer endpoint.
Transfer status. Progression: 
CREATED → INITIATED → PENDING → COMPLETED. See Transaction Status for details.Details about the sender including wallet address and user information.
Details about the recipient including wallet address and user information (if HIFI user).
Transfer amount in the specified currency.
Blockchain transaction receipt. Contains 
transactionHash and userOpHash once the transfer is confirmed on-chain.For detailed response field documentation, see the Create Crypto Transfer API reference.
Creating Batch Transfers
Send stablecoins to up to 50 recipients on the same blockchain.External Wallet Registration: External wallet addresses in batch transfers must be registered before use. Register them using the External Wallets API.
Response
Response
Unique batch transfer ID. Use this to check status using the Retrieve a crypto transfer endpoint.
Batch transfer status. Progression: 
CREATED → INITIATED → PENDING → COMPLETED. See Transaction Status for details.Details about the sender including wallet address and user information.
Array of destination recipients. Each item contains 
amount, optional userId (for HIFI users), and walletAddress.Blockchain transaction receipt. Contains 
transactionHash and userOpHash once the transfer is confirmed on-chain.For detailed field documentation, see the Create Batch Transfer API reference.
Transaction Status
Wallet transfers progress through several statuses:| Status | Description | 
|---|---|
| NOT_INITIATED | Transfer not submitted due to validation error | 
| CREATED | Transfer request created and awaiting processing | 
| INITIATED | Transfer submitted to blockchain | 
| PENDING | Transaction awaiting on-chain confirmation | 
| COMPLETED | Transfer successfully confirmed on-chain | 
| FAILED | Transfer failed (check failedReason for details) | 
| UNKNOWN | Transfer status could not be determined | 
Tracking Transfers
Status Updates: Subscribe to 
WALLET.TRANSFER.UPDATE webhook events to receive real-time status notifications. See Webhooks for setup instructions.transactionHash in the response to view the transaction on a blockchain explorer like Polygonscan or Etherscan.
Transfer Approvals
For organizations requiring multi-party authorization, all transfers support an optional approval workflow.How Approvals Work
1
Enable approval requirement
Set 
requireApproval: true when creating a transfer.2
Review pending transfer
The transfer enters 
PENDING_APPROVAL status. Dashboard admins are notified via email and webhook to approve or reject the transfer. Any admin can make the decision.3
Execution or rejection
If approved, the transfer is executed. If rejected, it’s cancelled.
Response
Response
Transfer status. When 
requireApproval: true is set, the status will be PENDING_APPROVAL until approved.Approval object containing approval details and votes when approval is required.
Configuring Approvers: Manage your team roles in the HIFI Dashboard. Members can create transfers, but only admins can approve.
Key Concepts
HIFI vs External Transfers
HIFI vs External Transfers
HIFI transfers use 
userId as the destination while external transfers use a walletAddress as the destination.Registration Required: External wallet addresses must be registered before use. Create an external wallet record using the External Wallets API before including the address in transfer requests.
Batch Transfer Limits
Batch Transfer Limits
Batch transfers have the following constraints:
- Maximum recipients: 50 per batch
 - Supported chains: Currently POLYGON only
 - Supported currencies: USDC, USDT
 
Transaction Receipts
Transaction Receipts
The 
receipt object provides blockchain verification:- transactionHash: Unique identifier for the blockchain transaction. Use this to view the transaction on block explorers.
 - userOpHash: For account abstraction wallets, this is the user operation hash
 
null until the transfer is confirmed on-chain (status becomes COMPLETED).Getting Help
- 📧 Email: support@hifibridge.com
 - 💬 Slack: Message us in our shared Slack channel
 
Related Resources
- Wallets - Understand wallet addresses and balances
 - Webhooks - Real-time transfer status notifications
 - API: Single Transfer - Complete single transfer documentation
 - API: Batch Transfer - Complete batch transfer documentation