<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Xml parse error in XmlUtility.descapeStringForXml in Integration and Testing</title>
    <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59675#M34252</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/22258"&gt;@autopilot&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please explain what you mean by "&lt;SPAN&gt;we still receive this parsing error when transaction is settled". Settlement isn't an interactive process, so when are you receiving this error and how?&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Tue, 05 Sep 2017 20:20:35 GMT</pubDate>
    <dc:creator>Aaron</dc:creator>
    <dc:date>2017-09-05T20:20:35Z</dc:date>
    <item>
      <title>Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59607#M34186</link>
      <description>&lt;P&gt;Hello, recently got this error on auth.net response when trying to void a recurring payment:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;2017-08-29 15:48:45,740 DEBUG [AWT-EventQueue-0] (gui.dialog.RefundTenderCreditDialog.cardSwiped()) - Card swipe event, parsed card data: CreditCard [nameOnCard=ANDERSON/CHRISTOPHER T, number=XXXXXXXXXXXX5098, track1=%BXXXXXXXXXXXXXXXX^ANDERSON/CHRISTOPHER T^XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX?, track2=;XXXXXXXXXXXXXXXX=XXXXXXXXXXXXXXXXXXXX?, expireMonth=3, expireYear=25, type=null]
2017-08-29 15:48:45,755 INFO  [Thread-38] (gui.dialog.RefundTenderCreditDialog.processRequest()) - Sending authorizer request: DefaultPaymentProcessorRequest [creditCard=CreditCard [nameOnCard=ANDERSON/CHRISTOPHER T, number=XXXXXXXXXXXX5098, track1=%BXXXXXXXXXXXXXXXX^ANDERSON/CHRISTOPHER T^XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX?, track2=;XXXXXXXXXXXXXXXX=XXXXXXXXXXXXXXXXXXXX?, expireMonth=3, expireYear=25, type=VISA] requestType=VOID_REFUND, customerNumber=null, transactionNumber=108585, amount=19.95, initAmount=19.95, authorizationCode=4RWILV, purchaseType=RECURRING_INITIAL_SALE, recordNumber=1501783604, referenceNumber=40006130205, referenceData=null, processData=null, transactionCompleteDate=Tue Aug 29 15:48:05 EDT 2017, token1=null, token2=null, salesDeviceId=1]
2017-08-29 15:48:45,756 INFO  [Thread-38] (payment.authorizedotnet.AuthorizeDotNetProcessor.authorize()) - Starting processing: 1504036125756
2017-08-29 15:48:45,756 WARN  [Thread-38] (payment.authorizedotnet.AuthorizeDotNetProcessor.validatePaymentAuthorizer()) - Test mode enabled, using test environment.
2017-08-29 15:48:45,762 INFO  [Thread-38] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId2: 6n5ZeZ9EaH9 getGatewayServicePassword2: ************m6hG
2017-08-29 15:48:45,773 INFO  [Thread-38] (payment.authorizedotnet.AuthorizeDotNetProcessor.logTransactionRequest()) - --&amp;gt;[Type=VOID Amount=19.95 CC-type=VISA CC-number=XXXXXXXXXXXX5098 CC-ExpDate=3/25 TransactionID=40006130205 AuthCode=4RWILV]
2017-08-29 15:48:45,773 INFO  [Thread-38] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId2: 6n5ZeZ9EaH9 getGatewayServicePassword2: ************m6hG
2017-08-29 15:48:46,588 WARN  [Thread-38] (authorize.util.XmlUtility.warn()) - Exception Details-&amp;gt; Code:'null', Message:'null'
2017-08-29 15:48:46,589 WARN  [Thread-38] (authorize.util.XmlUtility.warn()) - Error decoding from XML, value: '1.0|3|21|An error occurred during processing. &amp;amp;nbsp;Please try again.||P||40006130205|30F81DB854A9A7EC36FFC52B642C1600||||||||||||XXXX5098|Visa|||||
', ErrorMessage: 'null'
Caused by: java.lang.NumberFormatException: For input string: "1.0"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) ~[?:1.8.0_45]
        at java.lang.Integer.parseInt(Integer.java:580) ~[?:1.8.0_45]
        at java.lang.Integer.parseInt(Integer.java:615) ~[?:1.8.0_45]
        at net.authorize.aim.Result.createResult(Result.java:32) ~[anet-java-sdk-1.9.3.jar:?]
        at net.authorize.Merchant.postTransaction(Merchant.java:286) ~[anet-java-sdk-1.9.3.jar:?]
        at com.sonnyscontrols.payment.authorizedotnet.AuthorizeDotNetProcessor.sendRequest(AuthorizeDotNetProcessor.java:245) ~[payapi-1.0.6-RELEASE.jar:?]
        ... 4 more&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This error is random, i could not reproduce this all the time when making a void transaction.&lt;/P&gt;&lt;P&gt;library: java-sdk -1.9.3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;trace: our software calls Merchant.postTransaction() -&amp;gt; HttpClient.execute() -&amp;gt; at line 176 XmlUtility.descapeStringForXml() throws exception where looks like the very first parameter (1.0) is expected to be integer when parsing, but actually is a double so the error occures.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If it helps this is a void of initial recurring sale transaciton.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;any help is appreciated. also, in my understanding, the void transaciton is actually processed fine, but since could not return a clean response, our software cannot record it as a final void.&lt;/P&gt;</description>
      <pubDate>Wed, 30 Aug 2017 17:39:44 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59607#M34186</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-08-30T17:39:44Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59613#M34192</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/22258"&gt;@autopilot&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;That was a problem on our end that appeared yesterday and was also resolved yesterday. See &lt;A href="https://community.developer.authorize.net/t5/Integration-and-Testing/Internal-error-when-trying-to-void-transaction/m-p/59571" target="_self"&gt;this thread&lt;/A&gt; for more information.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In the future when you get error 21, feel free to add a routine in your code to try again. Error 21 is literally the "try again" error. On a subsequent request for the same void, we'd return success with a message indicating the transaction was already voided.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 30 Aug 2017 23:37:07 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59613#M34192</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-08-30T23:37:07Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59626#M34205</link>
      <description>&lt;P&gt;Aaron thanks, i will implement a duplicated request if error 21 is received.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, parsing error still occures. Now we try to refund a transaction (which should be settled over night already) and expected behavior here is to receive TransNotFoudException so in this case we submit a refund request. But instead i see this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;2017-08-31 09:16:08,886 WARN  [Thread-53] (payment.authorizedotnet.AuthorizeDotNetProcessor.validatePaymentAuthorizer()) - Test mode enabled, using test environment.
2017-08-31 09:16:08,886 INFO  [Thread-53] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId2: 6n5ZeZ9EaH9 getGatewayServicePassword2: ************m6hG
2017-08-31 09:16:08,887 INFO  [Thread-53] (payment.authorizedotnet.AuthorizeDotNetProcessor.logTransactionRequest()) - --&amp;gt;[Type=VOID Amount=15.0 CC-type=MASTER_CARD CC-number=XXXXXXXXXXXX0434 CC-ExpDate=12/18 TransactionID=40006151493 AuthCode=EKDJKX]
2017-08-31 09:16:08,887 INFO  [Thread-53] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId2: 6n5ZeZ9EaH9 getGatewayServicePassword2: ************m6hG
Caused by: java.lang.NumberFormatException: For input string: "1.0"
	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) ~[?:1.8.0_45]
	at java.lang.Integer.parseInt(Integer.java:580) ~[?:1.8.0_45]
	at java.lang.Integer.parseInt(Integer.java:615) ~[?:1.8.0_45]
	at net.authorize.aim.Result.createResult(Result.java:32) ~[anet-java-sdk-1.9.3.jar:?]
	at net.authorize.Merchant.postTransaction(Merchant.java:286) ~[anet-java-sdk-1.9.3.jar:?]
	at com.sonnyscontrols.payment.authorizedotnet.AuthorizeDotNetProcessor.sendRequest(AuthorizeDotNetProcessor.java:245) ~[payapi-1.0.6-RELEASE.jar:?]
	... 4 more&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 31 Aug 2017 13:55:03 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59626#M34205</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-08-31T13:55:03Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59628#M34207</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/22258"&gt;@autopilot&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Let me make sure I understand the sequence here. You want to either cancel or refund the transaction, but need to know if&amp;nbsp;it's settled first to determine whether to void or refund. So, you first do a void, and if that returns&amp;nbsp;a transaction not found error, then you proceed to refund, correct?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I probably can't tell exactly why you're getting that error without seeing what the whole request/response is outside of the SDK (as sent on the wire). So I wouldn't know offhand whether we're looking at a problem in the SDK or in your code. I can give a few suggestions, though.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;First, it looks like you're using the AIM methods. AIM is &lt;A href="https://developer.authorize.net/api/upgrade_guide/" target="_blank"&gt;one of our older APIs (along with SIM, DPM, ARB, and CIM)&lt;/A&gt;, and we include support for it in our SDK for backwards compatibility purposes. However, the AIM class hasn't been touched in a few years. You could try implementing the same things with our newer API that replaces all of those three letter APIs, and is all implemented in the net.authorize.xml class.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Another thing to try is maybe a little different sequence of events. Instead of a void attempt followed by a refund, you could try to do a transaction details request, determine if the transaction is settled or not, and then do a follow-on void or refund as appropriate.&lt;/P&gt;</description>
      <pubDate>Thu, 31 Aug 2017 15:51:45 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59628#M34207</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-08-31T15:51:45Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59631#M34210</link>
      <description>&lt;P&gt;Aaaron, yes, the sequence is correct.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Basically we follow this flow because it was suggested to us by some authorize.net devs a while ago (before query a trans status was implemented), thus we always submit a void request first and, if TransNotFound is returned, we submit a refund reqeust.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regarding the error itself. Our code worked fine for years until customers started to report by the last week that they cannot void/refund transactions. After analyzing their cases I saw that all the failed transactions had raw track data included into request (transaction.setCreditCard();). Your response in that case showed the error "Invalid market type" so i added x_market_type field = 2 as it sounded like it's mandatory now (we never used it before as there was no difference between tracks included or non included in a transaction). After that void worked fine but sometimes we receive this xml parse error. From the string being parsed it's obvious that it happened when a response came from your server and xml parser tries to make an object out of it to return to our code. This morning we ran around of 30-40 transactions settled overnight and all them failed with the same message of parsing -1 as integer.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In terms of logging, what ever we have on our side i already posted above. So I can try to enable some additional logging capabilities in java-sdk-1.9.3 to see more activity?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;About a new version: i am aware of the new API released, saw that at GitHub. The thing is we do not plan to rewrite a whole auth.net code in a near future.&lt;/P&gt;</description>
      <pubDate>Thu, 31 Aug 2017 17:54:20 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59631#M34210</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-08-31T17:54:20Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59640#M34219</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/22258"&gt;@autopilot&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks for the additional info. Knowing that you're dealing with transactions originally created using track data, I can see what the problem is now. You're getting a specific scenario that hits a specific bug that returns the result code as "1.0" instead of "1". The java sdk expects an integer in that position, so it causes an exception.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The bug itself is in our system, but it hasn't yet been fixed, presumably because it only occurs in a scenario that shouldn't actually happen in production. Additionally, at least one or two people have submitted changes to the SDK, which haven't been incorporated for presumably the same reason.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;There's a good explanation in &lt;A href="https://github.com/AuthorizeNet/sdk-java/issues/26#issuecomment-149339211" target="_blank"&gt;this comment at GitHub&lt;/A&gt;. But, the short answer is that you're creating the initial transaction as retail (card present), but trying to void it as non-retail. While the void still ends up working, it's not a supported scenario, and it happens to run across this "1.0" bug.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Merchant accounts that are set up as the "retail" marketType or are otherwise operating in a retail environment should always be sending their transactions as retail, even when the card is not present. When creating a new transaction, that's done by sending x_market_type=2 and also sending x_device_type with a value of whatever is sending the transactions. If you're sending card not present transactions with a retail account, you would still be sending those fields, but you'd use a an appropriate value of x_device_type like "8" (for "website").&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When it comes time to do a void for any transaction that was done as a retail&amp;nbsp;transaction, you still need both of those fields present because it's still a retail transaction (or more correctly an operation on a retail transaction. Either way, you still want to be operating in "retail mode" for that request.) For the void, you'd send x_market_type=2 (which it sounds like you're already doing) and x_device_type of whatever's sending the transaction, like 8 for website or 10 for a virtual terminal&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This is further explained on page 24 of the the old &lt;A href="https://www.authorize.net/content/dam/authorize/documents/AIM_guide.pdf" target="_blank"&gt;AIM documentation&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My guess is that although you're sending x_market_type, you're probably not sending x_device_type, so you're ending up in the bad part of the code. To fix it, just send an appropriate x_device_type value, which you could do in the SDK like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;merchant&lt;SPAN class="pl-k"&gt;.&lt;/SPAN&gt;setDeviceType(&lt;SPAN class="pl-smi"&gt;net.authorize&lt;SPAN class="pl-k"&gt;.&lt;/SPAN&gt;DeviceType&lt;/SPAN&gt;&lt;SPAN class="pl-c1"&gt;&lt;SPAN class="pl-k"&gt;.&lt;/SPAN&gt;VIRTUAL_TERMINAL&lt;/SPAN&gt;);
merchant&lt;SPAN class="pl-k"&gt;.&lt;/SPAN&gt;setMarketType(&lt;SPAN class="pl-smi"&gt;net.authorize&lt;SPAN class="pl-k"&gt;.&lt;/SPAN&gt;MarketType&lt;/SPAN&gt;&lt;SPAN class="pl-c1"&gt;&lt;SPAN class="pl-k"&gt;.&lt;/SPAN&gt;RETAIL&lt;/SPAN&gt;);&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 31 Aug 2017 21:49:08 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59640#M34219</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-08-31T21:49:08Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59674#M34251</link>
      <description>&lt;P&gt;OK, Aaaron, i have added x_device_type = 10 and void returns worked fine. However, we still receive this parsing error when transaction is settled. Is there another solution for it?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Important&amp;nbsp;to note, with or without device type unit tests are passing fine. &amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 05 Sep 2017 20:16:40 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59674#M34251</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-09-05T20:16:40Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59675#M34252</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/22258"&gt;@autopilot&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please explain what you mean by "&lt;SPAN&gt;we still receive this parsing error when transaction is settled". Settlement isn't an interactive process, so when are you receiving this error and how?&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 05 Sep 2017 20:20:35 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59675#M34252</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-09-05T20:20:35Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59676#M34253</link>
      <description>&lt;P&gt;The scenario is:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1) make an initial recurring transaction (request tokens to charge later)&amp;nbsp;&lt;/P&gt;&lt;P&gt;2) wait for another day (as changing Transaction Cut Off Time does not seem to do anything)&lt;/P&gt;&lt;P&gt;3) refund it.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;if we process refund in the same day (usually a couple of minutes later), which is actually a VOID request, transaction is successful. if we wait for another day and in this case we will send a REFUND request, the parsing error is returned.&lt;/P&gt;</description>
      <pubDate>Tue, 05 Sep 2017 20:25:43 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59676#M34253</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-09-05T20:25:43Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59678#M34255</link>
      <description>&lt;P&gt;And you're sending both x_market_type and x_device_type with the refund request?&lt;/P&gt;</description>
      <pubDate>Tue, 05 Sep 2017 20:29:34 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59678#M34255</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-09-05T20:29:34Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59679#M34256</link>
      <description>&lt;P&gt;Correct. Its included&amp;nbsp;for both void and refund request.&lt;/P&gt;</description>
      <pubDate>Tue, 05 Sep 2017 20:33:53 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59679#M34256</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-09-05T20:33:53Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59693#M34270</link>
      <description>&lt;P&gt;Thanks for confirming. This might have to wait a while for me to try to duplicate. I'm on the road this week and most of next, so can't make any promises.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In the meantime, since this is happening in production, feel free to open a ticket and see if someone in support can't look into it from our end.&lt;/P&gt;</description>
      <pubDate>Wed, 06 Sep 2017 16:44:27 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59693#M34270</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-09-06T16:44:27Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59715#M34292</link>
      <description>&lt;P&gt;Checked again this morning: the first case is immediate void after sell, second refund on a next day.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;2017-09-06 17:14:00,846 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.authorize()) - Starting processing: 1504732440846
2017-09-06 17:14:00,846 WARN  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.validatePaymentAuthorizer()) - Test mode enabled, using test environment.
2017-09-06 17:14:00,852 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId2: 6n5ZeZ9EaH9 getGatewayServicePassword2: ************m6hG
2017-09-06 17:14:00,864 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.logTransactionRequest()) - --&amp;gt;[Type=VOID Amount=16.28 CC-type=MASTER_CARD CC-number=XXXXXXXXXXXX4444 CC-ExpDate=11/19, Request map: {x_test_request=FALSE, x_version=3.1, x_market_type=2, x_allow_partial_Auth=FALSE, x_device_type=10, x_invoice_num=217742},  TransactionID=40006505505 AuthCode=G8UAKA]
2017-09-06 17:14:00,864 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId2: 6n5ZeZ9EaH9 getGatewayServicePassword2: ************m6hG
2017-09-06 17:14:02,137 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.logResponseRecurring()) - &amp;lt;--[Status=APPROVED ResponseText=This transaction has been approved. ReasonResponseCode=RRC_1_1 AuthorizationCode=G8UAKA TransactionId=40006505505]
2017-09-06 17:14:02,137 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.authorize()) - Finished processing: 1504732442137
2017-09-06 17:14:02,138 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.authorize()) - Total processing time: 1 second
2017-09-06 17:14:03,145 DEBUG [Thread-26] (gui.dialog.RefundTenderCreditDialog.close()) - Closing dialog box&lt;/PRE&gt;&lt;PRE&gt;2017-09-07 08:54:57,291 DEBUG [AWT-EventQueue-0] (gui.dialog.RefundTenderCreditDialog.actionPerformed()) - Ok button pressed
2017-09-07 08:54:57,299 INFO  [Thread-26] (gui.dialog.RefundTenderCreditDialog.processRequest()) - Sending authorizer request: DefaultPaymentProcessorRequest [creditCard=CreditCard [nameOnCard=null, number=XXXXXXXXXXXX4444, track1=null, track2=null, expireMonth=11, expireYear=19, type=MASTERCARD] requestType=VOID_REFUND, customerNumber=64560, transactionNumber=217741, amount=74.87, initAmount=74.87, authorizationCode=YIGBHA, purchaseType=RECURRING_INITIAL_SALE, recordNumber=1502039707, referenceNumber=40006504572, referenceData=null, processData=null, transactionCompleteDate=Wed Sep 06 17:10:16 EDT 2017, token1=null, token2=null, salesDeviceId=1]
2017-09-07 08:54:57,300 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.authorize()) - Starting processing: 1504788897300
2017-09-07 08:54:57,300 WARN  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.validatePaymentAuthorizer()) - Test mode enabled, using test environment.
2017-09-07 08:54:57,305 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId2: 6n5ZeZ9EaH9 getGatewayServicePassword2: ************m6hG
2017-09-07 08:54:57,319 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.logTransactionRequest()) - --&amp;gt;[Type=VOID Amount=74.87 CC-type=MASTER_CARD CC-number=XXXXXXXXXXXX4444 CC-ExpDate=11/19, Request map: {x_test_request=FALSE, x_version=3.1, x_market_type=2, x_allow_partial_Auth=FALSE, x_device_type=10, x_invoice_num=217741},  TransactionID=40006504572 AuthCode=YIGBHA]
2017-09-07 08:54:57,319 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId2: 6n5ZeZ9EaH9 getGatewayServicePassword2: ************m6hG
2017-09-07 08:54:58,414 ERROR [Thread-26] (gui.dialog.RefundTenderCreditDialog.processRequest()) - Error while processing payment authorization request.
com.sonnyscontrols.payment.PaymentProcessorException: There was an error communicating with Authorize.NET. Please verify the POS has internet connectivity and if so, then this issue is with Authorize.NET servers. Please contact Authorize.NET (877) 447-3938.
	at com.sonnyscontrols.payment.authorizedotnet.AuthorizeDotNetProcessor.sendRequest(AuthorizeDotNetProcessor.java:247) ~[classes/:?]
	at com.sonnyscontrols.payment.authorizedotnet.AuthorizeDotNetProcessor.authorize(AuthorizeDotNetProcessor.java:165) ~[classes/:?]
	at com.autopilotcontrols.pos.gui.dialog.RefundTenderCreditDialog$ProcessAuthorization.processRequest(RefundTenderCreditDialog.java:729) [classes/:?]
	at com.autopilotcontrols.pos.gui.dialog.RefundTenderCreditDialog$ProcessAuthorization.run(RefundTenderCreditDialog.java:825) [classes/:?]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_40]
Caused by: java.lang.NumberFormatException: For input string: "1.0"
	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) ~[?:1.8.0_40]
	at java.lang.Integer.parseInt(Integer.java:580) ~[?:1.8.0_40]
	at java.lang.Integer.parseInt(Integer.java:615) ~[?:1.8.0_40]
	at net.authorize.aim.Result.createResult(Result.java:32) ~[anet-java-sdk-1.9.3.jar:?]
	at net.authorize.Merchant.postTransaction(Merchant.java:286) ~[anet-java-sdk-1.9.3.jar:?]
	at com.sonnyscontrols.payment.authorizedotnet.AuthorizeDotNetProcessor.sendRequest(AuthorizeDotNetProcessor.java:245) ~[classes/:?]
	... 4 more&lt;/PRE&gt;</description>
      <pubDate>Thu, 07 Sep 2017 13:07:06 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59715#M34292</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-09-07T13:07:06Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59778#M34351</link>
      <description>&lt;P&gt;Aaron, hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i wrote twice to dev support about this issue but still no response.&lt;/P&gt;&lt;P&gt;Where do i need to create a bug?&lt;/P&gt;</description>
      <pubDate>Wed, 13 Sep 2017 13:02:30 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59778#M34351</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-09-13T13:02:30Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59780#M34353</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.developer.cybersource.com/t5/user/viewprofilepage/user-id/22258"&gt;@autopilot&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Have you actually opened a case with support? If so, send me your case number and I'll escalate it. If not, please call our support to open a case, or log into the Merchant Interface and start an eTicket to open a case&amp;nbsp;from there.&lt;/P&gt;</description>
      <pubDate>Wed, 13 Sep 2017 16:11:27 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59780#M34353</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-09-13T16:11:27Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59914#M34483</link>
      <description>&lt;P&gt;OK&amp;nbsp; we will call and opne a ticket becuase we do not have an account at account.authorize.net only test.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Today i tried to test a partial authorization transaction and got a similar xml parsing error:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;2017-09-19 10:53:44,644 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.logTransactionRequest()) - --&amp;gt;[Type=AUTH_CAPTURE Amount=462.25 CC-type=VISA CC-number=XXXXXXXXX0027 CC-ExpDate=11/19, Request map: {x_test_request=FALSE, x_version=3.1, x_market_type=2, x_allow_partial_Auth=TRUE, x_device_type=10, x_invoice_num=1505832809329},  TransactionID= AuthCode=]&lt;/PRE&gt;&lt;P&gt;the response i received:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;2017-09-19 10:53:45,442 WARN  [Thread-26] (authorize.util.XmlUtility.warn()) - Exception Details-&amp;gt; Code:'null', Message:'null'
2017-09-19 10:53:45,442 WARN  [Thread-26] (aim.cardpresent.Result.warn()) - Error de-serializing XML to PrepaidCard: '[PrepaidCard: null]', ErrorMessage: 'null'
2017-09-19 10:53:45,443 INFO  [Thread-26] (payment.authorizedotnet.AuthorizeDotNetProcessor.logResponse()) - &amp;lt;--[Status= refTransId=null authCode=4AP1CU transId=40007184638]&lt;/PRE&gt;&lt;P&gt;Not really sure why PrepaidCard is mentioned here as this transaction was made using 4007000000027 test VIsa card.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;when using another card - MasterCard 5424000000000015 - same error occured by status was populated:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;2017-09-19 11:13:47,480 INFO  [Thread-27] (gui.dialog.TenderCreditDialog.run()) - Sending authorizer request: DefaultPaymentProcessorRequest [creditCard=CreditCard [nameOnCard=null, number=XXXXXXXXXXXX0015, track1=null, track2=null, expireMonth=11, expireYear=19, type=MASTERCARD] requestType=SALE, customerNumber=null, transactionNumber=1505834015965, amount=462.26, initAmount=0.0, authorizationCode=null, purchaseType=ONE_TIME, recordNumber=null, referenceNumber=null, referenceData=null, processData=null, transactionCompleteDate=null, token1=null, token2=null, salesDeviceId=1]
2017-09-19 11:13:47,480 INFO  [Thread-27] (payment.authorizedotnet.AuthorizeDotNetProcessor.authorize()) - Starting processing: 1505834027480
2017-09-19 11:13:47,480 WARN  [Thread-27] (payment.authorizedotnet.AuthorizeDotNetProcessor.validatePaymentAuthorizer()) - Test mode enabled, using test environment.
2017-09-19 11:13:47,480 INFO  [Thread-27] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId: 5S8hU6ja getGatewayServicePassword: ************6gAm
2017-09-19 11:13:47,481 INFO  [Thread-27] (payment.authorizedotnet.AuthorizeDotNetProcessor.logTransactionRequest()) - --&amp;gt;[Type=AUTH_CAPTURE Amount=462.26 CC-type=MASTER_CARD CC-number=XXXXXXXXXXXX0015 CC-ExpDate=11/19, Request map: {x_test_request=FALSE, x_version=3.1, x_market_type=2, x_allow_partial_Auth=TRUE, x_device_type=10, x_invoice_num=1505834015965},  TransactionID= AuthCode=]
2017-09-19 11:13:47,481 INFO  [Thread-27] (payment.authorizedotnet.AuthorizeDotNetProcessor.getMerchant()) - Using getGatewayServiceId: 5S8hU6ja getGatewayServicePassword: ************6gAm
2017-09-19 11:13:48,207 WARN  [Thread-27] (authorize.util.XmlUtility.warn()) - Exception Details-&amp;gt; Code:'null', Message:'null'
2017-09-19 11:13:48,207 WARN  [Thread-27] (aim.cardpresent.Result.warn()) - Error de-serializing XML to PrepaidCard: '[PrepaidCard: null]', ErrorMessage: 'null'
2017-09-19 11:13:48,207 INFO  [Thread-27] (payment.authorizedotnet.AuthorizeDotNetProcessor.logResponse()) - &amp;lt;--[Status=APPROVED ReasonResponseCode=1 ReasonResponseText=This transaction has been approved. ResponseCode=1 ResponseCodeText=This transaction has been approved. refTransId=null authCode=46LBD1 transId=40007184951]&lt;/PRE&gt;</description>
      <pubDate>Tue, 19 Sep 2017 15:16:11 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59914#M34483</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-09-19T15:16:11Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59915#M34484</link>
      <description>&lt;P&gt;Another question: as i mentioned, i try to process a parial authorization here but never so far get an appropriate message, it always Approved for all 462.2x amounts. Am i doing sometihng wrong?&lt;/P&gt;</description>
      <pubDate>Tue, 19 Sep 2017 15:26:00 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59915#M34484</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-09-19T15:26:00Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59918#M34487</link>
      <description>&lt;P&gt;If you're trying to simulate a decline, use one of the triggers in &lt;A href="https://developer.authorize.net/hello_world/testing_guide/" target="_blank"&gt;our Testing Guide&lt;/A&gt;. For example, if you want a transaction to be declined in sandbox, send it with a zip code of&amp;nbsp;46282 or an amount of $70.02.&lt;/P&gt;</description>
      <pubDate>Tue, 19 Sep 2017 17:13:10 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59918#M34487</guid>
      <dc:creator>Aaron</dc:creator>
      <dc:date>2017-09-19T17:13:10Z</dc:date>
    </item>
    <item>
      <title>Re: Xml parse error in XmlUtility.descapeStringForXml</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59919#M34488</link>
      <description>&lt;P&gt;Aaron thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i am not trying to simulate a decline, i am trying to simulate a partial auth case. So follow &lt;SPAN class="guideSubheading"&gt;&lt;SPAN class="flowsectiontitle"&gt;PARTIAL AUTHORIZATION RESPONSES&lt;/SPAN&gt;&lt;/SPAN&gt; section on &lt;A href="http://developer.authorize.net/hello_world/testing_guide/" target="_blank"&gt;http://developer.authorize.net/hello_world/testing_guide/&lt;/A&gt; but so far for all cases receive approved response like this&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;2017-09-19 11:13:48,207 INFO  [Thread-27] (payment.authorizedotnet.AuthorizeDotNetProcessor.logResponse()) - &amp;lt;--[Status=APPROVED ReasonResponseCode=1 ReasonResponseText=This transaction has been approved. ResponseCode=1 ResponseCodeText=This transaction has been approved. refTransId=null authCode=46LBD1 transId=40007184951]&lt;/PRE&gt;&lt;P&gt;or no status in response as in he post above.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I simply want to receive a message "there is not enough of balance on the account".&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;our software includes x_allow_partial_auth = true and Partial Auth setting in the test account is also on.&lt;/P&gt;</description>
      <pubDate>Tue, 19 Sep 2017 17:36:06 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Xml-parse-error-in-XmlUtility-descapeStringForXml/m-p/59919#M34488</guid>
      <dc:creator>autopilot</dc:creator>
      <dc:date>2017-09-19T17:36:06Z</dc:date>
    </item>
  </channel>
</rss>

