I'm always getting this error without understanding why.

TypeError: Cannot read property 'toTrytes' of undefined


// Require the use of IOTA library
const Iota = require('@iota/core')

// Create a new instance of the IOTA class object.
// Use 'provider' variable to specify which Full Node to talk to
const iota = Iota.composeAPI({
  provider: 'https://nodes.devnet.iota.org:443'

// Call the 'getNodeInfo call to check that the node is working
    .then(info => console.log(info))
    .catch(err => {})

//Actual Transaction
const address =
const seed =
const message = iota.utils.toTrytes('Hello World!')

const transfers = [
    value: 0,
    address: address,
    message: message

  .prepareTransfers(seed, transfers)
  .then(trytes => iota.sendTrytes(trytes, 3, 9))
  .then(bundle => {
  .catch(err => {
    // catch any errors
  • Could you also post the stacktrace from the error? Feb 2, 2020 at 8:36
  • I’m voting to close this question because it is about the legacy-network and it is a good idea to keep only Shimmer/ShimmerEVM and latest IOTA Chrysalis questions Apr 24 at 14:03

2 Answers 2



Please be aware that IOTA has changed at architectural level.

Read about it in the official documentation: https://docs.iota.org/

  • 1
    no more trytes!
    – Tsangares
    Jun 28, 2021 at 4:16

Maybe this will work:

const Converter = require('@iota/converter') const message = Converter.asciiToTrytes('MAYBE LIKE THAT')

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.