View Issue Details

IDProjectCategoryView StatusLast Update
0007350Talerwallet (Android App)public2023-01-26 21:53
ReporterChristian Grothoff Assigned Togrote Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PrioritynormalSeveritytextReproducibilityalways
Status closedResolutionfixed 
Platformi7OSDebian GNU/LinuxOS Versionsqueeze
Target Version0.9.1Fixed in Version0.9.1 
Summary0007350: Don't allow input of amounts with more than 8 decimal places
DescriptionAfter entering an amount of < 1 satoshi, the Android wallet said "amount invalid", which confused the user (so many zeros...).

We should give a better error message, maybe something like "amount too small", when an amount is smaller than the smallest denomination, and maybe something similar if it is not a multiple of the smallest denomination (like if someone tries to enter Pi as an amount...).
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Christian Grothoff

2022-09-08 18:52

manager   ~0019107

sebasjm: please take note, same issue likely also applies to webextension somewhere.

grote

2022-09-09 12:07

reporter   ~0019112

Where exactly did the user enter the invalid amount? The wallet UI doesn't know about the smallest denomination, thus I suspect the error message coming from wallet-core.

Christian Grothoff

2022-10-20 09:56

manager   ~0019258

I think it was either on P2P transfer or on withdraw, don't recall for sure. Anyway, while the error may have come from wallet-core, the UI can make a hard assumption that 10^-8 is the smallest fraction, as that's hard-coded in the Taler protocols. But of course you are right: depending on the currency the smallest *allowed* amount may be larger. But here I think it was actually the amount parsing that already failed, not the currency-specific logic.

grote

2022-10-24 18:00

reporter   ~0019291

Without steps to reproduce this, there is not much I can do.

Christian Grothoff

2022-10-24 18:34

manager   ~0019298

I need to get more Bitcoin first and/or setup btc testnet again. This will take a bit.

Christian Grothoff

2022-11-23 10:15

manager   ~0019475

Got it reproduced. I simply had the BTC in my wallet, and then clicked on "send funds". Then, under "amount to send", I entered 0.00000000001 and clicked "To another wallet" to get the error message inside of the "Amount to send" widget (changed to red, nice).

The main issue here is that the amount widget should immediately show 'amount too small' *or* ideally not even allow me to enter that many digits after the period.
Taler defines amounts to be at most 1-billionth of the unit currency, so 0.00000001 is per protocol (!) the smallest unit ever allowed anywhere. Hence, even before clicking on "to another wallet" and irrespective of the currency, all wallets can safely not allow users to specify fractions smaller than 0.00000001. (So also 1.000000001 is illegal!). I guess a precise error message might not be "amount invalid" or "amount too small", but "fraction has too many digits".

grote

2023-01-03 14:23

reporter   ~0019556

Resolved in 9bb3505277b8132c3fd0be52d9bbbc6078723ff2

Issue History

Date ModifiedUsernameFieldChange
2022-09-08 18:52Christian GrothoffNew Issue
2022-09-08 18:52Christian GrothoffStatusnew => assigned
2022-09-08 18:52Christian GrothoffAssigned To => grote
2022-09-08 18:52Christian GrothoffNote Added: 0019107
2022-09-09 12:07groteNote Added: 0019112
2022-10-20 09:56Christian GrothoffNote Added: 0019258
2022-10-24 18:00groteAssigned Togrote => Christian Grothoff
2022-10-24 18:00groteStatusassigned => feedback
2022-10-24 18:00groteNote Added: 0019291
2022-10-24 18:34Christian GrothoffNote Added: 0019298
2022-11-23 10:15Christian GrothoffNote Added: 0019475
2022-11-23 10:16Christian GrothoffAssigned ToChristian Grothoff => grote
2023-01-03 13:52groteSummaryuser complains about confusing error message "amount invalid" => Don't allow input of amounts with more than 8 decimal places
2023-01-03 14:23groteStatusfeedback => informing
2023-01-03 14:23groteResolutionopen => fixed
2023-01-03 14:23groteNote Added: 0019556
2023-01-23 21:25Christian GrothoffTarget Version => 0.9.1
2023-01-23 21:25Christian GrothoffFixed in Version => 0.9.1
2023-01-26 21:53Christian GrothoffStatusinforming => closed