code: async function sendETHTransaction(payload) {
    const { privateKey, to, value, gasLimit, gasPrice, nonce, data } = payload.props
  
    const address = getAddressFromPrivateKey(privateKey)
    const rawTx = await txUtils.getRawTx({ gasLimit, gasPrice, nonce, address, data, to, value })
    const signedTx = txUtils.signTx(rawTx, privateKey)
  
    return Promise
      .promisify(jWeb3.eth.sendRawTransaction)(signedTx)
      .timeout(
        config.promiseTimeout,
        new Error(`Can not call web3.eth.sendRawTransaction within ${config.promiseTimeout}ms`)
      )
  }
docs: @async
  @function sendETHTransaction
  
  @description Sends transaction
  
  @param {object} payload - Payload object
  @param {object} payload.props - Method properties
  @param {string} payload.props.privateKey - Private key (64 hex symbols, without '0x' prefix)
  @param {string} payload.props.to - Address of the transaction receiver
  @param {BigNumber} payload.props.value - Transaction value
  @param {BigNumber} [payload.props.gasLimit] - Gas limit for the transaction
  @param {BigNumber} [payload.props.gasPrice] - Gas price for the transaction
  @param {number} [payload.props.nonce] - Nonce for the transaction
  @param {string} [payload.props.data] - Transaction data
  
  @returns Promise that will be resolved with the hash of the transaction