projects
/
freeside.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
367f014
)
compliance solutions integration: always send a zip, whatever zip we have, RT#78660...
author
Ivan Kohler
<ivan@freeside.biz>
Fri, 17 Nov 2017 23:19:12 +0000
(15:19 -0800)
committer
Ivan Kohler
<ivan@freeside.biz>
Fri, 17 Nov 2017 23:19:12 +0000
(15:19 -0800)
FS/FS/TaxEngine/compliance_solutions.pm
patch
|
blob
|
history
diff --git
a/FS/FS/TaxEngine/compliance_solutions.pm
b/FS/FS/TaxEngine/compliance_solutions.pm
index
33b6a3e
..
2cb9cb5
100644
(file)
--- a/
FS/FS/TaxEngine/compliance_solutions.pm
+++ b/
FS/FS/TaxEngine/compliance_solutions.pm
@@
-140,18
+140,26
@@
sub build_input_item {
" recurring charge\n"
if !$taxproduct;
" recurring charge\n"
if !$taxproduct;
- # when billing on cancellation there are no units
- my $units = $self->{cancel} ? 0 : $cust_bill_pkg->units;
- unshift @items, {
+ my %item = (
$self->generic_item($cust_bill, $cust_main),
record_type => 'S',
unique_id => 'cust_bill_pkg '. $cust_bill_pkg->billpkgnum. ' recur',
charge_amount => $recur_without_usage,
$self->generic_item($cust_bill, $cust_main),
record_type => 'S',
unique_id => 'cust_bill_pkg '. $cust_bill_pkg->billpkgnum. ' recur',
charge_amount => $recur_without_usage,
- location_a => $cust_bill_pkg->tax_location->zip,
productcode => substr($taxproduct,0,4),
servicecode => substr($taxproduct,4,3),
productcode => substr($taxproduct,0,4),
servicecode => substr($taxproduct,4,3),
- units => $units,
- };
+ );
+
+ # when billing on cancellation there are no units
+ $item{units} = $self->{cancel} ? 0 : $cust_bill_pkg->units;
+
+ my $location = $cust_bill_pkg->tax_location
+ || ( $conf->exists('tax-ship_address')
+ ? $cust_main->ship_location
+ : $cust_main->bill_location
+ );
+ $item{location_a} = $location->zip;
+
+ unshift @items, \%item;
}
###
}
###
@@
-167,16
+175,24
@@
sub build_input_item {
" setup charge\n"
if !$taxproduct;
" setup charge\n"
if !$taxproduct;
- unshift @items, {
+ my %item = (
$self->generic_item($cust_bill, $cust_main),
record_type => 'S',
unique_id => 'cust_bill_pkg '. $cust_bill_pkg->billpkgnum. ' setup',
charge_amount => $cust_bill_pkg->setup,
$self->generic_item($cust_bill, $cust_main),
record_type => 'S',
unique_id => 'cust_bill_pkg '. $cust_bill_pkg->billpkgnum. ' setup',
charge_amount => $cust_bill_pkg->setup,
- location_a => $cust_bill_pkg->tax_location->zip,
productcode => substr($taxproduct,0,4),
servicecode => substr($taxproduct,4,3),
units => $cust_bill_pkg->units,
productcode => substr($taxproduct,0,4),
servicecode => substr($taxproduct,4,3),
units => $cust_bill_pkg->units,
- };
+ );
+
+ my $location = $cust_bill_pkg->tax_location
+ || ( $conf->exists('tax-ship_address')
+ ? $cust_main->ship_location
+ : $cust_main->bill_location
+ );
+ $item{location_a} = $location->zip;
+
+ unshift @items, \%item;
}
return @items;
}
return @items;