True.

Simple fix:
/includes/modules/payment/authorizenet.php
around line 607 change this:
Code:
      $sql = $db->bindVars($sql, ':transID', $response['x_trans_id'], 'string');
to this:
Code:
      if (trim($response['x_trans_id']) != '') {
        $sql = $db->bindVars($sql, ':transID', $response['x_trans_id'], 'string');
      } else {
        $sql = $db->bindVars($sql, ':transID', 'NULL', 'passthru');
      }
Same with authorizenet_aim.php line 687, if you're going to use the AIM module.