Società Consortile di Informatica
delle Camere di Commercio Italiane per azioni
Manuale Utente
TebeniService 5.0.0
Versione doc:
Descr. modifiche:
Motivazioni :
05.00.00
Data Versione: 03/03/15
Aggiunto parametro per gestione multilingua delle visualizzazioni
TebeniService
Indice generale
1.Introduzione al documento........................................................................................................ 3
1.1 Scopo e campo di applicazione del documento.....................................................................3
1.2 Riferimenti............................................................................................................................. 3
1.3 Termini e definizioni............................................................................................................... 3
2 TebeniService – servizio di validazione...................................................................................4
2.1 Descrizione servizio............................................................................................................... 4
2.2 Modalità invocazione............................................................................................................. 4
2.2.1 Parametri......................................................................................................................... 4
3 TebeniService – servizio di visualizzazione in HTML..............................................................7
3.1 Descrizione servizio............................................................................................................... 7
3.2 Modalità invocazione............................................................................................................. 7
3.2.1 Parametri......................................................................................................................... 7
4 TebeniService – servizio di visualizzazione in PDF.................................................................8
4.1 Descrizione servizio............................................................................................................... 8
4.2 Modalità invocazione............................................................................................................. 8
4.2.1 Parametri......................................................................................................................... 8
Appendice 1: tabella errori e warning..........................................................................................9
Errori:............................................................................................................................................ 9
Warning:....................................................................................................................................... 9
Appendice 2: teberesponse.xsd..................................................................................................11
Appendice 3: esempi di invocazione dei servizi........................................................................14
Pagina 2 di 14
TebeniService
1. Introduzione al documento
1.1 Scopo e campo di applicazione del documento
Il documento ha l'obiettivo di descrivere il servizio TebeniService relativo ai bilanci XBRL
comprensivi di nota integrativa rilasciato per le software house e la relativa modalità di invocazione.
1.2 Riferimenti
[1]
http://tebeni.infocamere.it/
1.3 Termini e definizioni
In questa sezione si riportano termini e definizioni particolari e specifici del documento.
Termine Descrizione
XBRL
eXtensible Business Reporting Language
Pagina 3 di 14
TebeniService
2 TebeniService – servizio di validazione
2.1 Descrizione servizio
TebeniService provvede alla validazione di un'istanza xbrl restituendo un file di risposta (in formato
html o xml) con l'esito della validazione.
La validazione è fatta nel rispetto delle regole previste dalla tassonomia e dal Registro Imprese.
L'esito complessivo della validazione (returnCode) può essere:
•
OK – xbrl accettato
•
KO – xbrl respinto
•
NA – servizio non disponibile
Le possibili cause d'errore (error - bloccanti ai fini dell'esito complessivo) e le eventuali
segnalazioni (warning – non bloccanti ai fini dell'esito complessivo) sono presenti in Appendice 1
2.2 Modalità invocazione
Il servizio è richiamabile con un'invocazione http – method POST all'url sottostante con un enctype
di tipo multipart/form-data:
•
http://tebeni.infocamere.it/teniWeb/TebeServiceValidateRequest
L'invocazione con method GET non è supportata.
2.2.1 Parametri
•
•
•
•
•
serviceRequired – specifica il servizio da invocare e per il servizio di validazione va
impostato a 'validate'
xbrlInstanceCompletePath – il file XBRL da validare
teberesponse – specifica il formato della risposta 'xml' o 'html'
showWarnings – se viene valorizzato a 'true' verranno ritornati oltre agli errori anche i
warning mentre se non viene valorizzato o viene valorizzato a 'false' verranno restituiti
solamente gli errori (vedi Appendice 1)
token – parametro per l'autenticazione al servizio
2.2.1.1 Autenticazione: token
In prima battuta si tratta di una stringa di test (TebeniService_d6452f0e)
Successivamente verrà concordato con ogni cliente un token dedicato.
2.2.1.2 Formato risposta: teberesponse.xsd
La risposta del servizio è conforme allo schema riportato in Appendice 2.
Esempio di risposta con esito positivo:
<?xml version="1.0" encoding="UTF-8"?>
<tebeResponse
xmlns="http://tebe.infocamere.it/2009/teberesponse"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tebe.infocamere.it/2009/teberesponse
http://tebeni.intra.infocamere.it/client_TEBEplus/teberesponse.xsd">
<richiesta>
<xbrlInstanceName>instance.xbrl</xbrlInstanceName>
<serviceRequired>validate</serviceRequired>
Pagina 4 di 14
TebeniService
<serviceDetails>base</serviceDetails>
</richiesta>
<esito>
<returnCode>OK</returnCode>
<returnMessage>L'istanza è valida secondo il profilo richiesto</returnMessage>
<msec>4396</msec>
</esito>
<xbrlData>
<xbrlCodFisc>012345678901</xbrlCodFisc>
<xbrlDenom>PROVA SPA</xbrlDenom>
</xbrlData>
</tebeResponse>
Esempio di risposta con esito positivo e segnalazioni:
<?xml version="1.0" encoding="UTF-8"?>
<tebeResponse
xmlns="http://tebe.infocamere.it/2009/teberesponse"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tebe.infocamere.it/2009/teberesponse
http://tebeni.intra.infocamere.it/client_TEBEplus/teberesponse.xsd">
<richiesta>
<xbrlInstanceName>instance.xbrl</xbrlInstanceName>
<serviceRequired>validate</serviceRequired>
<serviceDetails>base</serviceDetails>
</richiesta>
<esito>
<returnCode>OK</returnCode>
<returnMessage>L'istanza è valida secondo il profilo richiesto</returnMessage>
<msec>5361</msec>
</esito>
<details>
<warnings>
<warning>
<code>WK</code>
<description>Squadratura relativa alle voci Totale crediti, Crediti esigibili oltre,
Crediti esigibili entro.</description>
</warning>
<warning>
<code>WS</code>
<description>Squadratura relativa alle voci Totale debiti, Debiti esigibili oltre,
Debiti esigibili entro.</description>
</warning>
</warnings>
</details>
<xbrlData>
<xbrlCodFisc>012345678901</xbrlCodFisc>
<xbrlDenom>PROVA SPA</xbrlDenom>
</xbrlData>
</tebeResponse>
Esempio di risposta con esito negativo:
<?xml version="1.0" encoding="UTF-8"?>
<tebeResponse
xmlns="http://tebe.infocamere.it/2009/teberesponse"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tebe.infocamere.it/2009/teberesponse
http://tebeni.intra.infocamere.it/client_TEBEplus/teberesponse.xsd">
<richiesta>
<xbrlInstanceName>instance.xbrl</xbrlInstanceName>
<serviceRequired>validate</serviceRequired>
<serviceDetails>base</serviceDetails>
</richiesta>
<esito>
<returnCode>KO</returnCode>
<returnMessage>L'istanza NON è valida secondo il profilo richiesto</returnMessage>
<msec>3980</msec>
</esito>
<details>
<errors>
<error>
<code>XV</code>
<description>Errore in fase di validazione dell'istanza rispetto alla tassonomia di
riferimento</description>
<elements>
<element>There has been a schema validation error in "mem:" on line number 91,
Pagina 5 di 14
TebeniService
column number 105. Error message: cvc-datatype-valid.1.2.1: 'aaa' is not a
valid value for 'decimal'.</element>
<element>There has been a schema validation error in "mem:" on line number 91,
column number 105. Error message: cvc-complex-type.2.2: Element
'itcc-ci:TotaleRimanenze' must have no element [children], and the value
must be valid.</element>
</elements>
</error>
</errors>
</details>
</tebeResponse>
Pagina 6 di 14
TebeniService
3 TebeniService – servizio di visualizzazione in HTML
3.1 Descrizione servizio
TebeniService provvede alla trasformazione in formato HTML di un bilancio XBRL in modo da
renderlo facilmente consultabile ad un utente.
3.2 Modalità invocazione
Il servizio è richiamabile con un'invocazione http – method POST all'url sottostante con un enctype
di tipo multipart/form-data:
•
http://tebenitra.infocamere.it/teniWeb/TebeServiceTransformRequest
L'invocazione con method GET non è supportata.
3.2.1 Parametri
•
•
•
•
•
serviceRequired – specifica il servizio da invocare e per il servizio di visualizzazione va
impostata a 'view'
xbrlInstanceCompletePath – il file XBRL da validare
outputTF – specifica il formato della trasformazione e per ottenere il bilancio trasformato in
HTML va impostato a 'html'
tfLanguage – specifica la lingua in cui visualizzare il bilancio XBRL. Di default è 'it'
(italiano) ma può essere valorizzato con 'en' (inglese), 'fr' (francese) e 'de' (tedesco).
token – parametro per l'autenticazione al servizio
3.2.1.1 Autenticazione: token
In prima battuta si tratta di una stringa di test (TebeniService_d6452f0e)
Successivamente verrà concordato con ogni cliente un token dedicato.
3.2.1.2 Formato risposta
L'output del servizio è direttamente il file trasformato in HTML oppure, nel caso si sia verificato un
errore, un file HTML dato dalla trasformazione del teberesponse.xml con un foglio di stile.
Pagina 7 di 14
TebeniService
4 TebeniService – servizio di visualizzazione in PDF
4.1 Descrizione servizio
TebeniService provvede alla trasformazione in formato PDF di un bilancio XBRL in modo da
renderlo facilmente consultabile ad un utente.
4.2 Modalità invocazione
Il servizio è richiamabile con un'invocazione http – method POST all'url sottostante con un enctype
di tipo multipart/form-data:
•
http://tebenitra.infocamere.it/teniWeb/TebeServiceTransformRequest
L'invocazione con method GET non è supportata.
4.2.1 Parametri
•
•
•
•
•
serviceRequired – specifica il servizio da invocare e per il servizio di visualizzazione va
impostata a 'view'
xbrlInstanceCompletePath – il file XBRL da validare
outputTF – specifica il formato della trasformazione e per ottenere il bilancio trasformato in
PDF va impostato a 'pdf'
tfLanguage – specifica la lingua in cui visualizzare il bilancio XBRL. Di default è 'it'
(italiano) ma può essere valorizzato con 'en' (inglese), 'fr' (francese) e 'de' (tedesco).
token – parametro per l'autenticazione al servizio
4.2.1.1 Autenticazione: token
In prima battuta si tratta di una stringa di test (TebeniService_d6452f0e)
Successivamente verrà concordato con ogni cliente un token dedicato.
4.2.1.2 Formato risposta
L'output del servizio è direttamente il file trasformato in PDF oppure, nel caso si sia verificato un
errore, un file HTML dato dalla trasformazione del teberesponse.xml con un foglio di stile.
Pagina 8 di 14
TebeniService
Appendice 1: tabella errori e warning
Errori:
Codice
Controllo
Descrizione
XX
Errore nell'estrazione del file firmato
X0
Il file non è un XBRL oppure è mal firmato
XU
L'istanza o l'html escaped in essa contenuto non sono ben formati (well formed)
X1
L'istanza non è conforme alla tassonomia ufficiale 2014-11-17, la tassonomia <tassonomia_file_xbrl>
referenziata è in vigore solo per depositi di bilancio con data del verbale di approvazione inferiore al 3
marzo 2015
XV
Errore in fase di validazione dell'istanza rispetto alla tassonomia di riferimento
X3
Impossibile identificare il Codice Fiscale (<DatiAnagraficiCodiceFiscale>)
XF
Il Codice Fiscale dichiarato nell'istanza non ha superato il controllo formale
X6
Non è presente alcun campo di tipo numerico per l'annualità di esercizio più recente
X7
Non esiste almeno un campo numerico con valore diverso da zero per l'annualità di esercizio più
recente
X8
L'Utile (perdita) Residua del Patrimonio Netto non coincide con l'Utile (perdita) dell'esercizio del
Conto Economico per l'annualità di esercizio più recente
X9
Il Totale Attivo dello Stato Patrimoniale non coincide con il Totale Passivo dello Stato Patrimoniale
per l'annualità di esercizio più recente, oppure sono entrambi assenti
Warning:
Codice
Controllo
Descrizione
W1
Uno o più dei tag: <ValoreProduzioneRicaviVenditePrestazioni>, <TotaleValoreProduzione>,
<UtilePerditaEsercizio> non sono stati valorizzati per l'annualità di esercizio più recente
WA
I tag <context> dichiarati nell'istanza non consentono di identificare correttamente 1 (o 2) annualità
WC
Errore di validazione nei calcoli
WD
Assenza del tag relativo alla Denominazione (<DatiAnagraficiDenominazione>) per l'annualità di
esercizio più recente
WX
Non è presente l'annualità precedente
WT
Istanza conforme a precedenti versioni della tassonomia
WJ
Possibile incompletezza relativa alle voci Totale crediti, Crediti esigibili oltre, Crediti esigibili entro
WK
La somma Crediti esigibili oltre e Crediti esigibili entro non coincide con il TotaleCrediti
WW
Possibile incompletezza relativa alle voci Totale debiti, Debiti esigibili oltre, Debiti esigibili entro
WS
La somma Debiti esigibili oltre e Debiti esigibili entro non coincide con il Totale Debiti
WY
Possibile incompletezza relativa al Patrimonio Terzi
WZ
La differenza tra data di inizio e fine esercizio è superiore a 14 mesi
Pagina 9 di 14
TebeniService
Codice
Controllo
Descrizione
WN
Anomalie riscontrate nei contesti
WI
L’istanza non contiene nessun valore nella nota integrativa
Pagina 10 di 14
TebeniService
Appendice 2: teberesponse.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://tebe.infocamere.it/2009/teberesponse"
xmlns="http://tebe.infocamere.it/2009/teberesponse"
version="20141218-A" elementFormDefault="qualified">
<xs:element name="tebeResponse">
<xs:complexType>
<xs:sequence>
<xs:element
<xs:element
<xs:element
<xs:element
<xs:element
<xs:element
<xs:element
<xs:element
<xs:element
</xs:sequence>
</xs:complexType>
</xs:element>
ref="richiesta" minOccurs="0" />
ref="esito" />
ref="invioXBRL" minOccurs="0" />
ref="details" minOccurs="0" />
ref="outputTF" minOccurs="0" />
ref="xbrlData" minOccurs="0" />
ref="xbrlSchema" minOccurs="0" />
ref="xbrlContent" minOccurs="0"/>
ref="outputContent" minOccurs="0"/>
<xs:element name="richiesta">
<xs:complexType>
<xs:sequence>
<xs:element
<xs:element
<xs:element
<xs:element
</xs:sequence>
</xs:complexType>
</xs:element>
ref="xbrlInstanceName" minOccurs="0" />
ref="serviceRequired" minOccurs="0" />
ref="serviceDetails" minOccurs="0" />
ref="requestedContent" minOccurs="0" />
<xs:element
<xs:element
<xs:element
<xs:element
name="xbrlInstanceName" type="xs:string" />
name="serviceRequired" type="xs:string" />
name="serviceDetails" type="xs:string" />
name="requestedContent" type="xs:string" />
<xs:element name="esito">
<xs:complexType>
<xs:sequence>
<xs:element
<xs:element
<xs:element
<xs:element
</xs:sequence>
</xs:complexType>
</xs:element>
ref="returnCode" />
ref="returnMessage" />
ref="msec" minOccurs="0" />
ref="teniVersion" />
<xs:element name="returnCode">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="OK" />
<xs:enumeration value="KO" />
<xs:enumeration value="NA" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="returnMessage" type="xs:string" />
<xs:element name="msec">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="0" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="teniVersion" type="xs:string" />
<xs:element name="invioXBRL">
Pagina 11 di 14
TebeniService
<xs:complexType>
<xs:sequence>
<xs:element name="ixReturnCode" type="xs:string" />
<xs:element name="ixReturnMessage" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="details">
<xs:complexType>
<xs:sequence>
<xs:element ref="warnings" minOccurs="0" maxOccurs="1" />
<xs:element ref="errors" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="warnings">
<xs:complexType>
<xs:sequence>
<xs:element ref="warning" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="errors">
<xs:complexType>
<xs:sequence>
<xs:element ref="error" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="error">
<xs:complexType>
<xs:sequence>
<xs:element
<xs:element
<xs:element
<xs:element
</xs:sequence>
</xs:complexType>
</xs:element>
ref="code" />
ref="description" />
ref="elements" minOccurs="0" />
ref="hints" minOccurs="0" />
<xs:element name="warning">
<xs:complexType>
<xs:sequence>
<xs:element
<xs:element
<xs:element
<xs:element
</xs:sequence>
</xs:complexType>
</xs:element>
ref="code" />
ref="description" />
ref="elements" minOccurs="0" />
ref="hints" minOccurs="0" />
<xs:element name="code" type="xs:string" />
<xs:element name="description" type="xs:string" />
<xs:element name="elements">
<xs:complexType>
<xs:sequence>
<xs:element ref="element" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="element" type="xs:string" />
<xs:element name="hints">
<xs:complexType>
<xs:sequence>
<xs:element ref="hint" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="hint" type="xs:string" />
Pagina 12 di 14
TebeniService
<xs:element name="outputTF">
<xs:complexType>
<xs:sequence>
<xs:element ref="completePath" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="completePath" type="xs:string" />
<xs:element name="xbrlData">
<xs:complexType>
<xs:sequence>
<xs:element ref="xbrlCodFisc" minOccurs="0" />
<xs:element ref="xbrlDenom" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="xbrlCodFisc" type="xs:string" />
<xs:element name="xbrlDenom" type="xs:string" />
<xs:element name="xbrlSchema" type="xs:string" />
<xs:element name="xbrlContent">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NI"
<xs:enumeration value="PC"
<xs:enumeration value="BI"
<xs:enumeration value="NA"
</xs:restriction>
</xs:simpleType>
</xs:element>
/>
/>
/>
/>
<xs:element name="outputContent">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NI"
<xs:enumeration value="PC"
<xs:enumeration value="BI"
<xs:enumeration value="NA"
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:schema>
/>
/>
/>
/>
Pagina 13 di 14
TebeniService
Appendice 3: esempi di invocazione dei servizi
Servizio di visualizzazione:
<html>
<head>
<title>Form</title>
</head>
<body>
<form name="tebe" action="http://tebeni.infocamere.it/teniWeb/TebeServiceTransformRequest"
method="post" enctype="multipart/form-data">
Servizio (serviceRequired): <input name="serviceRequired" type="text" value="view" /><br />
File xbrl (xbrlInstanceCompletePath): <input name="xbrlInstanceCompletePath" type="file" /><br />
Formato trasformazione [html/pdf] (outputTF): <input name="outputTF" type="text" value="html" /><br
/>
Token (token): <input name="token" type="text" value="TebeniService_d6452f0e" size="30" /><br />
<input type="submit" value="Invia" />
</form>
</body>
</html>
Servizio di validazione:
<html>
<head>
<title>Form</title>
</head>
<body>
<form name="tebe" action="http://tebeni.infocamere.it/teniWeb/TebeServiceValidateRequest"
method="post" enctype="multipart/form-data">
Servizio (serviceRequired): <input name="serviceRequired" type="text" value="validate" /><br />
File xbrl (xbrlInstanceCompletePath): <input name="xbrlInstanceCompletePath" type="file" /><br />
Visualizza warning [true/false] (showWarnings): <input name="showWarnings" type="text" value="true"
/><br />
Token (token): <input name="token" type="text" value="TebeniService_d6452f0e" size="30" /><br />
<input type="submit" value="Invia" />
</form>
</body>
</html>
Pagina 14 di 14
Scarica

pdf - Recapiti Team Ufficio