TABLE OF CONTENTS
When attempting to transfer assets from a Virtual Account to the blockchain, from a deposit address(es), the operation may fail. This can be caused by:
- Insufficient on-chain assets.
- Incorrect
PrivateKey
and ormnenonic
&&index
- Insufficient blockchain fees/gas.
blocked
amounts on the Virtual Account making its balance appear as a negative.- Stuck withdrawals
inProgress
. Unconfirmed or dropped blockchain transaction. - A blockchain transaction failed but the Virtual Account flagged it as
Done
, creating a balance desync.
Troubleshooting
- Get account by ID: confirm currency, VA balance, and more.
- If you are using
index
&& mnemonic/signatureId
, make sure the index matches the address/PrivateKey
.- Get all deposit addresses for a virtual account: Find all linked blockchain addresses to the Virtual Account as well as confirm their
derivationKey
/index
- Off-chain Transfers from a Virtual Account to Blockchain require the proper use of a combination of Mnemonics, XPUB,
index
, and PrivateKey via a match dictated by the REQUEST BODY SCHEMA
- Get all deposit addresses for a virtual account: Find all linked blockchain addresses to the Virtual Account as well as confirm their
- If you are setting up manual fees in the transaction, ensure it's sufficient for the tx to be accepted by the blockchain.
- Tatum provides fee estimate for a few chains.
- Check the Virtual Account balance via: Get account balance - Where:
accountBalance
: All assets on the account, both available and blockedavailableBalance
: The account balance minus the blocked assets; use the available balance to determine how much a customer can send or withdraw from their virtual account
- Check for any
blocked
amounts via: Get blocked amounts in an account- You may unblock the balance in the Virtual Account via: Delete a blocked amount in an account OR Delete all blocked amounts in an account
- Check for any withdrawals
inProgress
via: Get Withdrawals- You may find all related transactions of a Virtual Account via: Find transactions for account
- You should Complete a Withdrawal if the transaction has been confirmed OR Cancel the withdrawal if it failed.
- Check for any withdrawals that may have failed in the blockchain but still got marked as
Done
via: Get Withdrawals- You may find all related transactions of a Virtual Account via: Find transactions for account
- You should Cancel the withdrawal
Example:
Send TRON from a virtual account to the blockchain, where you would select REQUEST BODY SCHEMA: TransferTronMnemonics
POST || {{baseUrl}}/v3/offchain/tron/transfer { "address": "TVAEYCmc15awaDRAjUZ1kvcHwQQa######", "amount": "100000", "index": 13, "mnemonic": "urge pulp usage sister evidence #### #### #### #### #### #### ####", "senderAccountId": "5e68c66581f2ee32bc######" }
Make sure the Mnemonics, address and especially the index are a match in your Wallet, and that the address you are using containts enough Assets to cover the transaction.
In the specific case of TRON, make sure the address was activated by having a few TRX in it.
Contacting Support
If no luck with the steps above, reach out to Support with a ticket containing the following cURLs with Payloads and response bodies from the Virtual Account you have issues with:
- Get account balance
- Get all deposit addresses for a virtual account
- Get blocked amounts in an account
- Get Withdrawals inProgress
Additional information about how to submit a ticket is available at the following link.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article