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.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.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.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 If you need to send to more than 50 recipients,
create multiple batches.
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