Missing Money.nanos should be treated as 0

This commit is contained in:
Ravi Khadiwala
2025-09-08 15:11:15 -05:00
committed by ravi-signal
parent b2dd315177
commit efde8a31f9
2 changed files with 35 additions and 1 deletions

View File

@@ -80,7 +80,9 @@ public class SubscriptionCurrencyUtil {
* BigDecimal)
*/
static BigDecimal convertGoogleMoneyToApiAmount(final Money money) {
final BigDecimal fractionalComponent = BigDecimal.valueOf(money.getNanos()).scaleByPowerOfTen(-9);
final BigDecimal fractionalComponent = money.getNanos() == null
? BigDecimal.ZERO
: BigDecimal.valueOf(money.getNanos()).scaleByPowerOfTen(-9);
final BigDecimal amount = BigDecimal.valueOf(money.getUnits()).add(fractionalComponent);
return convertConfiguredAmountToApiAmount(money.getCurrencyCode(), amount);
}