Verifica partita IVA e codice fiscale

Puoi verificare i numeri?

2.6M * 300% = 7.8M != 700M

errore mio nell’indicare 300% che corrisponde a 3 volte il valore mentre volevo indicare 300 volte.

Ti riporto a questo punto l’analisi che mi ha portato a quel valore.

su circa 30 aziende con cui collaboro, alcune emettono verso la PA da 0 a 10 fatture all’anno, mentre emettono verso B2B dalle 100 alle 7000 fatture all’anno.
15 aziende fanno sono artigiani che complessivamente emettono 4000 fatture all’anno e zero verso la PA
Se volessi fare i conti esatti in base a queste realtà, dovrei scrivere che
su 100 fatture emesse di cui 4 verso la PA, quelle B2B sono 2.500% in più
su 7000 fatture emesse di cui 10 verso la PA, quelle B2B sono 70.000% in più (700B2B per ogni fattura va PA)
quindi nella realtà a me presente, le fatture B2B sono tra il 2500% e il 70.000% in più
quindi dovrei dire che su 2,65M PA le B2B sono tra 66,25M e 1.855,0M
Ma dato che la realtà a me conosciuta è limitata e che c’è chi fa 30 fatture all’anno come 20.000, c’è chi fa fatture solo alla PA e chi non ne fa nemmeno 1, mi sono limitato a ipotizzare una media dove per ogni fattura verso la PA vengono emesse 300 fatture verso B2B quindi 2.65M * 300 =795M

Ovviamente questo calcolo di basa, come scrivevo sopra, su una realtà limitata a me conosciuta.
L’agenzia delle entrate sicuramente sa quante fatture B2B vengono emesse data l’esistenza dello spesometro e tutti i controlli.

il punto focale è che in base al dato di Maggio rilasciato dal sito fatturaPa.gov, delle poche fatture emesse verso B2B lo 0.17% (2% degli errori, l’80% è dettato da imputazione/associazione errata del codice identificativo) sono bocciate per codice fiscale /partita iva. valore basso in tutti i sensi, sia a livello di % che di numeri. Su 47.085 sono circa 80
Ma su 790M il valore diventa più importante.
Inoltre fino a maggio, chi probabilmente emetteva fatture elettroniche, era un professionista.

Sono stato a 2 convegni sulla fatturazione elettronica per commercialisti promosso da CGN, eccetto il relatore che la faceva da inizio 2018, nessuno dei commercialisti con relativi cliente facevano fattura elettronica. Si parla di 2 sale da 150 /200 posti a sedere.
Inoltre il relatore ha riportato che durante una riunione con l’ADE, è stato comunicato che il numero delle partite iva che nel 2017 avevano accetto l’adozione della fattura elettronica per ottenere delle agevolazioni ( provvedimenti del 28 ottobre 2016 e del 27 marzo 2017) era inferiore a 20.

dal 2019 tutti dovranno fatturare elettronicamente e quindi dal commesso neo assunto nel negozio che non sa cosa sia una partita iva al vecchio artigiano di 60 anni che lasciava i campi mezzi compilati che poi in qualche modo poi si sistemava. quindi gli errori potrebbero aumentare e non poco.

seguo la discussione.
Noi utilizziamo già il webservice rilasciato dal Vies per il controllo delle partite Iva comunitarie ma emettendo centinaia di fatture al giorno abbiamo la necessità di validare le partite Iva italiane MOLTO prima dell’emissione della fattura e farlo manualmente è inaccettabile.
com’è possibile che dall’agenzia delle entrate non siano in grado di fornire uno strumento così banale ! ?

1 Mi Piace

Condivido,
Avere la possibilità di effettuare un controllo tramite webservice sull’esistenza della partita IVA italiana o codice fiscale direttamente da un interfaccia software a mio modesto avviso è imprescindibile (soprattutto ora alla luce dei nuovi obblighi di fatturazione elettronica).

OffTopic: Alessandra, mi scusi, è questo il WSDL messo a disposizione per verificare le partite IVA sul VIES che utilizzate? http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl

Grazie
Marco

1 Mi Piace

+1 sul fatto che dovrebbero esistere servizi per il controllo immediato di codici fiscali e partite iva

1 Mi Piace

Si è questo ed è molto basilare .
a questo link ci sono anche le FAq
http://ec.europa.eu/taxation_customs/vies/faqvies.do

ps. per chi lo dovesse richiamare da SAP R/3 il tag documentation mi ha creato alcuni problemi ed ho dovuto rimuoverlo

1 Mi Piace

A tutti i nuovi: se volete contribuire alla discussione sulle API REST in questione, potete
registrarvi a https://slack.developers.italia.it e cercare nel canale #fatturapa

Ciao, qualcuno ha novità sul tema? E’ impensabile per qualsiasi sito di E-commerce non avere, con l’avvento di questa fatturazione elettronica, la possibilità di verificare online l’esistenza di una partita iva. Ma possibile che all’agenzia delle entrate non realizzino questa evidenza?

1 Mi Piace

In realtà come si evince dalla screenshot allegata hanno implementao un servizio ma al momento non sono riuscito a trovare le specifiche complete.

Si possono controlare sino a 20 c.f. o p.iva

<?xml version="1.0" encoding="UTF-8"?>
<ns1:InputMassivo 
	xsi:schemaLocation="http://www.sogei.it/InputPubblico 
	untitled.xsd" 
	xmlns:ns1="http://www.sogei.it/InputPubblico"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <ns1:TipoRichiesta>
     	<ns1:Anagrafica>
        	<ns1:Richiesta>VER_ANAG</ns1:Richiesta>
                 <ns1:TipoSoggetto>CF</ns1:TipoSoggetto>
                 <ns1:ElencoSoggetti>
                   	<ns1:Soggetto>codice fiscale</ns1:Soggetto>

            	</ns1:ElencoSoggetti>
        </ns1:Anagrafica>
    </ns1:TipoRichiesta>
</ns1:InputMassivo>


<?xml version="1.0" encoding="UTF-8"?>
<ns1:InputMassivo 
	xsi:schemaLocation="http://www.sogei.it/InputPubblico 
	untitled.xsd" 
	xmlns:ns1="http://www.sogei.it/InputPubblico"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <ns1:TipoRichiesta>
     	<ns1:Anagrafica>
        	<ns1:Richiesta>VER_ANAG</ns1:Richiesta>
                 <ns1:TipoSoggetto>PIVA</ns1:TipoSoggetto>
                 <ns1:ElencoSoggetti>
                 <ns1:Soggetto>111111111111</ns1:Soggetto>
            	</ns1:ElencoSoggetti>
        </ns1:Anagrafica>
    </ns1:TipoRichiesta>
</ns1:InputMassivo>

1 Mi Piace

Interessante ! il servizio è disponibile nella sezione “Consultazioni e Download massivi” del portale
Fatture e Corrispettivi e subdolamente non è linkato alla pagina pubblica sul portale AgE

Ho inviato questa richiesta:

<?xml version="1.0" encoding="UTF-8"?>
 <ns1:InputMassivo xsi:schemaLocation="http://www.sogei.it/InputPubblico untitled.xsd" xmlns:ns1="http://www.sogei.it/InputPubblico" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <ns1:TipoRichiesta>
 <ns1:Anagrafica>
 <ns1:Richiesta>VER_ANAG</ns1:Richiesta>
  <ns1:TipoSoggetto>PIVA</ns1:TipoSoggetto>
   <ns1:ElencoSoggetti>
    <ns1:Soggetto>07973780013</ns1:Soggetto>
   </ns1:ElencoSoggetti>
  </ns1:Anagrafica>
 </ns1:TipoRichiesta>
</ns1:InputMassivo> 

e mi risponde così:

Richiesta correttamente acquisita con identificativo 311218102935000000000000070126 L'elaborazione sarà completata al massimo entro 5 giorni.

???

le specifiche le copio/incollo dal PDF qui per comodità:

Servizio di Consultazioni e Download Massivi – specifiche tecniche versione 1.0

Istruzioni per il servizio di Consultazioni e Download massivi (Specifiche Tecniche)
Il servizio di Consultazioni e Download massivi consente di inoltrare richieste per ottenere file massivi di varie tipologie, in relazione al profilo
autorizzativo dell’utente richiedente.
Le richieste, che vengono processate dal sistema in asincrono, producono uno o più file in funzione della mole dei dati da restituire organizzati in
uno o più archivi; tali file resteranno a disposizione dell’utente per un periodo di tempo limitato.
Per l’utilizzo del servizio occorre predisporre una richiesta in formato XML seguendo le specifiche del tracciato XSD sotto riportato.
Le informazioni da impostare cambiano a seconda del tipo di scarico massivo richiesto.

1. XSD Richiesta Massiva

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://www.sogei.it/InputPubblico" targetNamespace="http://www.sogei.it/InputPubblico" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xs:simpleType name="PivaType">
    <xs:restriction base="xs:string">
      <xs:pattern value="\d{11,11}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SoggettoType">
    <xs:restriction base="xs:string">
      <xs:pattern value="\p{L}{6,6}\d\d\p{L}\d\d\p{L}\d\d\d\p{L}"/>
      <xs:pattern value="\p{L}{6,6}[0-9LMNPQRSTUV][0-9LMNPQRSTUV]\p{L}[0-9LMNPQRSTUV][0-9LMNPQRSTUV]\p{L}[0-9LMNPQRSTUV][0-9LMNPQRSTUV][0-9LMNPQRSTUV]\p{L}"/>
      <xs:pattern value="\d{11,11}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FlussoType">
    <xs:restriction base="xs:string">
      <!--- tutti i tipi di fattura, fatture PA, fatture tra privati-->
      <xs:enumeration value="ALL"/>
      <xs:enumeration value="FPA"/>
      <xs:enumeration value="FPR"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="RuoloType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="CEDENTE"/>
      <xs:enumeration value="CESSIONARIO"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TipoRicercaType">
    <xs:restriction base="xs:string">
      <!--- ricerca da effettuare sulla singola partita iva o su tutto il soggetto-->
      <xs:enumeration value="PUNTUALE"/>
      <xs:enumeration value="COMPLETA"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TipoSoggettoType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="CF"/>
      <xs:enumeration value="PIVA"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="InputMassivo">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="TipoRichiesta">
          <xs:complexType>
            <xs:sequence>
              <xs:choice>
                <xs:element name="Anagrafica">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:element name="Richiesta" type="xs:string" fixed="VER_ANAG"/>
                      <!--- tipologia dei soggetti richiesti-->
                      <xs:element name="TipoSoggetto" type="ns1:TipoSoggettoType"/>
                      <xs:element name="ElencoSoggetti">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="Soggetto" type="ns1:SoggettoType" maxOccurs="unbounded"/>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                    </xs:sequence>
                  </xs:complexType>
                </xs:element>
                <xs:element name="Fatture">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:element name="Richiesta" type="xs:string" fixed="FATT"/>
                      <xs:element name="DataEmissione">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="Da" type="xs:date"/>
                            <xs:element name="A" type="xs:date"/>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="ElencoPiva">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="Piva" type="ns1:SoggettoType" maxOccurs="unbounded"/>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="Flusso" type="ns1:FlussoType"/>
                      <xs:element name="Ruolo" type="ns1:RuoloType"/>
                      <xs:element name="TipoRicerca" type="ns1:TipoRicercaType"/>
                    </xs:sequence>
                  </xs:complexType>
                </xs:element>
                <xs:element name="Ricevute">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:element name="Richiesta" type="xs:string" fixed="RICE"/>
                      <xs:element name="DataRicezione">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="Da" type="xs:date"/>
                            <xs:element name="A" type="xs:date"/>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="ElencoPiva">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="Piva" type="ns1:PivaType" maxOccurs="unbounded"/>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="Flusso" type="ns1:FlussoType"/>
                      <xs:element name="Ruolo" type="ns1:RuoloType"/>
                      <xs:element name="TipoRicerca" type="ns1:TipoRicercaType"/>
                    </xs:sequence>
                  </xs:complexType>
                </xs:element>
              </xs:choice>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

2. Richiesta di verifica anagrafica

Di seguito i valori da impostare per le richieste di verifica anagrafica, presenti nell’elemento
“Anagrafica”

NOME ELEMENTO VALORI AMMESSI NOTE
Richiesta VER_ANAG
TipoSoggetto CF, PIVA CF per verifiche su elenco di codici fiscali, PIVA per verifiche su elenco di Partite IVA
ElencoSoggetti.Soggetto Pattern definiti in SoggettoType Fino ad un massimo di 1000 elementi di tipo SoggettoType

3. Richiesta fatture elettroniche

Di seguito i valori da impostare per le richieste di fatture elettroniche, presenti nell’elemento “Fatture”

4. Richiesta ricevute

Di seguito i valori da impostare per le richieste di ricevute, presenti nell’elemento “Ricevute”

2 Mi Piace

:smiley: risponde in 5 giorni??? ma veramente?? allucinante…

non mi è chiaro, si possono controllare sino ad un massimo di 20 CF, quindi se io ho un’anagrafica clienti di 5000 record mi devo creare 250 file XML e caricarli singolarmente a mano? Non c’è la possibilità di caricare un archivio?

Mi sa che mi sto perdendo qualcosa di questo controllo “massivo” …

Marco

Pare di sì. Ma finchè è massivo, lasciami dire, è meno grave, si suppone che tu abbia tempo di aspettare l’esito… (cmq non manualmente, c’è il servizio web)

Qui invece mi pare non si sia capita la NECESSITA’ di controllare IMMEDIATAMENTE l’esistenza di una partitaiva inserita da un cliente in caso di acquisto su sito di ECOMMERCE! Ma come si fa ad avere un buco di funzionalità del genere?

1 Mi Piace

Infatti. Se devo aspettare fino a 5 giorni per avere l’esito, faccio prima a provare a mandare la fattura e vedere se viene scartata. Ma ovviamente a quel punto è troppo tardi!

Ho notato che il portate fatture e corrispettivi, se provi a compilare una fattura e inserisci la partita IVA poi internamente fa una chiamata AJAX che popola tutta l’anagrafica dell’azienda, senza chiedere un CAPTCHA. Non è interrogabile via API, ma almeno è un metodo veloce per fare un lookup anagrafico completo e sembra anche essere veloce (viene fuori anche il codice destinatario o la PEC che l’azienda ha memorizzato presso l’agenzia delle entrate, da quello che ho testato).

Ora non mi è chiaro perchè non possiamo avere questa funzionalità disponibile come webservice o almeno all’interno delle chiamate SDICOOP, però intanto volevo condividerlo.

1 Mi Piace

Grazie. Anche se temo che se ci mettiamo in tanti a interrogare questo servizio, finiranno per bloccarlo. Servirebbe qualcosa di ufficiale.

Però è banale realizzare uno scraper che interroga il servizio che descrivi su F&C e lo espone al tuo applicativo come API interna. Io l’ho realizzato e funziona.

Però per le cessioni di beni e servizi per corrispondenza (e-commerce) non è obbligatorio emettere la fattura, se non richiesta dal cliente.

Io sono riuscito a interfacciarmi in modo automatico tramite script ai servizi di verifica CF/P.IVA dell’Agenzia delle Entrate. Uno dei due metodi possibili è realizzare uno scraper che dialoga automaticamente con il portale F&C, come descritto da @bago. Anche volendo utilizzare i servizi interattivi indicati da @simevo, sono riuscito a risolvere il captcha in modo automatico e ritengo che questo non violi nessuna regola, se si utilizza il servizio solo per le proprie esigenze di fatturazione.

che tool usi per risolvere i captcha?