I am new to this platform and am working in the sandbox.
I believe I have PHP installed with the authorize.net sdk correctly in place. I am able to get a token with what looks like valid data and was able to get the hosted form working, but submitting my custom form yields an E00117, OTS Service Error 'Field validation error.' I double-checked all the values that I use in the transaction request so I am out of ideas how to troubleshoot where the problem may lie...can anyone suggest an approach to figure out this generic error?
I appreciate any recommendations.
Solved! Go to Solution.
01-25-2018 01:43 PM
Ok, I looked at the transfer of the dataValue and dataDescriptor and I had transposed them...sorry to waste any time anyone may have spent due to my stupidity. Thanks again for the help.
01-26-2018 12:43 PM
I am looking into replicating your scenario. Can you send the complete request you are using for generating token? also, the custom fields and sample values for the same?
-Bhavana
01-25-2018 03:08 PM
Thanks Bhavana,
I am using the getToken.php script from the sdk/samples with the following sandbox credentials:
api login id: 2F62EybG
transaction key: 84CE9Zw47nQw89vY
The log reflects this request:
<?xml version="1.0" encoding="UTF-8"?>
<createTransactionRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
<merchantAuthentication>
<name><![CDATA[2F62EybG]]></name>
<transactionKey>xxxx</transactionKey>
</merchantAuthentication>
<clientId><![CDATA[sdk-php-1.9.4]]></clientId>
<refId><![CDATA[ref1516960709]]></refId>
<transactionRequest>
<transactionType><![CDATA[authCaptureTransaction]]></transactionType>
<amount>29.14</amount>
<payment>
<opaqueData>
<dataDescriptor><![CDATA[COMMON.ACCEPT.INAPP.PAYMENT]]></dataDescriptor>
<dataValue><![CDATA[COMMON.ACCEPT.INAPP.PAYMENT]]></dataValue>
</opaqueData>
</payment>
<billTo>
<firstName><![CDATA[Test]]></firstName>
<lastName><![CDATA[Person]]></lastName>
<address><![CDATA[123 Test Billing]]></address>
<city><![CDATA[Billing City]]></city>
<state><![CDATA[PA]]></state>
<zip><![CDATA[11111]]></zip>
<country><![CDATA[USA]]></country>
</billTo>
<transactionSettings>
<setting>
<settingName><![CDATA[duplicateWindow]]></settingName>
<settingValue><![CDATA[60]]></settingValue>
</setting>
</transactionSettings>
</transactionRequest>
</createTransactionRequest>
Hopefully this provides enough info to point me in the right direction? I sure appreciate the help.
01-26-2018 02:20 AM
Sorry, forgot to include that I am using the Accept.js dispatchData function to submit the authdata and carddata and populate my form with the response.opaqueData (which seems to be returned successfully).
I then use a javascript function to transfer that response to the form, clear the credit card info, then submit the form. I've tried just submitting the merchantAuthentication and transaction data (not including the billTo information) but I get the same error, which leads me to believe it has to the credentials or datavalue that creates the problem - just not finding a way to troubleshoot further.
01-26-2018 05:08 AM
Ok, I looked at the transfer of the dataValue and dataDescriptor and I had transposed them...sorry to waste any time anyone may have spent due to my stupidity. Thanks again for the help.
01-26-2018 12:43 PM