If you add the orderType object to transactionRequestType it fails. We are stuck on 1.9.6 where it still works. If you comment out the orderType line in the newer versions things work as expected. The message in the Authorize.Net iframe just says an "unexpected error has occured" in red at the bottom.
Code sample
//address information
var billAddress = new customerAddressType
{
firstName = currentBillingRecord.BillingFirstName,
lastName = currentBillingRecord.BillingLastName,
address = currentBillingRecord.BillingAddress.StreetAddress1,
city = currentBillingRecord.BillingAddress.City,
state = currentBillingRecord.BillingAddress.StateProvinceCode,
zip = currentBillingRecord.BillingAddress.PostalCode,
phoneNumber = phoneNumber
};
var order = new orderType
{
invoiceNumber = orderNumber,
};
var transactionRequest = new transactionRequestType
{
transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), // authorize only
amount = amount,
billTo = billAddress,
order = order
};
If you add the orderType object to transactionRequestType it fails. We are stuck on 1.9.6 where it still works. If you comment out the orderType line in the newer versions things work as expected. The message in the Authorize.Net iframe just says an "unexpected error has occured" in red at the bottom.
Here are links to other people experiencing this. https://community.developer.cybersource.com/t5/Integration-and-Testing/OrderType-is-causing-Unexpected-error-during-Payment-withour/td-p/65309 https://community.developer.cybersource.com/t5/Integration-and-Testing/Hosted-Payment-Form-gt-Unexpected-Error/m-p/74806 https://community.developer.cybersource.com/t5/Integration-and-Testing/Accept-Hosted-transactionRequestType-Order-causes-Unexpected/m-p/66972 https://stackoverflow.com/questions/56861782/authorize-net-unexpected-error-while-using-invoicenumber
Code sample //address information var billAddress = new customerAddressType { firstName = currentBillingRecord.BillingFirstName, lastName = currentBillingRecord.BillingLastName, address = currentBillingRecord.BillingAddress.StreetAddress1, city = currentBillingRecord.BillingAddress.City, state = currentBillingRecord.BillingAddress.StateProvinceCode, zip = currentBillingRecord.BillingAddress.PostalCode, phoneNumber = phoneNumber };
var order = new orderType { invoiceNumber = orderNumber, };
var transactionRequest = new transactionRequestType { transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), // authorize only amount = amount, billTo = billAddress, order = order };