Sending XML with CFHTTP
I have some code that works perfectly well with one customer, but with another it's a total fail. They are telling me that the content type is not being sent.
The goal is to send a XML data to them over SSL/Port 8443
Am I missing something here that some servers react badly to?
<cfparam name="form_timeout" default="5">
<cfparam name="form_port" default="8443">
<cfset objXml = createObject("component","xml2Struct")>
<!--- Request XML--->
<cfxml variable="xmlRequest">
<?xml version="1.0" encoding="UTF-8"?>
<request>
<header>
<signature>BHNUMS</signature>
<details>
<productCategoryCode>01</productCategoryCode>
<specVersion>43</specVersion>
</details>
</header>
<transaction>
<primaryAccountNumber>9877890000000000001</primaryAccountNumber>
<processingCode>615400</processingCode>
<transactionAmount>000000000000</transactionAmount>
<transmissionDateTime>140223183057</transmissionDateTime>
<systemTraceAuditNumber>385224</systemTraceAuditNumber>
<localTransactionTime>103057</localTransactionTime>
<localTransactionDate>140223</localTransactionDate>
<merchantCategoryCode>5411</merchantCategoryCode>
<pointOfServiceEntryMode>011</pointOfServiceEntryMode>
<acquiringInstitutionIdentifier>60300000063</acquiringInstitutionIdentifier>
<retrievalReferenceNumber>000007385224</retrievalReferenceNumber>
<merchantTerminalId>26065 001 </merchantTerminalId>
<merchantIdentifier>60300000063 </merchantIdentifier>
<merchantLocation>Simulation</merchantLocation>
<transactionCurrencyCode>840</transactionCurrencyCode>
<additionalTxnFields>
<productId>07675019009</productId>
<redemptionPin>#form_redemptioncode#</redemptionPin>
</additionalTxnFields>
</transaction>
</request>
</cfxml>
<!---Make a test request --->
<cfhttp url="HTTPS URL OF CUSTOMER HERE" method="post" port="#form_port#" timeout="#form_timeout#">
<cfhttpparam type="header" name="Accept" value="application/xml" />
<cfhttpparam type="header" name="Accept-Language" value="en-us,en" />
<cfhttpparam type="header" name="Accept-Charset" value="utf-8" />
<cfhttpparam type="header" name="Keep-Alive" value="115" />
<cfhttpparam type="header" name="Connection" value="keep-alive" />
<cfhttpparam type="body" value="#xmlRequest#" />
</cfhttp>
<CFOUTPUT>#cfhttp.statuscode#</CFOUTPUT>
