Solved

Authorize.net XML Error E00002 - XML type not supported

Posted on 2013-01-17
1
831 Views
Last Modified: 2013-01-18
Situation: I have a FileMaker solution that currently uses a payment gateway to handle credit card transactions. The transactions are submitted using XML and a URL Post. I use the Troi URL plugin to do the POST because FileMaker does not have this capability built in. There is no issue with this gateway, it's worked fine for years.

I am now trying to do the same thing with Authorize.net. Using their AIM XML guide, I have setup an XML "payload" to submit to the test URL. When I submit it I'm getting back the following Error message including the garbage characters at the beginning:

Ôªø<?xml version="1.0" encoding="utf-8"?><ErrorResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd"><messages><resultCode>Error</resultCode><message><code>E00002</code><text>The content-type specified is not supported.</text></message></messages></ErrorResponse>
The Authorize.net description of this error is:

API Error Code: E00002
Error Code Text: The content-type specified is not supported.
Description: The only supported content-types are text/xml and application/xml.

My Troi URL plugin submission in FileMaker looks like this:

TURL_Post( ""; "https://apitest.authorize.net/xml/v1/request.api"; "xml=" & $XML_Payload )

The $XML_Payload is a script variable contains the sample XML code below. What I'm wondering is if Authorize.net expects some special string or code to say that this is "text/xml" coming in...

<?xml version="1.0" encoding="utf-8"?>
<createTransactionRequest
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
<merchantAuthentication>
<name>111222333</name>
<transactionKey>1234123412341234</transactionKey>
</merchantAuthentication>
<transactionRequest>
<transactionType>sale</TransactionType>
<amount>10</amount>
<payment>
<creditCard><cardNumber>4111111111111111</cardNumber>
<expirationDate>12/13</expirationDate>
<cardCode>123</cardCode></creditCard>
</payment>
\<customer><id>115</id><></></customer>
<billTo>
<firstName>Sally</firstName>
<lastName>Peterson</lastName>
<company></company>
<address>8 Steiger Road</address>
<city>Boston</city>
<state>MA</state>
<zip>02116</zip>
<country></country>
</billTo>
<customerIP></customerIP>
<transactionSettings>
<setting>
<settingName>allowPartialAuth</settingName>
<settingValue>false</settingValue>
</setting>
<setting><settingName>duplicateWindow</settingName>
<settingValue>0</settingValue>
</setting><setting><settingName>Customer</settingName><settingValue>false</settingValue>
</setting>
<setting><settingName>testRequest</settingName>
<settingValue>false</settingValue>
</setting>
</createTransactionRequest>
0
Comment
Question by:Will Loving
1 Comment
 
LVL 25

Accepted Solution

by:
Will Loving earned 0 total points
ID: 38794933
For anyone else who might be doing this, the answer was simply that I needed to include a "Custom Header" with my URL Post specifying the Content type as XML:

"Content-Type:text/xml"
0

Featured Post

Salesforce Made Easy to Use

On-screen guidance at the moment of need enables you & your employees to focus on the core, you can now boost your adoption rates swiftly and simply with one easy tool.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Unable to resolve XML http request 4 99
XML to SQL Table using c# 5 69
C# SQL BULK INSERT CLASS 5 49
Fixing Non-Standard characters in text 8 111
Are you using email marketing software? If not, you're missing out on effortless marketing and the reaching of desired conversion rates through email marketing software.
Learn about the eCommerce marketing trends for the year ahead.
This tutorial demonstrates a quick way of adding group price to multiple Magento products.
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

821 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question