730 precompilato + di uno snippet

marino51

Utente Attivo
28 Feb 2013
2.682
135
63
Lombardia
it's so simple,
crei due files nella dir CF, che abbiano per nome i codici (prendi come esempio un codice fiscale già presente)
inserisci ciascun codice nel corpo di ciascun file, SENZA l'invio a fondo riga
esegui 2_FattureGeneraOpenSSL.sh (ricorda la conversione base64)
apri ciscun file risultante e copia/incolla inserisci i due dati in credenziali e non li tocchi più perché sono sempre validi (per quel proprietario)
 
  • Like
Reactions: LinuxOhYeah

LinuxOhYeah

Utente Attivo
26 Nov 2016
188
7
18
it's so simple
Ovviamente le cose più semplici sono le cose che non mi entravano in testa... che vergogna :( sarà anche perchè tra i 3.4 milioni con l'influenza ci sono anch'io e sta pure durando un po' troppino.
Ho creato pincode.txt con solo il pincode.txt e cfprop.txt con il solo cf proprietario e fatto
Codice:
openssl rsautl -encrypt -in FC/pincode.txt -out FC/pincode.enc -inkey SanitelCF.cer -certin -pkcs
openssl enc -base64 -A -in FC/pincode.enc -out FC/pincode.b64
openssl rsautl -encrypt -in FC/cfprop.txt -out FC/cfprop.enc -inkey SanitelCF.cer -certin -pkcs
openssl enc -base64 -A -in FC/cfprop.enc -out FC/cfprop.b64
Mi ritrovo 2 file .b64 di 172 byte li apro con Mousepad (linux diciamo tipo Blocco Note win) e dove copio i dati cifrati sempre validi e li incollo su Credenziali.php... Giusto?
Oggi invio i primi 10 reali e vediamo se incomincio a prendere la gazzosa per poi stapparla alla fine dell'invio :)
 

LinuxOhYeah

Utente Attivo
26 Nov 2016
188
7
18
Ho ordinato la gazzosa. Primi 10 inviati in attesa di ricevuta PDF.
Codice:
inizio trasferimento del file - trasferimento terminato - protocollo = numero
codiceEsito = 000 - descrizioneEsito = Il file è in attesa di elaborazione, per conoscerne l'esito è necessario verificare la ricevuta
...
LA RICHIESTA HA AVUTO RISPOSTA - ERRORE: NON E' PRESENTE LA RICEVUTA PER IL PROTOCOLLO numero
...
LA RICHIESTA HA AVUTO RISPOSTA - E' PRESENTE L' ESITO PER IL PROTOCOLLO numero
protocollo = numero
dataInvio = 26-01-2017 16:47:56
stato = 0
descrizione = Il file e' in fase di elaborazione
nInviati = 0
nAccolti = 0
nWarnings = 0
nErrori = 0
...
ERRORE: NON E' PRESENTE UN FILE ERRORI PER IL PROTOCOLLO numero
Suppongo che devo solo aspettare. Appena ho la prima ricevuta direi che tutto OK. Incrocio le dita. Appena inviati tutti (per sicurezza magari prima li mando 10 a 10 e poi mese a mese) stappo la gazzosa.
Grazie ancora! :)
 

LinuxOhYeah

Utente Attivo
26 Nov 2016
188
7
18
Mi è venuto un dubbio. Sulle ricevute c'è scritto "ha inviato il file Fatture730_2016_completo.zip"... non è che devo modificare il nome ogni invio? Oppure è solo un nome fittizio che non viene percepito dal SistemaTS?

Comunicato stampa Agenzia delle Entrare 25 gennaio 2017 con titolo: "Dichiarazione precompilata - Anche quest’anno è possibile inviare i dati sanitari fino al 9 febbraio - Confermato il calendario per l’invio del 730"
http://www.agenziaentrate.gov.it/wps/file/nsilib/nsi/agenzia/agenzia+comunica/comunicati+stampa/tutti+i+comunicati+del+2017/cs+gennaio+2017/cs+25012017+proroga+invio+dati+santitari+precompilata/017_Com.+st.+Proroga+730+dati+sanitari+25.01.17.pdf
 

marino51

Utente Attivo
28 Feb 2013
2.682
135
63
Lombardia
il nome del file, per correttezza, lo definisci per ogni invio che fai, giusto per avere la documentazione in buon ordine
 

LinuxOhYeah

Utente Attivo
26 Nov 2016
188
7
18
Pensavo anche io per aver ordine. Certo ormai il primo è andato.
Allora conviene spostare dagli script
PHP:
define ("_Fatture730", "Fatture730_2016_02");     // nome del file da trattare ( .txt, .xml, .zip ) 02, 03 etc
direttamente in credenziali.php così si modifica solo una volta senza dover cambiare tutti gli script.

Poi magari dopo aver mandato il tutto cerco di fare che gli script acquisiscano come parametro passato allo script direttamente il nome del file e altre cosette che ovviamente condividerò con voi.

Anche perché forse per il 2017 conviene inviare mese per mese per evitare poi di trovarsi vicino alla scadenza con o senza proroga che ho postato sopra. Non però quando, o se si posso già, inviare quelle del 2017 (ovviamente dopo aver inviato quelle del 2016).
Ricevuta delle prime 10 arrivata: tutto ok! Ovviamente senza gli warning ERRATI che c'erano nell'ambiente di test per gli stessi identici codici fiscale... o_O
Quindi ho già sul tavolo la gazzosa :)
 

Francesco Rotondo

Nuovo Utente
30 Gen 2017
2
0
1
54
Buongiorno a tutti

Sono un programmatore software alle prese con la generazione del file per il sistema TS. Innanzitutto ringrazio il signor Marino per il suo codice, veramente chiaro e ben fatto. Grazie alle sue indicazioni sono riuscito ad effettuare un invio di un file XML al sistema TS. Stamattina, però, una brutta sorpresa. Alle mie richieste di invio dei file ai server del sistema TS, mi viene risposto con il messaggio :

SOAP Fault: (faultcode: env:Client, faultstring: Problemi di collegamento con il server LDAP)

Il punto è che non ho toccato niente. Ma evidentemente così non è. Qualcuno sa darmi un indizio di come procedere alla soluzione di questo problema ? Ho verificato che il sistema TS è operativo. Altre persone stanno inviando dei dati al loro sistema.
Allego il file di log che viene generato durante le prove.
Grazie in anticipo per il disturbo
 

Allegati

Ultima modifica:

marino51

Utente Attivo
28 Feb 2013
2.682
135
63
Lombardia
è dallo scorso venerdì che qualcosa è andato fuori posto,
dalle 13 circa ha ripreso a funzionare,
qualche burlone deve aver fatto pasticci (lato web service)
 

luigisic

Nuovo Utente
5 Feb 2017
2
0
1
sono riuscito ad usare la procedura, però quando invia mi ritorna che il file zip non è valido

codiceEsito = 102
descrizioneEsito = L'ALLEGATO NON E' UN FILE DI TIPO ZIP VALIDO: IL FILE NON E' STATO ACCOLTO
idErrore = 16112410003642654
Ho letto che hai risolto, per favore, puoi dire come hai fatto? Io ho provato a generare il file ZIP con più modalità ma mi viene restituito sempre lo stesso errore.

Grazie.

Ciao
 

marino51

Utente Attivo
28 Feb 2013
2.682
135
63
Lombardia
Ho letto che hai risolto, per favore, puoi dire come hai fatto? Io ho provato a generare il file ZIP con più modalità ma mi viene restituito sempre lo stesso errore
mi sembra che l'errore dipenda dal nome del file che viene inserito, deve avere estensione ".zip"
verifica,
PHP:
        "nomeFileAllegato"       => $Fatture730,  // nome del file con estensione ".zip"
        "documento"              => $zipfile,     // contenuto del file
 

AntonelloS79

Nuovo Utente
20 Feb 2017
2
0
1
40
Salve sono nuovo utente e non sono esperto ma sono autodidatta.
Volevo sapere come facevo a inserire nel file Credenziali.php i dati "non Test" cifrati con il certificato SanitelCF?? dovrei se non ho capito male inserire sia il PIN che il CF proprietario cifrato.
grazie in anticipo
Saluti
 

g.lagana

Nuovo Utente
20 Feb 2017
3
0
1
Messina/Reggio
Faccio una domanda banale, ma sono ignorante in materia!
La chiave privata per decriptare il Codice Fiscale da dove si può scaricare. Il file SanitelCF.cer serve a criptare etc. Ma se io voglio fare il procedimento inverso? cioè dalla stringa base64 codificata che mi ritorna, vorrei ottenere il codice fiscale?

Grazie mille
 

marino51

Utente Attivo
28 Feb 2013
2.682
135
63
Lombardia
,@AntonelloS79 guarda il post 241

cioè dalla stringa base64 codificata che mi ritorna, vorrei ottenere il codice fiscale?
si tratta di crittografia a chiave asimmetrica, la chiave pubblica è distribuita con il certificato e permette di crittografare il codice, la chiave privata è in possesso del solo "destinatario", quindi solo lui può decrittografare
https://it.wikipedia.org/wiki/Crittografia_asimmetrica
non solo, se tutti potessimo decriptare un oggetto, che senso ha la crittografia ???
 
Ultima modifica:
  • Like
Reactions: g.lagana

g.lagana

Nuovo Utente
20 Feb 2017
3
0
1
Messina/Reggio
,@AntonelloS79 guarda il post 241


si tratta di crittografia a chiave asimmetrica, la chiave pubblica è distribuita con il certificato e permette di crittografare il codice, la chiave privata è in possesso del solo "destinatario", quindi solo lui può decrittografare
https://it.wikipedia.org/wiki/Crittografia_asimmetrica
non solo, se tutti potessimo decriptare un oggetto, che senso ha la crittografia ???
Grazie mille marino51
Pensavo che fosse nel pacchetto dello sviluppatore. Mi tornava utile nell'importare i dati in modo inverso non conoscendo il CF. Tutto qui.
Grazie ancora
 

AntonelloS79

Nuovo Utente
20 Feb 2017
2
0
1
40
,@AntonelloS79 guarda il post 241


si tratta di crittografia a chiave asimmetrica, la chiave pubblica è distribuita con il certificato e permette di crittografare il codice, la chiave privata è in possesso del solo "destinatario", quindi solo lui può decrittografare
https://it.wikipedia.org/wiki/Crittografia_asimmetrica
non solo, se tutti potessimo decriptare un oggetto, che senso ha la crittografia ???
Grazie Marino51, ho visto e risolto
Saluti
 

bzzz

Nuovo Utente
26 Feb 2017
2
0
1
34
Innanzitutto complimenti alla community e in particolar modo al mitico Marino per questi script utilissimi!
Scrivo perchè non riesco a capire qual è il mio problema.. il file sembra essere accettato dal sistema, ma quando scarico la ricevuta vedo il famigerato errore e011 file non conforme... allego uno zip di esempio in cui ho oscurato i dati, sperando che possiate aiutarmi...

grazie ancora!
 

Allegati

marino51

Utente Attivo
28 Feb 2013
2.682
135
63
Lombardia
famigerato errore e011 file non conforme
in uno dei post precedenti, è stato suggerito di utilizzare l'editor notepad++ con il plug-in XML tool, per la verifica dei file xml generati (ringrazio ancora oggi chi lo suggerì), ebbene, la verifica fornisce la seguente lista,

Validation of current file using XML schema (730_precompilata.xsd) :
ERROR: Element 'flagPagamentoAnticipato': [facet 'enumeration'] The value '0' is not an element of the set {'1'}.
ERROR: Element 'flagPagamentoAnticipato': '0' is not a valid value of the local atomic type.
ERROR: Element 'flagTipoSpesa': [facet 'enumeration'] The value '0' is not an element of the set {'1', '2'}.
ERROR: Element 'flagTipoSpesa': '0' is not a valid value of the local atomic type.
ERROR: Element 'importo': [facet 'pattern'] The value '70' is not accepted by the pattern '[0-9]{1,5}[.][0-9]{2}'.
ERROR: Element 'importo': '70' is not a valid value of the atomic type 'Dec7MinTipo'.
 
Ultima modifica: