our $conf;
-our $host = 'testapi.taxrating.net';
-# production: 'api.taxrating.net'
-
FS::UID->install_callback( sub {
$conf = FS::Conf->new;
# should we enable conf caching here?
my @lines = map { $self->build_item($_) }
$cust_bill->cust_bill_pkg;
+ return if !@lines;
+
my $ClientNumber = $conf->config('suretax-client_number')
or die "suretax-client_number config required.\n";
my $ValidationKey = $conf->config('suretax-validation_key')
# assemble the request hash
my $request = $self->build_request;
+ if (!$request) {
+ warn "no taxable items in invoice; skipping SureTax request\n" if $DEBUG;
+ return;
+ }
warn "sending SureTax request\n" if $DEBUG;
my $request_json = $json->encode($request);
warn $request_json if $DEBUG > 1;
+ my $host = $conf->config('suretax-hostname');
+ $host ||= 'testapi.taxrating.net';
+
# We are targeting the "V05" interface:
# - accepts both telecom and general sales transactions
# - produces results broken down by "invoice" (Freeside line item)