The description being sent may be causing the error. In the authorize.net code, change the description to a static value:
$AuthNet_itemized[0][1] = "x_description";
$AuthNet_itemized[1][1] = "Jewelry Store Order";
None of the values passed to Authorize.net can contain any HTML so you will need to strip them from the description, also make sure there is no HTML in the other columns.
The line item 1 error means that invalid information is being sent in the order description. Here is the authorize.net API guide. page 20 - 21 talks about the line item requirements:
AIM_guide.pdf
The code for bulding up the line item will look like:
while ( !$eCart1->EOF() ) {
$nextIndex = count($AuthNet_itemized[0]);
$AuthNet_itemized[0][$nextIndex] = "ID";
$AuthNet_itemized[1][$nextIndex] = "".$eCart1->DisplayInfo("ID") ."";
$nextIndex = count($AuthNet_itemized[0]);
$AuthNet_itemized[0][$nextIndex] = "Name";
$AuthNet_itemized[1][$nextIndex] = "".$eCart1->DisplayInfo("Name") ."";
$nextIndex = count($AuthNet_itemized[0]);
$AuthNet_itemized[0][$nextIndex] = "Description";
$AuthNet_itemized[1][$nextIndex] = "".$eCart1->DisplayInfo("Description") ."";
$nextIndex = count($AuthNet_itemized[0]);
$AuthNet_itemized[0][$nextIndex] = "Quantity";
$AuthNet_itemized[1][$nextIndex] = "".$eCart1->DisplayInfo("Quantity") ."";
$nextIndex = count($AuthNet_itemized[0]);
$AuthNet_itemized[0][$nextIndex] = "Price";
$AuthNet_itemized[1][$nextIndex] = "".$eCart1->DisplayInfo("Price") ."";
$nextIndex = count($AuthNet_itemized[0]);
$AuthNet_itemized[0][$nextIndex] = "Taxable";
$AuthNet_itemized[1][$nextIndex] = "YES";
$eCart1->MoveNext();
$cartIndex ++;
}
This code is basedf on a cart named eCart1, your will be slightly different. To pinpoint where the problem is, one at a time, hard code the values. for example, change:
$AuthNet_itemized[0][$nextIndex] = "ID";
$AuthNet_itemized[1][$nextIndex] = "".$eCart1->DisplayInfo("ID") ."";
to:
$AuthNet_itemized[0][$nextIndex] = "ID";
$AuthNet_itemized[1][$nextIndex] = "item1";
then test again. If you still get the same error, change:
$AuthNet_itemized[0][$nextIndex] = "Name";
$AuthNet_itemized[1][$nextIndex] = "".$eCart1->DisplayInfo("Name") ."";
to:
$AuthNet_itemized[0][$nextIndex] = "Name";
$AuthNet_itemized[1][$nextIndex] = "item name";
and test again. then change the description and so on till you find the culprit.