How Wallet Transfers Work
HIFI supports single and batch wallet transfers.Single Transfers
Send stablecoins to a single wallet address:- Create a transfer – Specify source wallet, destination wallet, and amount
- Transaction processing – The transfer is executed on-chain
- Confirmation – Receive transaction hash once completed
Batch Transfers
Send stablecoins to multiple recipients in a single transaction:- Create a batch – Specify source wallet and up to 50 destination wallets with amounts
- Transaction processing – All transfers are executed in a single on-chain transaction
- Confirmation – Receive transaction hash for the entire batch
Batch transfers are more gas-efficient than sending individual transactions to
multiple recipients. You can send to up to 50 recipients in a single batch.
Batch Transfer Structure
When you create a batch wallet transfer, the API response includes detailed information about the transaction:Source
Source
Destination
Destination
Receipt
Receipt
Transaction Status
Wallet transfers progress through several statuses:NOT_INITIATED: The transfer was not submitted due to a validation errorCREATED: Transfer request has been created and is awaiting processingINITIATED: Transfer has been submitted to the blockchainPENDING: Transaction is awaiting on-chain confirmationCOMPLETED: Transfer has been successfully confirmed on-chainFAILED: Transfer failed (check error details for more information)UNKNOWN: Transfer status could not be determined
Approval Workflow
Batch transfers can optionally require approval before processing. This is useful for organizations that need multi-party authorization for large or sensitive transfers.How Approvals Work
When creating a batch transfer withrequireApproval: true:
- The transfer enters a
PENDING_APPROVALstate - Designated approvers can review and vote on the transfer
- Once approval threshold is met, the transfer proceeds
- If rejected, the transfer is cancelled
Approval Response
When approval is required, the receipt includes approval details:Transfer Approvals
Learn how to configure approval workflows for transfers
Batch Transfer Limits
- Maximum recipients: 50 per batch
- Supported chains: POLYGON
- Supported currencies: USDC
Receipt Information
Thereceipt object contains transaction details once completed:
- transactionHash: Blockchain transaction hash for the transfer
- userOpHash: User operation hash for account abstraction wallets
- approval: Approval workflow details (if applicable)