From c1e83aee8f703eb57a28262da91f59b9eea6838e Mon Sep 17 00:00:00 2001 From: Jonathan Prykop Date: Fri, 30 Sep 2016 19:00:17 -0500 Subject: [PATCH] 72219: High-Priority: Electronic Check Batches, BillBuddy [download fixes] --- BillBuddy.pm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/BillBuddy.pm b/BillBuddy.pm index 5affa4c..8eb4860 100644 --- a/BillBuddy.pm +++ b/BillBuddy.pm @@ -338,7 +338,7 @@ sub download { my $error = ''; next if grep(/^$status$/,('submitted','processing','scheduled')); $error = "Unknown return status: $status" - unless grep(/^$status$/,('deleted','declined')); + unless grep(/^$status$/,('approved','deleted','declined')); my $item = Business::BatchPayment->create(Item => order_number => $tid, tid => $resp->{'ResponseData'}->{'referencenumber'}, @@ -347,7 +347,15 @@ sub download { authorization => '', ); if ($resp->{'ResponseData'}->{'actualprocessdate'} =~ /^(\d\d\d\d).(\d\d).(\d\d)/) { - $item->payment_date($1.'-'.$2.'-'.$3); + $item->payment_date( + DateTime->new( + year => $1, + month => $2, + day => $3, + # this appears to be the tz being passed by BillBuddy + time_zone => 'Australia/Queensland', + ) + ); } else { warn "Could not parse actualprocessdate ".$resp->{'ResponseData'}->{'actualprocessdate'}; } -- 2.11.0