Firebase - store currency type value
Storing monetary values in counts of the smallest denomination is a common practice. It ensures that you can always count full values and reduces the risk of rounding errors associated with floating point types.
Whether an integer type is enough depends on the maximum value you want to store. 
Firebase Database internally supports signed 64-bit longs (-2^63 ... 2^63-1).  Note that JavaScript uses 64-bit double values internally so some large integers (greater than 2^53) are not precisely representable and will lose precision.
I'm building exchange rate app and using Firebase as datastore.
On previous version 1 did store rates' data in string and convert string to BigDecimal on Android device for calculation.
Now, while I'm working on version 2 I decided to review code and make updates. I found solution to store rates' data in Integer type than convert back to Decimal/Double/Float.
Flow:
Backend Python -> dataTostore = int(currency rate value * 100)
Android Java -> rateValue = dataToStore / 100.00
Any experience with this problem ?
How to solve it OR using string-BigDecimal good enough ?
Thanks.