API di invio documenti emessi (fatture, note di credito)
Descrizione del flusso di funzionamento del ciclo attivo
- L’operatore economico crea in formato XML le fatture dal proprio gestionale e le invia tramite web service all’hub di fatturazione WT. Il servizio restituisce un identificativo di elaborazione.
- L’hub di fatturazione WT effettua un primo controllo formale sul file. Il controllo è solo di tipo tecnico e non entra in merito della correttezza fiscale e normativa.
- L’hub WT appone la firma digitale in modo automatizzato e procede quindi all’invio allo SDI.
- Lo SDI effettua i propri controlli ed invia quindi la fattura al destinatario a mezzo PEC o tramite codice destinatario.
- SDI restituisce all’hub di fatturazione WT l’esito (n.b.: per B2B non è prevista la facoltà di accettazione/rifiuto che è solo per i documenti emessi nei confronti delle pubbliche amministrazioni)
- L’hub di fatturazione WT manda automaticamente le fatture in conservazione digitale a norma
Questa sezione descrive il funzionamento tecnico delle chiamate ai webservices dell’hub di fatturazione WT. I webservice sono di tipo SOAP. I file allegati alle chiamate sono nel formato “MTOM attachment”. Negli esempi viene riportato il codice XML delle chiamate, tuttavia si consiglia di utilizzare le librerie Soap disponibili in quasi tutti i linguaggi, ad esempio:
.NET (C#, VB.NET, etc) https://msdn.microsoft.com/it-it/library/bb628649.aspx
PHP http://php.net/manual/fr/book.soap.php
Servizio per file XML singolo (ciclo attivo)
Questo WS permette di inviare una singola fattura emessa all’hub di fatturazione.
Il nome del file deve rispettare la nomenclatura prevista dalle specifiche. Esempio: IT033474789_12345.xml
Endpoint WS: [base url]/webservices/ SingleFileUpload.svc
WSDL: [base url]/webservices/ SingleFileUpload.svc?wsdl
Metodo: UploadFile
Elenco dei parametri
Username |
Username del’azienda per l’autenticazione | |
Password |
Password dell’azienda per l’autenticazione | |
fileName |
Il nome del file rispettando la nomenclatura prevista dal formato FatturaPA | |
fileContent |
||
azione
|
Può assumere i seguenti valori: FirmaInvia InviaP7M InviaP7M indica che i file sono già firmati, ed in questo caso sono inviati senza apporre alcuna firma. Nel caso di invio di file già firmato devono essere valorizzati a priopri i dati del trasmittente e del terzo soggetto intermediario, in quanto non è possibile l’inserimento automatico di questi dati da parte dell’hub. |
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tem="http://tempuri.org/"> <soap:Header/> <soap:Body> <tem:UploadFile> <tem:username>aa</tem:username> <tem:password>aa</tem:password> <tem:fileName>IT00906801006_1.xml</tem:fileName> <tem:fileContent>cid:1286067555652</tem:fileContent> <tem:azione>FirmaInvia</tem:azione> </tem:UploadFile> </soap:Body> </soap:Envelope>
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing"> <s:Header> <a:Action s:mustUnderstand="1">http://tempuri.org/ISingleFileUpload/UploadFileResponse</a:Action> <ActivityId CorrelationId="db4243ad-7122-48d6-9a21-d13f957dc899" xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics">00000000-0000-0000-0000000000000000</ActivityId> </s:Header> <s:Body> <UploadFileResponse xmlns="http://tempuri.org/"> <UploadFileResult xmlns:b="http://schemas.datacontract.org/2004/07/WT.FEHub.Business.Models" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <b:JobID>1176</b:JobID> <b:Message i:nil="true"/> <b:Success>true</b:Success> </UploadFileResult> </UploadFileResponse> </s:Body> </s:Envelope>
Parametri risposta
Success: True: richiesta eseguita con successo / False: Richiesta fallita
JobID: Il codice identificativo assegnato al processo di elaborazione. E’ utile salvarlo per riferimenti futuri