},
{
+ 'key' => 'suretax-hostname',
+ 'section' => 'taxation',
+ 'description' => 'SureTax server name; defaults to the test server.',
+ 'type' => 'text',
+ },
+
+ {
'key' => 'suretax-client_number',
'section' => 'taxation',
'description' => 'SureTax tax service client ID.',
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 $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)
@options;
foreach my $class ( '', split(',', $cgi->param('taxproductnums') ) ) {
- my $param = 'taxproductnum';
- $param .= "_$class" if length($class); # gah, "_$class"?
+ my $param = "taxproductnum_$class";
my $value = $cgi->param($param);
if ( $value == -1 ) {