Discussions
Stay up-to-date with the latest news from NetSuite. You’ll be in the know about how to connect with peers and take your business to new heights at our virtual, in-person, on demand events, and much more.
Now is the time to ask your NetSuite-savvy friends and colleagues to join the NetSuite Support Community! Refer now! Click here to watch and learn more!
Stay in the Know
Be sure you're subscribed to NetSuite communication to stay in the know about monthly happenings, updates and announcements. Subscribe
Be sure you're subscribed to NetSuite communication to stay in the know about monthly happenings, updates and announcements. Subscribe
Please note that on Friday, March 20, 2026, at 8:00 PM Pacific time, our Case Management System will undergo a scheduled maintenance for approximately 4 hours. During this time, case creation via SuiteAnswers will be unavailable and inbound calls will be routed to Customer Service.
hmac.digest gives UNEXPECTED_ERROR
I am trying to implement a JSON Web Token, and thus trying to get crypto.hmac to work, but I'm having issues with it. I made a password tool from a modified version of the suitelet from this thread, and I have a password guid that I have generated and restricted for use on my custom script id, that I am using in that custom script. However, each time the code gets to the .digest() call, it throws UNEXPECTED_ERROR. I'm still new to SuiteScript and I'm not sure what I am doing wrong:
var sKey = crypto.createSecretKey({ guid: "6332f5d7575a481388a24b924292d552", // restrictToDomains=['system.sandbox.netsuite.com'], restrictToScriptIds=[<MY SCRIPT ID>] encoding: encode.Encoding.HEX }); var hmacSignature = crypto.createHmac({ algorithm: crypto.HashAlg.SHA256, key: sKey, }); hmacSignature.update({ input: encHeader + "." + encPayload, inputEncoding: encode.Encoding.UTF_8 }); var signature = hmacSignature.digest({ outputEncoding: encode.Encoding.BASE_64_URL_SAFE }); return encHeader + "." + encPayload + "." + signature; 0