getbalance says 0 for incoming TX even though 0-conf is allowed &gt; $bitcoin_rpc.getnewaddress("myaddress", "bech32")
 =&gt; "bc1q9kvfyjxtk9tvkzgpkf4x8zs42sddwlyanz3z6z" 
&gt; $bitcoin_rpc.getbalance
 =&gt; 0.0 
&gt; $bitcoin_rpc.getbalance("*", 0)
 =&gt; 0.0 
&gt; $bitcoin_rpc.listtransactions
 =&gt; [{"address"=&gt;"bc1q9kvfyjxtk9tvkzgpkf4x8zs42sddwlyanz3z6z", "category"=&gt;"receive", "amount"=&gt;0.00025, "label"=&gt;"myaddress", "vout"=&gt;1, "confirmations"=&gt;0, "trusted"=&gt;false, "txid"=&gt;"ad922349668c17c3ab47081f6dbc6e7e8f68473840146bfdd18f35f7d0bca216", "walletconflicts"=&gt;[], "time"=&gt;1574217056, "timereceived"=&gt;1574217056, "bip125-replaceable"=&gt;"yes"}] 
&gt; Time.now.to_i
 =&gt; 1574217344 


What's the magic behind it? Since confirmation=0 is default, I would expect a return value of 0.00025.
getbalance returns the balance that your node currently considers spendable. According to your console output, the transaction that sent you the output was flagged as "bip125-replaceable"=&gt;"yes". Since a transaction flagged as replaceable can be amended or retracted by the sender until it gets confirmed, an output from such a transaction will not be considered reliable and not used as an input until confirmed.