We are using the Java API to retrieve transaction details so that we can build some custom reports for our customers.
During the process of building out one of the reports, I noticed that the CardType was always coming back as unknown.
That issue turned out to be because of the following line of the net.authorize.reporting.Result:
creditCard.setCardType(CardType.findByValue(getElementText(credit_card_el, AuthNetField.ELEMENT_ACCOUNT_TYPE.getFieldName())));
which pulls the "accountType" value out of the message and then maps it to a CardType value. The problem is that on a credit transaction, the value comes from this field "cardType".
So, I added a new value to the AuthNetField enum:
ELEMENT_CARD_TYPE("cardType")
And then changed the line above to be:
creditCard.setCardType(CardType.findByValue(getElementText(credit_card_el, AuthNetField.ELEMENT_CARD_TYPE.getFieldName())));
Please update the Java API at your earliest convenience so that I can run against an official version.
Also, please take a look at the fix I submitted for the missing for incorrect shipping/billing information in the java reporting sdk.
Solved! Go to Solution.
12-20-2013 08:16 PM