# Webservice TrasmissioneFatture

**URL:** <https://forum.italia.it/t/webservice-trasmissionefatture/3682>\
**Category:** Fatturazione Elettronica\
**Created:** [15 Giugno 2018, 10:48am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682 "2018-06-15T10:48:22Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Giulio](https://forum.italia.it/letter_avatar_proxy/v4/letter/g/45deac/32.png) [@Giulio](https://forum.italia.it/u/Giulio)\
**Post date:** [15 Giugno 2018, 10:48am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/1 "2018-06-15T10:48:22Z")

</div>

Un saluto a tutti.  
Dopo aver risolto la comunicazione con il web service sdi ricevi\_file (riusciamo ad inviare il file fattura e vediamo l’esito da Gestione Test Interoperabilità), abbiamo problemi a riceve le notifiche sul nostro web service TrasmissioneFatture.  
Vediamo le chiamate arrivare da 217.175.52.231 (IP Sogei) ma terminano con errore 500 sul nostro server.  
Da Gestione Test Interoperabilità nel dettaglio del messaggio vediamo l’errore

org.apache.axis2.AxisFault: HTTP ( 500 ) Internal Server Error address : [https://26.2.162.231:80](https://26.2.162.231:80)

che non è un nostro indirizzo e neanche un indirizzo Sogei, ma di DoD Network Information Center US.

Qualcuno sa come possiamo risolvere?  
L’assistenza per adesso non ha risposto

---

<div class="post-metadata">

**Author:** ![manuel](https://forum.italia.it/letter_avatar_proxy/v4/letter/m/67e7ee/32.png) [@manuel](https://forum.italia.it/u/manuel)\
**Post date:** [18 Giugno 2018, 9:08am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/2 "2018-06-18T09:08:19Z")

</div>

Ho lo stesso problema. Dall’assistenza mi hanno risposto questo:

“Gentile utente,.il problema risiede nel fatto che il vostro enpoint di test non richiede il certificato che consente una corretta trasmissione in SSL bilanciato…Infatti chiamando l’indirizzo, non viene richiesto alcun certificato…Un cordiale saluto…Segreteria Tecnica SdI.”

Ho generato il file P12 così:

openssl x509 -inform der -in C:\SDI\NSDOMINIOENDPOINT.COM.cer -out C:\SDI\NSDOMINIOENDPOINT.COM.pem

openssl pkcs12 -export -out C:\SDI\NSDOMINIOENDPOINT.pfx -inkey C:\SDI\NSDOMINIOENDPOINT.key -in C:\SDI\NSDOMINIOENDPOINT.pem -certfile C:\SDI\CAEntratetest.cer

dove NSDOMINIOENDPOINT.cer,CAEntratetest.cer sono i certificati ricevuti dall’agenzia delle entrate.  
mentre NSDOMINIOENDPOINT.key è la chiave originale utilizzata per la richiesta dei certificati.

Installato il certificato su IIS, collegato al dominio e impostato sulle impostazioni SSL “Require SSL” e “Require”. Ma non è cambiato niente.

---

<div class="post-metadata">

**Author:** ![Giulio](https://forum.italia.it/letter_avatar_proxy/v4/letter/g/45deac/32.png) [@Giulio](https://forum.italia.it/u/Giulio)\
**Post date:** [18 Giugno 2018, 9:19am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/3 "2018-06-18T09:19:34Z")

</div>

Grazie Manuel,  
dall’assistenza non abbiamo avuto questa risposta dettagliata.  
Anche noi abbiamo messo su IIS “require ssl” e “richiedi” su certificati client.

Chiamando il nostro web service da browser, non viene richiesto il certificato, direi che bisogna risolvere questo!

Rimaniamo in contatto qui se ci sono aggiornamenti

---

<div class="post-metadata">

**Author:** ![manuel](https://forum.italia.it/letter_avatar_proxy/v4/letter/m/67e7ee/32.png) [@manuel](https://forum.italia.it/u/manuel)\
**Post date:** [20 Giugno 2018, 9:48am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/4 "2018-06-20T09:48:48Z")

</div>

Sono riuscito a configurare IIS seguendo questa guida:  
[https://blog.jayway.com/2014/10/27/configure-iis-to-use-your-self-signed-certificates-with-your-application/](https://blog.jayway.com/2014/10/27/configure-iis-to-use-your-self-signed-certificates-with-your-application/)  
Adesso non mi da più l’errore:  
org.apache.axis2.AxisFault: HTTP ( 403 ) Forbidden address  
ma questo:  
Server was unable to process request. —\> Unable to connect to the remote server —\> A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 217.175.53.92:80

In pratica l’errore si presenta solo alla chiamata del ns ws RiceviFatture. Infatti dopo 3 tentativi di chiamata con l’errore, SDI richiama l’altro ws TrasmissioneFatture per notificare la mancata consegna. Quest’ultima chiamata non da nessun errore. Quindi penso che il problema della configurazione di IIS sia risolto visto che 1 dei 2 ws funziona correttamente.

---

<div class="post-metadata">

**Author:** ![Giulio](https://forum.italia.it/letter_avatar_proxy/v4/letter/g/45deac/32.png) [@Giulio](https://forum.italia.it/u/Giulio)\
**Post date:** [20 Giugno 2018, 12:23pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/5 "2018-06-20T12:23:11Z")

</div>

Grazie Manuel per aver condiviso la tua esperienza, sto seguendo la guida che hai indicato, avrei un paio di dubbi:

- hai usato One-To-One Mappings?
- quale certificato hai indicato nell’elenco degli utenti abilitati?
- quindi adesso se chiami da browser il tuo ws TrasmissioneFatture ti chiede il certificato giusto? (cosi faccio le prove per vedere se ho fatto giusto)

Grazie ancora

---

<div class="post-metadata">

**Author:** ![manuel](https://forum.italia.it/letter_avatar_proxy/v4/letter/m/67e7ee/32.png) [@manuel](https://forum.italia.it/u/manuel)\
**Post date:** [20 Giugno 2018, 1:20pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/6 "2018-06-20T13:20:40Z")

</div>

Ho abilitato ManyToOne, e adesso richiamando il ws mi chiede il certificato.

---

<div class="post-metadata">

**Author:** ![Giulio](https://forum.italia.it/letter_avatar_proxy/v4/letter/g/45deac/32.png) [@Giulio](https://forum.italia.it/u/Giulio)\
**Post date:** [21 Giugno 2018, 10:14am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/7 "2018-06-21T10:14:28Z")

</div>

Ciao Manuel,  
niente non mi funziona neanche con “many to one”.  
Ho messo queste impostazioni:  
 ![immagine](https://forum.italia.it/uploads/default/original/2X/6/659e767bac966dc23cf4c430f8794363057be9c5.png)  
e  
 ![immagine](https://forum.italia.it/uploads/default/original/2X/a/a0ee6c9d10bf9745dcd3d124e13ce591bda867a5.png)

installato i certificati:  
SistemaInterscambioFatturaPATest.cer  
CAEntratetest.cer

negli store: computer e utente locale (administrator)  
ma chiamando il mio ws ottengo sempre 403 e nessuna richiesta di certificato.  
Puoi verificare le tue impostazioni  
Grazie

---

<div class="post-metadata">

**Author:** ![amasini](https://forum.italia.it/user_avatar/forum.italia.it/amasini/32/2280_2.png) [@amasini](https://forum.italia.it/u/amasini)\
**Post date:** [22 Giugno 2018, 5:45am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/8 "2018-06-22T05:45:13Z")

</div>

Salve Giulio,  
Anche noi riscontrammo lo stesso errore; se non ricordo male il problema dipendeva dal fatto che alcune notifiche SdI sono in formato MTOM;  
Assicurati che il SoapServer che elabora i messaggi supporti MTOM;  
Se vedi i flussi arrivare dall’IP SOGEI, probabilmente sei in grado di analizzare i dati di flusso e vedere dove intervenire per modificare il SoapServer.

---

<div class="post-metadata">

**Author:** ![Giulio](https://forum.italia.it/letter_avatar_proxy/v4/letter/g/45deac/32.png) [@Giulio](https://forum.italia.it/u/Giulio)\
**Post date:** [22 Giugno 2018, 10:52am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/9 "2018-06-22T10:52:15Z")

</div>

Buongiorno Antonello,  
si vedo le chiamate da ip sogei, ho provato a verificare con wireshark ma non ci capisco molto, come posso vedere se sono a posto con MTOM?  
In ogni caso credo di avere qualche problema ancora a monte, se chiamo il mio web service da browser non mi chiede il certificato, cosa che dovrebbe fare.  
Tu hai risolto su IIS o altro web server?

---

<div class="post-metadata">

**Author:** ![antonio\_pellegrino](https://forum.italia.it/letter_avatar_proxy/v4/letter/a/cab0a1/32.png) [@antonio\_pellegrino](https://forum.italia.it/u/antonio_pellegrino)\
**Post date:** [23 Giugno 2018, 4:26pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/10 "2018-06-23T16:26:11Z")

</div>

Ciao Antonello sono Antonio Pellegrino sto provando ad impostare i certificati per una richiesta SOAP con PHP ma risponde sempre con errore 403. ti potrei contattare per avere dei chiarimenti?  
Grazie

---

<div class="post-metadata">

**Author:** ![daniele\_m](https://forum.italia.it/user_avatar/forum.italia.it/daniele_m/32/1908_2.png) [@daniele\_m](https://forum.italia.it/u/daniele_m)\
**Post date:** [25 Giugno 2018, 4:50pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/11 "2018-06-25T16:50:16Z")

</div>

Pure a noi tramite browser risulta sempre Error 403: AuthenticationFailed quando ci colleghiamo a [https://testservizi.fatturapa.it/ricevi\_file?wsdl](https://testservizi.fatturapa.it/ricevi_file?wsdl) mentre mostra “Webserver is running” quando apriamo la pagina [https://testservizi.fatturapa.it/](https://testservizi.fatturapa.it/)

Leggendo i commenti precedenti abbiamo segnalato la cosa al numero verde ma da mercoledì non abbiamo avuto alcuna notizia.  
I vari operatori che abbiamo trovato si sono limitati a prendere nota di quello che dicevamo e ad aprire un ticket.

non capisco se i certificati sono installati male, errati o se è un problema di autenticazione da parte di sogei.

---

<div class="post-metadata">

**Author:** ![rcamanzi](https://forum.italia.it/letter_avatar_proxy/v4/letter/r/ba9def/32.png) [@rcamanzi](https://forum.italia.it/u/rcamanzi)\
**Post date:** [25 Giugno 2018, 10:11pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/12 "2018-06-25T22:11:13Z")

</div>

Ciao a tutti,  
confermo in pieno l’analoga situazione di Daniele. Noi lavoriamo in ambiente Java.  
Errore 403, anche con il browser; ticket senza risposta dopo 4 giorni. Ovviamente il dubbio su una configurazione non corretta da parte nostra rimane, ma se in tanti abbiamo lo stesso problema …  
Un saluto  
Riccardo

---

<div class="post-metadata">

**Author:** ![Giulio](https://forum.italia.it/letter_avatar_proxy/v4/letter/g/45deac/32.png) [@Giulio](https://forum.italia.it/u/Giulio)\
**Post date:** [26 Giugno 2018, 8:53am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/13 "2018-06-26T08:53:46Z")

</div>

Ciao Daniele e Riccardo,  
come altri ero anche io nella vostra situazione, se da browser non riuscite ad accedere, riprovare con l’assistenza è un problema dal loro lato devono in qualche modo abilitarvi.

Al momento, riesco ad inviare i file al ws ricevi\_file sono bloccato sulla ricezione delle notifiche, sempre per problemi di certificato ma qui l’assistenza può fare poco

---

<div class="post-metadata">

**Author:** ![web\_p\_service\_it](https://forum.italia.it/letter_avatar_proxy/v4/letter/w/54ee81/32.png) [@web\_p\_service\_it](https://forum.italia.it/u/web_p_service_it)\
**Post date:** [3 Luglio 2018, 9:27am UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/14 "2018-07-03T09:27:58Z")

</div>

Ciao Giulio,

visto che hai risolto puoi dare un’occhiata alla mia procedura?

da browser ottengo il messaggio: Hello! This is an Axis2 Web Service!  
da codice: Impossibile stabilire un canale sicuro per SSL/TLS con l’autorità ‘testservizi.fatturapa.it’.

```
private void button4_Click(object sender, EventArgs e)
    {
        FatturaPA_SdIRiceviFile.SdIRiceviFileClient srv = new FatturaPA_SdIRiceviFile.SdIRiceviFileClient();
        FatturaPA_SdIRiceviFile.RiceviFileRequest srvReq = new FatturaPA_SdIRiceviFile.RiceviFileRequest();
        FatturaPA_SdIRiceviFile.RiceviFileResponse srvResp = new FatturaPA_SdIRiceviFile.RiceviFileResponse();

    var binding = CreateMultiFactorAuthenticationBinding();

    ServicePointManager.ServerCertificateValidationCallback = ValidationCallBack;

    var certificate = new X509Certificate2("C:\\Users\\fabio\\Desktop\\client_SDI-[PIVA].pfx");
    var address = new EndpointAddress(new Uri("https://testservizi.fatturapa.it/ricevi_file")); 

    var factory = new ChannelFactory<FatturaPA_SdIRiceviFile.SdIRiceviFileChannel>(binding, address);
    factory.Credentials.ClientCertificate.Certificate = certificate;
    factory.Endpoint.Contract.ProtectionLevel = ProtectionLevel.Sign;
    factory.Credentials.ServiceCertificate.DefaultCertificate = new X509Certificate2("C:\\Users\\fabio\\Desktop\\testservizi.fatturapa.it.cer");
    factory.Credentials.ServiceCertificate.SslCertificateAuthentication = new X509ServiceCertificateAuthentication
    {
        CertificateValidationMode = X509CertificateValidationMode.None,
        RevocationMode = X509RevocationMode.NoCheck
    };

    var channel = factory.CreateChannel();
    try
    {
        srvReq.fileSdIAccoglienza = new FatturaPA_SdIRiceviFile.fileSdIBase_Type();

        byte[] f = System.IO.File.ReadAllBytes("C:\\Users\\fabio\\Desktop\\IT[piva]_00895.zip");
        byte[] x = Convert.FromBase64String(Convert.ToBase64String(f, 0, f.Length));
        srvReq.fileSdIAccoglienza.File = x;
        srvReq.fileSdIAccoglienza.NomeFile = "IT[piva]_00895.zip";

        srvResp = channel.RiceviFile(srvReq);
    }
    catch (Exception exc)
    {
        Console.WriteLine(exc.ToString());
    }

    Console.ReadLine();
}

public static System.ServiceModel.Channels.Binding CreateMultiFactorAuthenticationBinding()
{
    System.ServiceModel.Channels.AsymmetricSecurityBindingElement asbe = new AsymmetricSecurityBindingElement();

    asbe.MessageSecurityVersion = MessageSecurityVersion.WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10;
    asbe.InitiatorTokenParameters = new X509SecurityTokenParameters();
    asbe.RecipientTokenParameters = new X509SecurityTokenParameters();
    asbe.ProtectTokens = true;
    asbe.MessageProtectionOrder = MessageProtectionOrder.SignBeforeEncrypt;

    asbe.SecurityHeaderLayout = SecurityHeaderLayout.Strict;
    asbe.EnableUnsecuredResponse = true;
    asbe.IncludeTimestamp = false;
    asbe.SetKeyDerivation(false);
    asbe.DefaultAlgorithmSuite = SecurityAlgorithmSuite.Basic128Rsa15;

    CustomBinding myBinding = new CustomBinding();
    myBinding.Elements.Add(asbe);
    myBinding.Elements.Add(new TextMessageEncodingBindingElement(MessageVersion.Soap12, Encoding.UTF8));

    HttpsTransportBindingElement httpsBindingElement = new HttpsTransportBindingElement();
    httpsBindingElement.RequireClientCertificate = true;
    myBinding.Elements.Add(httpsBindingElement);
    

    return myBinding;
}

```

dove sta l’errore?

Grazie.  
Fabio.

---

<div class="post-metadata">

**Author:** ![Giulio](https://forum.italia.it/letter_avatar_proxy/v4/letter/g/45deac/32.png) [@Giulio](https://forum.italia.it/u/Giulio)\
**Post date:** [9 Luglio 2018, 12:26pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/15 "2018-07-09T12:26:07Z")

</div>

Ciao Fabio,  
scusa per il ritardo, ero fuori ufficio la settimana scorsa.  
Sei riuscito a risolvere? il codice mi sembra ok a parte che mandi un file .zip  
a me funziona solo se mando un file firmato .xml.p7m

---

<div class="post-metadata">

**Author:** ![web\_p\_service\_it](https://forum.italia.it/letter_avatar_proxy/v4/letter/w/54ee81/32.png) [@web\_p\_service\_it](https://forum.italia.it/u/web_p_service_it)\
**Post date:** [9 Luglio 2018, 8:35pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/16 "2018-07-09T20:35:33Z")

</div>

Ciao Giulio,

il problema dell’autenticazione credo di averlo superato, adesso all’invio del file  
il server mi risponde con questo errore (SOGEI sostiene che si tratta di un problema lato client e di non potermi aiutare):

```
500 Internal Server Error

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <soapenv:Fault xmlns:axis2ns1="http://schemas.xmlsoap.org/soap/envelope/">
         <faultcode>axis2ns1:Server</faultcode>
         <faultstring>Internal Error</faultstring>
         <detail/>
      </soapenv:Fault>
   </soapenv:Body>
</soapenv:Envelope>

per quanto riguarda il tipo di file sono ammessi sia p7m che zip, infatti anche cambiando file non cambia l'errore.
```

---

<div class="post-metadata">

**Author:** ![Domenico\_Neri](https://forum.italia.it/user_avatar/forum.italia.it/domenico_neri/32/3509_2.png) [@Domenico\_Neri](https://forum.italia.it/u/Domenico_Neri)\
**Post date:** [17 Luglio 2018, 12:59pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/17 "2018-07-17T12:59:15Z")

</div>

Ciao Fabio,

ma il file pfx che richiami nel tuo codice, come l’hai ottenuto?

Grazie, Domenico.

---

<div class="post-metadata">

**Author:** ![web\_p\_service\_it](https://forum.italia.it/letter_avatar_proxy/v4/letter/w/54ee81/32.png) [@web\_p\_service\_it](https://forum.italia.it/u/web_p_service_it)\
**Post date:** [17 Luglio 2018, 3:17pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/18 "2018-07-17T15:17:22Z")

</div>

Ciao,

1. converto il certificato client ricevuto in .pem  
openssl x509 -inform der -in client\_SDI-[piva].cer -out client\_SDI-[piva].pem

2. converto il certificato di test esposto dal server in .pem  
openssl x509 -inform der -in testservizi.fatturapa.it.cer -out testservizi.fatturapa.it.pem

3. unisco quest’ultimo ai certificadi di CA  
copy /b caentrate.der+CAEntratetest.cer+testservizi.fatturapa.it.pem morecert.pem

4. creo il pfx unendo certificato client + morecert.pem + la chiave privata inviata a sogei per la creazione del certificato client  
openssl pkcs12 -export -out client\_SDI-[piva].pfx -inkey clientfatturapa.key -in client\_SDI-[piva].pem -certfile morecert.pem

Fabio.

---

<div class="post-metadata">

**Author:** ![Domenico\_Neri](https://forum.italia.it/user_avatar/forum.italia.it/domenico_neri/32/3509_2.png) [@Domenico\_Neri](https://forum.italia.it/u/Domenico_Neri)\
**Post date:** [17 Luglio 2018, 5:17pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/19 "2018-07-17T17:17:06Z")

</div>

Grazie Fabio, ma io sono bloccato ancora alla chiamata al servizio RiceviFile. In questo caso, quale certificato devo usare?

---

<div class="post-metadata">

**Author:** ![web\_p\_service\_it](https://forum.italia.it/letter_avatar_proxy/v4/letter/w/54ee81/32.png) [@web\_p\_service\_it](https://forum.italia.it/u/web_p_service_it)\
**Post date:** [17 Luglio 2018, 8:10pm UTC](https://forum.italia.it/t/webservice-trasmissionefatture/3682/20 "2018-07-17T20:10:23Z")

</div>

un paio di post fa (più sopra) trovi la procedura che uso io scritta in c#,  
puoi vedere come uso i certificati (ma la comunicazione con sogei ancora non mi funziona)

[Pagina seguente](https://forum.italia.it/t/webservice-trasmissionefatture/3682.md?page=2)
