Transaction Issues
Last updated: February 2, 2026
Here's how to troubleshoot transactions in HIFI:
Common Transaction Errors (40xxxx)
CodeErrorSolution | ||
400001 |
| Check currency/crypto/rail combination is supported |
400002 |
| Verify bank account is valid for this transaction type |
400003 |
| Use a different |
400005 |
| Wait and retry - quote is still being generated |
400006 |
| Quote expired - request a new one |
400301 |
| Verify transaction ID exists |
400401 |
| Check wallet balance before transfer |
400402 |
| Top up credit balance for fees |
Wallet Management Errors
CodeErrorDescription | ||
600001 |
| Invalid wallet configuration provided |
600001 |
| Wallet already exists for this configuration |
600301 |
| Wallet not found for the user |
600501 |
| Wallet is not active |
Best Practices
Always check error codes before displaying generic messages
Implement retry logic for 5xx errors
Verify balances before initiating transfers
Validate currency pairs are supported before transactions
For real-time status updates, subscribe to webhook events like ONRAMP.STATUS.* and OFFRAMP.STATUS.*.
Pending or Stuck Transactions
Transactions can be in a PENDING state while awaiting blockchain confirmation. For different transaction types:
Wallet transfers: Progress through
CREATED→INITIATED→PENDING→COMPLETEDBatch transfers: Same progression, with atomic execution (all succeed or fail together)
Bridging: Has multiple phases -
SOURCE_PENDINGandDESTINATION_PENDINGwhile awaiting chain confirmationsOfframps:
CRYPTO_PENDING(awaiting blockchain confirmation) andFIAT_PENDING(awaiting settlement)
Transfer approvals can also cause transactions to appear "stuck" in PENDING_APPROVAL status until an admin approves or rejects them. These expire after 1 week for on-chain transfers or 1 day for offramps.
Refunds and Reversals
CRYPTO_RETURNED: For offramps, if a transaction fails, funds are refunded to the user's wallet with status
CRYPTO_RETURNEDBatch transfers: Use atomic execution—if any transfer fails, the entire batch fails and no funds are moved
Rejected transfers: When a pending approval is rejected, the transfer is cancelled and funds return to the sender
For failed transactions, check the failedReason field for specific error details.