In Canada its an auto function of the payment system. You say you want $100 in gas. The card gets preauthorized for $100 to ensure the money is available then the pump starts. After you finish pumping and get only $80 in fuel that is what is actually charged to the card. The card is charged only after you finish pumping.
Then you pay at the counter for the amount of gas you want to pump and if you overpay you go back to the counter and they give you back the difference.
In Canada its an auto function of the payment system. You say you want $100 in gas. The card gets preauthorized for $100 to ensure the money is available then the pump starts. After you finish pumping and get only $80 in fuel that is what is actually charged to the card. The card is charged only after you finish pumping.
What if one only as cash?
Then you pay at the counter for the amount of gas you want to pump and if you overpay you go back to the counter and they give you back the difference.