TBA failure

Hi Everyone,

I am attempting to create a data connector that can access and ingest data from the Datasource.
I am using the JDBC driver to do so, but I have hit a stumbling block.
When connecting to the datasource using the username and password I have success.
I understand that to connect to TBA is the supported method. However when using ‘TBA’ as the username followed by the token password as the password I get the following error message
‘[NetSuite][SuiteAnalytics Connect JDBC Driver][OpenAccess SDK SQL Engine]Failed to login using TBA. Error ticket# l6p3094icqgte94lec5d[232]’

Would anybody be able to provide some assistance?

Add Comment
4 Answer(s)


To be clear, there’s nothing to fix here. If you want to use with the “Data Warehouse Integrator” role or any other role that requires TBA, they you need a solution that can generate the signature in line with what has been described in other replies.

Alternatively, create a custom role that does not require TBA.



Intermediate Answered on September 5, 2022.
Add Comment


Firstly, you don’t need to use TBA but it is required is you want to use the “Data Warehouse Integrator” role.

You shouldn’t be using the Token Password, instead you should be generating a signature:

See also:



Intermediate Answered on August 12, 2022.

Hi Chris,


Many thanks for the great suggestion.

Do you have a script that we can use to generate the signature (Powershell preferred)?



on March 30, 2023.
Add Comment

Yea you need a script like this to generate the signature on the fly because it uses the current timestamp.  You can’t really do this if you’re just using the ODBC driver on your laptop because you have to generate it each time you want to login.  But if you have some Python script running, then you can generate the signature and pass it to the ODBC driver as the password parameter.  Here is the actual script that I use in Postman:



let account = ‘12345678_SB2’; let consumerKey = ‘xxxxx’; let consumerSecret = ‘xxxx’; let tokenId = ‘xxxx’; let tokenSecret = ‘xxxx’;

let timestamp = new Date().getTime().toString().substring(0, 10); let nonce = CryptoJS.lib.WordArray.random(10).toString(); let baseString = account + ‘&’ + consumerKey + ‘&’ + tokenId + ‘&’ + nonce + ‘&’ + timestamp; let key = consumerSecret + ‘&’ + tokenSecret; let signature = CryptoJS.HmacSHA256(baseString, key).toString(CryptoJS.enc.Base64);

pm.environment.set(“account”, account); pm.environment.set(“consumerKey”, consumerKey); pm.environment.set(“tokenId”, tokenId); pm.environment.set(“nonce”, nonce); pm.environment.set(“timestamp”, timestamp); pm.environment.set(“signature”, signature);

Rookie Answered on August 27, 2022.
Add Comment

Does anyone know how to fix this?

I also want to use ODBC with as a source but am not able to generate a signature for the TBA.


Many thanks,

Rookie Answered on August 30, 2022.
Add Comment

Your Answer

By posting your answer, you agree to the privacy policy and terms of service.
  • This site made possible by our sponsors:   Tipalti   Celigo   Become a Sponsor   Become a Sponsor