0
I understand that an internal keychain is used to receive a change of payment when I pay someone.
For example, I pay $20, but it costs $17, so I get $3.
But what I don't understand is how can there be a change? When I send 1 BTC to someone, how does the receiving end determine that I overpaid by 0.9 BTC and send that back to me?
so every time I'm sending a bitcoin, I'm sending my entire balance and receiving balance - payment - mining fee back to my change address? What if I don't have a whole bitcoin? What if I only have 0.001 BTC? – Carol Ward – 2019-04-17T19:39:52.003
@CarolWard you have to reference multiple transactions in the inputs where you earned your BTCs and the values from those transaction should that add up to an amount that is more that want to intend to pay to a person. the difference (after removing mining fees) is what would go to your change address. – Ugam Kamat – 2019-04-17T19:48:15.990
ok. I think I'm starting to understand. So when I send 0.001 BTC, the wallet references enough transactions together that equals 0.001 BTC or greater. If it's exactly 0.001 BTC, then no change needed. If it's 0.0017 BTC, then it pays 0.001 BTC to the recipient, pays mining fee (let's say 0.0003 BTC), and send the change of 0.0004 back to my change address. Is that right? – Carol Ward – 2019-04-17T20:05:05.443
@CarolWard that is correct – chytrik – 2019-04-17T20:05:54.737