Business-Tax-VAT-Validation
view release on metacpan or search on metacpan
lib/Business/Tax/VAT/Validation.pm view on Meta::CPAN
sub _check_vies {
my ($self, $vatNumber, $countryCode) = @_;
my $ua = $self->_get_ua();
my $request = HTTP::Request->new(POST => $self->{baseurl});
$request->content(_in_soap_envelope($vatNumber, $countryCode));
$request->content_type("text/xml; charset=utf-8");
my $response = $ua->request($request);
return $countryCode . '-' . $vatNumber if $self->_is_res_ok( $response->code, $response->decoded_content );
}
sub _check_hmrc {
my ($self, $vatNumber, $countryCode) = @_;
my $ua = $self->_get_ua();
my $request = HTTP::Request->new(GET => $self->{hmrc_baseurl}.$vatNumber);
$request->header(Accept => 'application/vnd.hmrc.1.0+json');
my $response = $ua->request($request);
$self->{res} = $response->decoded_content;
if ($response->code == 200) {
my $data = decode_json($self->{res});
$self->{information}->{name} = $data->{target}->{name};
my $line = 1;
my $address = "";
while (defined $data->{target}->{address}->{"line$line"}) {
$address .= $data->{target}->{address}->{"line$line"}."\n";
$line++;
}
$address .= $data->{target}->{address}->{postcode};
( run in 0.212 second using v1.01-cache-2.11-cpan-454fe037f31 )