fix double insert of overpayments, RT#12655
[freeside.git] / FS / FS / cust_main / Billing_Realtime.pm
index bee1e03..500d2c2 100644 (file)
@@ -849,6 +849,7 @@ sub _realtime_bop_result {
     my $error = $cust_pay->insert($options{'manual'} ? ( 'manual' => 1 ) : () );
 
     if ( $error ) {
+      $dbh->rollback or die $dbh->errstr if $oldAutoCommit;
       $cust_pay->invnum(''); #try again with no specific invnum
       $cust_pay->paynum('');
       my $error2 = $cust_pay->insert( $options{'manual'} ?