ProcessPayment in CPayment class

I am calling the ProcessPayment function in the CPayment class to process credit card transactions. This function has worked very well, but I began receiving errors from this function on a few specific users. I tracked the error down, and the ProcessPayment function itself was throwing an exception.

It turned out that the exception was being thrown when an ampersand was in the billing address. I am now replacing the ampersand with the word "AND", and the function processes successfully.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Thanks!

Thanks for posting this - I ran into this and never would've figured it out on my own! Still seems to be a problem with version 0.21 of the iBOs - I'm going to try to put in a bug fix request for this.

For anyone else interested, the error seems to be an IndexOutOfRangeException occurring in Asi.PaymentGateway.PayflowProPaymentGatewayResponse.GenerateResponse.

Here's the stack trace:

at Asi.PaymentGateway.PayflowProPaymentGatewayResponse.GenerateResponse(String responseString, TransactionType transactionType)
at Asi.PaymentGateway.PayflowProPaymentGatewayProvider.ProcessPayment(TransactionType transactionType, CPayment payment, CAddressBasic billingAddress)
at Asi.iBO.Commerce.PaymentGatewayService.ProcessPayment(TransactionType transactionType, CPayment payment, CAddressBasic billingAddress)
at Asi.iBO.Financials.CPayment.ProcessPayment(TransactionType transactionType, CAddressBasic billingAddress) 

 

 

Chris Wilson
Web Applications Developer
Executive Director, Inc.