I am able to successfully manage customer profiles using the Accept.js and the API in the DEV / Sandbox environment, however when I moved the code to PROD, it failed with the error: E00116 OTS Token access violation.
Searching, I see that error E00116 can happen when the creds are wrong, eg., using DEV creds in PROD, but I've double checked and believe that everything is fine there.
I am using our PROD creds successfully via Accept.js and the API when using createTransactionRequest. There is another thread at https://community.developer.authorize.net/t5/Integration-and-Testing/OTS-Token-Access-Violation/td-p... which has the same error, however the user was unable to use the method in DEV as well. That is not my situation, as everything works fine in DEV.
Any thoughts on what might be done to correct this? Is it an internal AuthNet problem? Could there be a setting in the PROD account that needs to be set?
Your help is appreciated.
Since I was getting the OTS error when trying to submit createCustomerProfile with a payment block, I attempted to break the process out into two steps, rather than one.
first createCustomerProfile without the payment information block, then upon successful response, fire a createCustomerPaymentProfileRequest.
The createCustomerProfile execs without a problem, however when I attempt to create the paymentProfile against the newly created customer profile, I get the same OTS Token violation that I received when I processed the request as one step (createCustomerProfile with payment block).
Since I am able to process createTransactionRequest calls using the same credentials, I tried to alter those calls, so that I could force a similar error and adjust my createCustomerProfile call accordingly. This did not work, as any adjustments (change username/password, try dev creds in prod, etc) resulted in expected errors such as User authentication Failed.
Your assistance is appreciated.