Problem: Payments to a wallet don't show in a daedalus wallet, because it was sent to an address that exceeds the gap.
How can I increase the gap so I can see (and consume) that utxo?
Problem: Payments to a wallet don't show in a daedalus wallet, because it was sent to an address that exceeds the gap.
How can I increase the gap so I can see (and consume) that utxo?
How can I increase the gap so I can see (and consume) that utxo?
Daedalus is simply a UI that (for wallet) serves the data provided by cardano-wallet
component, you can either use the API to add address_pool_gap
OR use cardano-wallet CLI to override the default address pool gap as below:
cardano-wallet.exe wallet create from-recovery-phrase --address-pool-gap 100 --port XXX
With the reply to your question out the way, it is a very bad idea to use this component for anything beyond a very small centralised userbase service.
cardano-wallet
with larger amount of addresses will be another trouble you will encounter even if you're alright with using large address gap.It isnt a new/unique problem, most exchanges who tried to use cardano-wallet
face similar issues. They usually end up going with a more proficient solution based on querying a layer above dbsync
. One common example, initially an attempt to provide a standard by coinbase - is Rosetta API (you can find cardano-rosetta implementation here, and a typical Construction overview here ). It might be a change in your plans from where you are now, but it's an investment well worth the time - countless folks have wrongly started on cardano-wallet API due to familiarity of a wallet, and had to migrate later - the sooner the better if you're aiming for your solution to cater for larger than few hundred users.
Need a bit of environment info first:
Via the command line you can view all utxo's for an address using:
cardano-cli query utxo --address addr1abc... --mainnet
Note: On Windows there are a few more steps needed first as per: Can Daedalus be used to query the blockchain, like a passive node?
From that output you can manually build a transaction and send your utxo, but there are a few steps to doing this via the command line.