<?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 getCustomerPaymentProfileList() in Java SDK in Integration and Testing</title>
    <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/getCustomerPaymentProfileList-in-Java-SDK/m-p/30880#M16137</link>
    <description>&lt;P&gt;Thought I'd post this so perhaps someone else doesn't have to suffer thru it. If you're using the Java SDK (anet_java_sdk-1.4.6) and attempting to get the payment profiles associated with a customer profile you'll only get the Credit Card ones currently. Here's some partial code for the request:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;net.authorize.cim.Transaction transaction = merchant.createCIMTransaction(TransactionType.GET_CUSTOMER_PROFILE);&lt;BR /&gt;transaction.setCustomerProfileId(customerProfileId);&lt;/P&gt;&lt;P&gt;Result&amp;lt;Transaction&amp;gt; result = (Result&amp;lt;Transaction&amp;gt;)merchant.postTransaction(transaction);&lt;BR /&gt;Iterator itr = result.getCustomerPaymentProfileList().iterator();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;To get the Bank Account profiles you'll need to fix the source code. In net.authorize.cim.Result.java it's missing the line in bold below:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;PRE&gt;	private void importPaymentInfo(Element root_el, PaymentProfile paymentProfile) {
		NodeList payment_list = root_el.getElementsByTagName(AuthNetField.ELEMENT_PAYMENT.getFieldName());

		if(payment_list.getLength() == 0) {
			return;
		}

		Element payment_el = (Element)payment_list.item(0);
		NodeList credit_card_list = payment_el.getElementsByTagName(AuthNetField.ELEMENT_CREDIT_CARD.getFieldName());
		if(credit_card_list.getLength() != 0) {
			Element credit_card_el = (Element)credit_card_list.item(0);
			CreditCard creditCard = CreditCard.createCreditCard();
			creditCard.setMaskedCreditCardNumber(getElementText(credit_card_el, AuthNetField.ELEMENT_CREDIT_CARD_NUMBER.getFieldName()));
			creditCard.setExpirationDate(getElementText(credit_card_el, AuthNetField.ELEMENT_CREDIT_CARD_EXPIRY.getFieldName()));

			paymentProfile.addPayment(Payment.createPayment(creditCard));
		}

		NodeList bank_account_list = payment_el.getElementsByTagName(AuthNetField.ELEMENT_BANK_ACCOUNT.getFieldName());
		if(bank_account_list.getLength() != 0) {
			Element bank_account_el = (Element)bank_account_list.item(0);
			BankAccount bankAccount = BankAccount.createBankAccount();
			bankAccount.setBankAccountType(BankAccountType.findByValue(
					getElementText(bank_account_el, AuthNetField.ELEMENT_ACCOUNT_TYPE.getFieldName())));
			bankAccount.setRoutingNumber(getElementText(bank_account_el, AuthNetField.ELEMENT_ROUTING_NUMBER.getFieldName()));
			bankAccount.setBankAccountNumber(getElementText(bank_account_el, AuthNetField.ELEMENT_ACCOUNT_NUMBER.getFieldName()));
			bankAccount.setBankAccountName(getElementText(bank_account_el, AuthNetField.ELEMENT_NAME_ON_ACCOUNT.getFieldName()));
			bankAccount.setBankName(getElementText(bank_account_el, AuthNetField.ELEMENT_BANK_NAME.getFieldName()));

			&lt;STRONG&gt;&lt;FONT size="1"&gt;paymentProfile.addPayment(Payment.createPayment(bankAccount));&lt;/FONT&gt;&lt;/STRONG&gt;
		}
	}&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It may not show up that well in the code but I added the last line&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;paymentProfile.addPayment(Payment.createPayment(bankAccount));&lt;/STRONG&gt;&lt;/P&gt;&lt;/DIV&gt;</description>
    <pubDate>Fri, 26 Oct 2012 17:04:14 GMT</pubDate>
    <dc:creator>gregberger</dc:creator>
    <dc:date>2012-10-26T17:04:14Z</dc:date>
    <item>
      <title>getCustomerPaymentProfileList() in Java SDK</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/getCustomerPaymentProfileList-in-Java-SDK/m-p/30880#M16137</link>
      <description>&lt;P&gt;Thought I'd post this so perhaps someone else doesn't have to suffer thru it. If you're using the Java SDK (anet_java_sdk-1.4.6) and attempting to get the payment profiles associated with a customer profile you'll only get the Credit Card ones currently. Here's some partial code for the request:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;net.authorize.cim.Transaction transaction = merchant.createCIMTransaction(TransactionType.GET_CUSTOMER_PROFILE);&lt;BR /&gt;transaction.setCustomerProfileId(customerProfileId);&lt;/P&gt;&lt;P&gt;Result&amp;lt;Transaction&amp;gt; result = (Result&amp;lt;Transaction&amp;gt;)merchant.postTransaction(transaction);&lt;BR /&gt;Iterator itr = result.getCustomerPaymentProfileList().iterator();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;To get the Bank Account profiles you'll need to fix the source code. In net.authorize.cim.Result.java it's missing the line in bold below:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;PRE&gt;	private void importPaymentInfo(Element root_el, PaymentProfile paymentProfile) {
		NodeList payment_list = root_el.getElementsByTagName(AuthNetField.ELEMENT_PAYMENT.getFieldName());

		if(payment_list.getLength() == 0) {
			return;
		}

		Element payment_el = (Element)payment_list.item(0);
		NodeList credit_card_list = payment_el.getElementsByTagName(AuthNetField.ELEMENT_CREDIT_CARD.getFieldName());
		if(credit_card_list.getLength() != 0) {
			Element credit_card_el = (Element)credit_card_list.item(0);
			CreditCard creditCard = CreditCard.createCreditCard();
			creditCard.setMaskedCreditCardNumber(getElementText(credit_card_el, AuthNetField.ELEMENT_CREDIT_CARD_NUMBER.getFieldName()));
			creditCard.setExpirationDate(getElementText(credit_card_el, AuthNetField.ELEMENT_CREDIT_CARD_EXPIRY.getFieldName()));

			paymentProfile.addPayment(Payment.createPayment(creditCard));
		}

		NodeList bank_account_list = payment_el.getElementsByTagName(AuthNetField.ELEMENT_BANK_ACCOUNT.getFieldName());
		if(bank_account_list.getLength() != 0) {
			Element bank_account_el = (Element)bank_account_list.item(0);
			BankAccount bankAccount = BankAccount.createBankAccount();
			bankAccount.setBankAccountType(BankAccountType.findByValue(
					getElementText(bank_account_el, AuthNetField.ELEMENT_ACCOUNT_TYPE.getFieldName())));
			bankAccount.setRoutingNumber(getElementText(bank_account_el, AuthNetField.ELEMENT_ROUTING_NUMBER.getFieldName()));
			bankAccount.setBankAccountNumber(getElementText(bank_account_el, AuthNetField.ELEMENT_ACCOUNT_NUMBER.getFieldName()));
			bankAccount.setBankAccountName(getElementText(bank_account_el, AuthNetField.ELEMENT_NAME_ON_ACCOUNT.getFieldName()));
			bankAccount.setBankName(getElementText(bank_account_el, AuthNetField.ELEMENT_BANK_NAME.getFieldName()));

			&lt;STRONG&gt;&lt;FONT size="1"&gt;paymentProfile.addPayment(Payment.createPayment(bankAccount));&lt;/FONT&gt;&lt;/STRONG&gt;
		}
	}&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It may not show up that well in the code but I added the last line&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;paymentProfile.addPayment(Payment.createPayment(bankAccount));&lt;/STRONG&gt;&lt;/P&gt;&lt;/DIV&gt;</description>
      <pubDate>Fri, 26 Oct 2012 17:04:14 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/getCustomerPaymentProfileList-in-Java-SDK/m-p/30880#M16137</guid>
      <dc:creator>gregberger</dc:creator>
      <dc:date>2012-10-26T17:04:14Z</dc:date>
    </item>
    <item>
      <title>Re: getCustomerPaymentProfileList() in Java SDK</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/getCustomerPaymentProfileList-in-Java-SDK/m-p/30944#M16167</link>
      <description>&lt;P&gt;Hi regberger,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you for posting this. We will make sure to pass this to our developers for further review.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks,&lt;/P&gt;
&lt;P&gt;Joy&lt;/P&gt;</description>
      <pubDate>Mon, 29 Oct 2012 22:38:28 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/getCustomerPaymentProfileList-in-Java-SDK/m-p/30944#M16167</guid>
      <dc:creator>Joy</dc:creator>
      <dc:date>2012-10-29T22:38:28Z</dc:date>
    </item>
  </channel>
</rss>

