GNU Taler essentially is a wallet system with minted virtual coins of variable value (and they are not coins in the Bitcoin sense). They can additionally be “tainted” so as to mark age restriction. Here is a more thorough discussion.
In their presentations they quite clearly state that microtransactions is of importance in its design. If you pay with a big coin, the exchange will return a smaller coin worth as much as your change. This is what they call the “refresh protocol”.
I recommend you watch one of their presentations. In some they do a live demo, and frankly I’m shocked this hasn’t been adopted yet.