Automatické načtení sídla firmy a verifikace DIČ (VAT) pro celou EU
MyEgo.cz
Automatické načtení sídla firmy a verifikace DIČ (VAT) pro celou EU
Minulý rok jsem publikoval krátký článek ohledně automatické načtení sídla české firmy a DIČ podle zadaného IČ z ARES XML pomocí PHP a jQuery. Uvedenou službu je možné snado rozšířit na celou EU pomocí webové služby dostupné na adrese ec.europa.eu. Tato službá má totiž veřejně dostupné WSDL a pomocí SOAP klienta ji snadno můžete dotazovat.
Zjednodušený kód produkující stejný výstup jako dříve odkazovaný skript pro ARES může vypadat takto - vstupem je dvouznakový kód země a IČ (přesněji DIČ bez počátečního kódu země, což v praxi bývá IČ):
<?php header("Content-Type: application/json; charset=UTF-8"); $a = array(); try { $ic = $_REQUEST['ic']; // IČ $country = $_REQUEST['country']; // Country code $soap = new SoapClient( 'http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl'); $params = array('countryCode' => $country, 'vatNumber' => $ic); $result = $soap->checkVatApprox($params); if (!$result->valid) { $a['stav'] = 'DIČ '.$country.$ic.' nebylo nalezeno'; } else { $a['ic'] = strval($result->vatNumber); $a['dic'] = $country.$a['ic']; $a['firma'] = strval($result->traderName); if (!$result->traderCity && $result->traderAddress) { $t = explode("\n",$result->traderAddress); $result->traderStreet = $t[0]; $result->traderCity = $t[1]; $result->traderPostcode = $t[2]; } $a['ulice'] = strval($result->traderStreet); $a['mesto'] = strval($result->traderCity); $a['psc'] = strval($result->traderPostcode); $a['stav'] = 'ok'; } } catch (Exception $e) { $a['stav'] = 'EC služba právě není dostupná'; } echo json_encode($a); ?>
A výstupem třeba pro Mladá fronta a.s. je takovýto JSON:
{ "ic":"49240315", "dic":"CZ49240315", "firma":"Mlad\u00e1 fronta a.s.", "ulice":"Mezi Vodami 1952\/9", "mesto":"PRAHA 12 - MOD\u0158ANY", "psc":"143 00 PRAHA 412", "stav":"ok" }
A pokud chcete to samé řešení nezjednodušené, Jirka Knesl je napsal.
Škoda jen, že tahle funkce je použitelná jen pro plátce DPH v EU. Nevíte jestli někde existuje nějaká dostupná databáze vč. neplátců?