1How to read an error
Every message on this page was produced on testnet on 2026-10-21 with IronDivi 0.2.6 (irondivi-cli) and Divi Core 3.0.0 (divi-cli). The Divi Desktop debug console and BoxWallet run Divi Core, so they print the Divi Core column. The number is the JSON-RPC error code:
| Code | Family |
|---|---|
| -1 | Wrong arguments (Divi Core prints the command's help text instead of a message) |
| -3 | Bad amount |
| -4 | Wallet could not build or sign the transaction |
| -5 | Bad address or encoding |
| -6 | Not enough coins |
| -8 | Bad parameter value |
| -32600 | Request refused (Divi Core addvault key checks) |
2fundvault
| You did | IronDivi says | Divi Core says | Fix |
|---|---|---|---|
| Only a manager address, no colon | -1 Owner address is required for funding vault. Use format: owner_address:manager_address | Succeeds: Divi Core creates a fresh owner address in your wallet (see fund a vault) | Write owner:manager on IronDivi |
| Owner address mistyped | -1 Invalid Divi address: address not found: Invalid address length: 9 | -5 Invalid owner DIVI address | Copy the address again |
| Manager address mistyped | (same as above) | -5 Invalid manager DIVI address | Copy the address again |
| More than you have | -6 Insufficient funds. Have 0 DIVI, need 99999.00002 DIVI | -6 Insufficient funds | Check getbalance |
| Amount missing | -1 Missing required parameter: amount | -1 (help text) | Add the amount |
| Amount 0 or negative | not run | -3 Invalid amount | Use a positive amount |
JSON form '{"O:M":5}' | -1 Missing required parameter: [owner_address:]manager_address | Works | IronDivi takes only the two-argument form |
| JSON with a bad amount or repetition | n/a | -8 Unable to parse amount for: … / Unable to parse repetitions for: … / Unknown json input. Unable to parse input for … | Numbers only |
3addvault
| You did | IronDivi says | Divi Core says | Fix |
|---|---|---|---|
| No colon in the encoding | -1 Owner address is required. Use format: owner_address:manager_address | -8 Could not parse vault encoding! | Use owner:manager |
| Ran it on the owner wallet (manager key not here) | -4 Transaction … does not pay to the specified vault script, or success with nothing staked | -32600 AddingVaultScript: Does not have matching manager key! | Run it on the manager wallet |
No vault=1 in divi.conf | n/a | -32600 AddingVaultScript: Unable to sync TX! | Add the line and restart |
| Txid missing | -1 Missing required parameter: funding_txhash | -1 (help text) | Add the funding txid |
| Txid is not a hash | -1 Invalid transaction ID: notahash | {"succeeded": false} | Copy the txid |
| Txid is real but pays a different vault | -4 Transaction … does not pay to the specified vault script | {"succeeded": false} | Compare encoding with the explorer |
| Bad manager address | -1 Invalid Divi address… | -5 Vault Registry Failed: Invalid manager DIVI address | Copy again |
| Added twice | Success both times, registered once | Success both times, registered once | Nothing to fix |
4reclaimvaultfunds
| You did | IronDivi says | Divi Core says | Fix |
|---|---|---|---|
| Owner wallet that lacks the manager key | -4 No vault funds available to reclaim | Works | Use Divi Core with the same owner key (IronDivi 0.2.6 limitation) |
| Not the owner (for example the manager) | -4 No vault funds available to reclaim (no owner keys found for any vaults) | -6 Insufficient funds: 100000000(total requested) is greater than 0(total available) | Only the owner can reclaim |
| More than the vaults hold | -4 No vault funds available to reclaim | -6 Insufficient funds: …(total requested) is greater than …(total available) | Ask for less |
| Vault output unconfirmed or just spent | n/a | -4 Insufficient funds to meet coin selection algorithm requirements. | Wait one block |
| Destination mistyped | -1 Invalid destination address: address not found: Invalid address length: 3 | -5 Invalid DIVI address | Copy again |
| Destination missing | -1 Missing required parameter: diviaddress | -1 (help text) | Add it |
| Amount missing | -1 Missing required parameter: amount | -1 (help text) | Add it |
| Unknown option word | Ignored, normal send | -8 Unknown option for reclaiming vault funds | receiver_pays, sweep_funds or metadata |
5debitvaultbyname
| You did | IronDivi says | Divi Core says | Fix |
|---|---|---|---|
| Anything at all | -1 debitvaultbyname not yet implemented… | Works | Use Divi Core with the owner key |
| Encoding with no colon | n/a | -5 Invalid Vault Encoding | owner:manager |
| Owner half not in this wallet | n/a | -5 Vault owner key is unknown: ownership=0 address=… | Run it on the owner wallet |
| Destination mistyped | n/a | -5 Invalid DIVI address | Copy again |
| Unknown option word | n/a | -8 Unknown option for reclaiming vault funds | receiver_pays, sweep_funds or metadata |
| More than the vault holds | n/a | -6 Insufficient funds: …(total requested) is greater than …(total available) | Ask for less |
| Vault output unconfirmed or just spent | n/a | -4 Insufficient funds to meet coin selection algorithm requirements. | Wait one block |
6removevault
| You did | IronDivi says | Divi Core says | Fix |
|---|---|---|---|
| Encoding only | -1 Missing required parameter: tx_hash | Works | IronDivi also needs the funding txid |
| Vault never added here | -4 Vault … not found in wallet | {"removal_status": false} (from source, not run) | Check getcoinavailability true |
| No colon | -8 Could not parse vault encoding! | -8 Could not parse vault encoding! (from source, not run) | owner:manager |
7What a manager gets when it tries to spend
These are the messages a manager wallet prints when it attempts to use the owner's coins. They are the proof behind the security tutorial.
# Divi Core manager holding 20 own coins and 170 in vaults
$ divi-cli sendtoaddress DEST 100
error: {"code":-6,"message":"Insufficient funds: 10000000000(total requested) is greater than 1999990080(total available)"}
$ divi-cli reclaimvaultfunds DEST 1
error: {"code":-6,"message":"Insufficient funds: 100000000(total requested) is greater than 0(total available)"}
$ divi-cli debitvaultbyname OWNER:MANAGER DEST 1
error: {"code":-5,"message":"Vault owner key is unknown: ownership=0 address=y8PL1RQSCWYPnJAvhvs6ZwkxfwuB5Ut5Aj"}
# IronDivi manager holding 50 own coins and 219 in vaults
$ irondivi-cli --testnet sendtoaddress DEST 1
error code: -4: Only signed 0 of 1 inputs
$ irondivi-cli --testnet reclaimvaultfunds DEST 1
error code: -4: No vault funds available to reclaim (no owner keys found for any vaults)
$ irondivi-cli --testnet fundvault OWNER:MANAGER 1
error code: -4: Only signed 0 of 1 inputs
The 1,999,990,080 in the first line is the manager's own 19.9999 coins in satoshis; the 170 vaulted coins are not counted as available. The IronDivi lines show a side effect of its own: with vaults registered, the manager wallet picked a vault output for an ordinary 1-coin send and could not sign it, so the manager cannot spend even its own 50 coins until the vaults are removed. Divi Core does not have this problem. It does not go away with removevault: with both vaults removed, the manager wallet listed the vault outputs as spendable (Spendable 269, Vaulted 0) and sendtoaddress still failed with the same message. Spending the plain output by hand with createrawtransaction, signrawtransaction and sendrawtransaction worked (see Remove a vault).
8Silent failures: no error, wrong result
- Divi Core
fundvault "manager" 100succeeds and invents an owner address in your wallet. Fine if you meant it; if you were copying someone's instructions you may now have a vault whose owner key you did not know about.getcoinavailability trueshows the encoding. - Divi Core
reclaimvaultfundsfor a part sends the rest to a plain change address. The vault looks like it vanished. It did; the coins are in your normal balance. sweep_fundsignores the amount and sends whole vault inputs.- IronDivi
addvaulton a spent output says success and shows a balance that does not exist. - IronDivi owner wallet shows a confirmed vault with balance 0 unless it also holds the manager key.
- IronDivi
reclaimvaultfunds … receiver_paysbuilds the normal transaction; the option is accepted and ignored.
Still stuck? Ask the Divi chatbot.