user95519: The problem is getaccountaddress is getting deprecated and it has specific behaviour (not related to accounts) I'm relying heavily on. It gives you the same address between multiple calls as long as there are no incoming transactions…
What I'm doing essentially is calling getaccountaddress "" every time an address needs to be displayed.
The problem is getnewaddress is designed to always provide you with a new address, so I end up flooding wallet with meaningless amount of addresses that never receive anything.
I'm trying to replicate that old behaviour using labels API, but the best I've come up with is to combine getaddressesbylabel and parsing everything listtransactions outputs to find if there's an unused receive-typed address, and to generate new one if none found.
This seems both error prone and hardly scalable, because the number of addresses will potentially grow and may become very large very fast.
What are my options? Is there an API call that can be used as a replacement for getaccountaddress "" or a combination of calls?

user47356: Bitcoin wallet accounts are designed for personal use, so your use case requires to develop on a different layer, as explained by G. Maxwell here: https://github.com/bitcoin/bitcoin/issues/3816#issuecomment-37052569

95519: <p>The problem is <code>getaccountaddress</code> is getting deprecated and it has specific behaviour (not related to accounts) I'm relying heavily on. It gives you <strong>the same address between multiple calls</strong> as long as there are no incoming transactions…</p>

<p>What I'm doing essentially is calling <code>getaccountaddress ""</code> every time an address needs to be displayed.</p>

<p>The problem is <code>getnewaddress</code> is designed to always provide you with a new address, so I end up flooding wallet with meaningless amount of addresses that never receive anything.</p>

<p>I'm trying to replicate that old behaviour using labels API, but the best I've come up with is to combine <code>getaddressesbylabel</code> and parsing everything <code>listtransactions</code> outputs to find if there's an unused receive-typed address, and to generate new one if none found.</p>

<p>This seems both error prone and hardly scalable, because the number of addresses will potentially grow and may become very large very fast.</p>

<p>What are my options? Is there an API call that can be used as a replacement for <code>getaccountaddress ""</code> or a combination of calls?</p>
 47356: <p>Bitcoin wallet accounts are designed for personal use, so your use case requires to develop on a different layer, as explained by G. Maxwell here: <a href="https://github.com/bitcoin/bitcoin/issues/3816#issuecomment-37052569" rel="nofollow noreferrer">https://github.com/bitcoin/bitcoin/issues/3816#issuecomment-37052569</a></p>
