summaryrefslogtreecommitdiff
path: root/FS/FS/pay_batch
diff options
context:
space:
mode:
authorJonathan Prykop <jonathan@freeside.biz>2015-07-31 18:21:14 -0500
committerJonathan Prykop <jonathan@freeside.biz>2015-07-31 18:25:11 -0500
commit6a24b8134d19a68339b927c9887f796ba7a04e0e (patch)
treeae8785c166c31a70bf05b13f6401eb44449dbd0d /FS/FS/pay_batch
parent180889a6af35a509edd0622473c5d6f5e07b836e (diff)
RT#37465: RBC PAD error when calculating totals
Diffstat (limited to 'FS/FS/pay_batch')
-rw-r--r--FS/FS/pay_batch/RBC.pm9
1 files changed, 7 insertions, 2 deletions
diff --git a/FS/FS/pay_batch/RBC.pm b/FS/FS/pay_batch/RBC.pm
index 47fc8d4..53f8108 100644
--- a/FS/FS/pay_batch/RBC.pm
+++ b/FS/FS/pay_batch/RBC.pm
@@ -90,7 +90,6 @@ $name = 'RBC';
my( $hash, $total, $line ) = @_;
return "Can't process Credit Detail Record, aborting import"
if ($hash->{'recordtype'} eq '2');
- $totaloffset = sprintf("%.2f", $totaloffset / 100 );
$total += $totaloffset;
$total = sprintf("%.2f", $total);
# We assume here that this is an 'All Records' or 'Input Records' report.
@@ -109,10 +108,16 @@ $name = 'RBC';
#we already declined it this run, no takebacks
if ($declined->{$hash->{'paybatchnum'}}) {
#file counts this as part of total, but we skip
- $totaloffset += $hash->{'paid'}
+ $totaloffset += sprintf("%.2f", $hash->{'paid'} / 100 )
if $hash->{'status'} eq ' '; #false laziness with 'approved' above
return 1;
}
+ #skipping W for now (maybe it should be declined?)
+ if ($hash->{'status'} eq 'W') {
+ #file counts this as part of total, but we skip
+ $totaloffset += sprintf("%.2f", $hash->{'paid'} / 100 );
+ return 1;
+ }
return
($hash->{'recordtype'} eq '3') || #Account Trailer Record, concludes returned items
($hash->{'subtype'} ne '0'); #error messages, etc, too late to apply to previous entry