@@ -143,14 +143,15 @@ export async function reticketPointBetweenWallets({
143143 progress(TRANSACTION_PROGRESS.SIGNING);
144144
145145 const suggestedGasPrice = await getSuggestedGasPrice(networkType);
146− const gasPrice = parseInt(toWei(suggestedGasPrice.toFixed(), 'gwei'), 10);
146+ const gasPrice = toWei(suggestedGasPrice.toFixed(), 'gwei');
147+ const gasPriceBN = toBN(gasPrice);
147148 let totalCost = toBN(0);
148149 let inviteNonce = await web3.eth.getTransactionCount(fromWallet.address);
149150 txs = txs.map(tx => {
150151 tx.from = fromWallet.address;
151152 tx.nonce = inviteNonce++;
152− tx.gasPrice = gasPrice;
153− totalCost = totalCost.add(toBN(gasPrice).mul(toBN(tx.gas)));
153+ tx.gasPrice = gasPriceBN;
154+ totalCost = totalCost.add(gasPriceBN.mul(toBN(tx.gas)));
154155 return tx;
155156 });
156157
@@ -194,15 +195,15 @@ export async function reticketPointBetweenWallets({
194195 progress(TRANSACTION_PROGRESS.CLEANING);
195196
196197 // if non-trivial eth left in invite wallet, transfer to new ownership
197− let balance = await web3.eth.getBalance(fromWallet.address);
198+ let balance = toBN(await web3.eth.getBalance(fromWallet.address));
198199 const gasLimit = GAS_LIMITS.SEND_ETH;
199− const sendEthCost = gasPrice * gasLimit;
200− if (transferEth && balance > sendEthCost) {
201− const value = balance - sendEthCost;
200+ const sendEthCost = gasPriceBN.mul(toBN(gasLimit));
201+ if (transferEth && balance.gt(sendEthCost)) {
202+ const value = balance.sub(sendEthCost);
202203 const tx = {
203204 to: toWallet.ownership.keys.address,
204205 value: value,
205− gasPrice: gasPrice,
206+ gasPrice: gasPriceBN,
206207 gas: gasLimit,
207208 nonce: inviteNonce++,
208209 };