730 precompilato + di uno snippet

  • Creatore Discussione Creatore Discussione marino51
  • Data di inizio Data di inizio
questo errore me lo ha dato quando la partita iva era sbagliata
probabilmente il sistema sogei esegue un controllo incrociato codice fiscale - partita iva
se stai usando il sistema di prova
controlla i dati che stai usando con il mio ultimo "credenziali"
ciao
Marino
 
Ho cominciato ad effettuare la trasmissione "vera" delle fatture (no TEST) è ho ricevuto nel dettaglio errori per i singoli documenti fiscali, tantissimi warning :
w003 IL CF CITTADINO NON PRESENTE IN ARCHIVIO
Ma non ho capito però se questi "warning" implicano che la registrazione è respinta, oppure viene accettata !?
... qualcuno lo sa ?

P.S. : la scadenza per la trasmissione delle fatture 2015 è stata prorogata al 9 febbraio
 
ciao,
nel primo post, scrissi che un particolare impegno doveva essere speso per immettere codici fiscali "corretti"
nel caso segnalato, la registrazione viene accettata quindi è presente in archivio, ma SENZA codice fiscale
se le segnalazioni sono poche, (nel mio caso solo 2 in totale), conviene collegarsi al sito online e modificare manualmente i documenti, cosa che ho fatto,
se i documenti sono tanti, si può tentare la "modifica" via script, vedi documentazione

la stupidità sta nel sistema di test, che non restituisce controlli attendibili per anticipare gli errori
ciao
Marino
 
Per Marino01
Puoi controllare se hai problemi con l'invio di dati tramite commercialista. Le credenziali e gli endpoints da utilizzare
sono nel kit730P_ver_20151222.zip. Sono tre giorni che provo ad inviare i dati ma non ci sto riuscendo. Vari messaggi,
tra cui "credenziali errate", "utente non in archivio", etc. Poi puoi togliermi una curiosità? Il campo "documento" è
definito come tipo base64binary ma nello snippet il file zip non viene codificato.

Grazie
Claudio
 
Vedi l'allegato MedicoDelegaCommercialista.zip

ciao Claudio,

Puoi controllare se hai problemi con l'invio di dati tramite commercialista. Le credenziali e gli endpoints da utilizzare
sono nel kit730P_ver_20151222.zip. Sono tre giorni che provo ad inviare i dati ma non ci sto riuscendo. Vari messaggi,
tra cui "credenziali errate", "utente non in archivio", etc.

nello zip allegato trovi tutte le modifiche necessarie, in particolare (con un po' di fantasia) ho aggiunto i campi "opzionale"
il primo di essi è usato per la "sede"
la modifica è fatta nello script di invio ma anche nel file xml che viene inviato (l'esempio sogei è errato a mio parere)

Poi puoi togliermi una curiosità? Il campo "documento" è
definito come tipo base64binary ma nello snippet il file zip non viene codificato.
lo zip è già codificato così

ciao
Marino
 
Grazie, apporto le modifiche da te suggerite e ti faccio sapere.
Per la 2.a risposta. L'istruzione implode codifica in base64??
Uso winzip o winrar per comprimere.

Ciao
Claudio
 
puntando con tasto destro del mouse sul file xml, winzip -> addto.... stesso nome del file, null'altro
quando ho installato winzip ho lasciato che mettesse il richiamo nel menu
 
Vedi l'allegato 2869

ciao Claudio,



nello zip allegato trovi tutte le modifiche necessarie, in particolare (con un po' di fantasia) ho aggiunto i campi "opzionale"
il primo di essi è usato per la "sede"
la modifica è fatta nello script di invio ma anche nel file xml che viene inviato (l'esempio sogei è errato a mio parere)


lo zip è già codificato così

ciao
Marino


ho provato con il tuo file e funziona benissimo. Appena l'ho modificato con delle credeziali reali ricevo il messaggio
"credenziali non valide"
Sono credenziali entratel di un mio amico commercialista che purtroppo non posso postare.

Grazie
 
Ciao a tutti!

Marino.. non ho parole!! Sei un mito.. e tutti coloro che partecipano a questa discussione..

Purtroppo al momento sono impegnato nel trasloco di casa, ma appena posso darò il mio contributo (spero positivo)!

Sono il titolare di una struttura sanitaria, e con il pallino della programmazione, cerco sempre di farmi tutto da solo (gestionale aziendale hand-made) sfruttando da anni l'open source (uso linux, ma in lab win), quindi cercherò di contribuire con le mie osservazioni/test..
Per il CF cifrato ho mandato il mio CF alla Sogei per sapere se il codice era corretto e mi hanno confermato il tutto (ho usato il comando exec() di php.. convertito poi in base64_encode(..) ed i tecnici della Sogei mi hanno confermato la corretta procedura). Magari si può integrare al file .bat per chi non usasse win..

Ora sono arrivati i trasportatori.. vi devo salutare..

Un abbraccio e a presto!

PS. a chi servisse, ho trovato un software free ( SpeSaniTel, per win7 e sup.) che fa il tutto.. ma per chi come noi vuole capire e farsi tutto da soli questo post è una mano santa! Ancora non ho parole per ringraziare tutti! :)
 
Tra un pacco e l'altro.. ecco il codice da me testato ed inviato ai tecnici Sogei, che mi hanno confermato la validà del CF cifrato.. Tutto php nativo (senza exec() ):

PHP:
<?php

// nella variabile $cf inserire il cf (a 16 cifre..)

$cf = "AAABBB11X11X111X";

echo encryptString( $cf );

function encryptString($clearText)
{
  // sostituire il nome del certificato, e relativo percorso..
  $keyFile=fopen("SanitelCF.cer","r");
  $publicKey=fread($keyFile,8192);
  fclose($keyFile);

  openssl_get_publickey($publicKey);
  openssl_public_encrypt($clearText,$cryptText,$publicKey);
  return(base64_encode($cryptText));
}

?>

Ora non ricordo esattamente, ma mi pare che questo codice io l'abbia estrapolato dal Package realizzato da un ragazzo, padosoft, e disponibile online a questo indirizzo:
tessera sanitaria by Padosoft

Il package permette la creazione del file XML da inviare alla SistemaTS.. Padosoft non ha proseguito il lavoro di invio tramite webservice perché mi ha spiegato (via mail) che il cliente che gli aveva commissionato il lavoro in realtà non aveva più questa necessità.. ma ha deciso di condividere il package..
A chi interessasse, per l'installazione deve usare "composer"..

PS: non vorrei incasinare il post con materiale superfluo, quindi se lo ritenete inutile potete anche omettere quanto ho appena pubblicato..
 
Ultima modifica:
ho provato con il tuo file e funziona benissimo. Appena l'ho modificato con delle credeziali reali ricevo il messaggio
"credenziali non valide"
Sono credenziali entratel di un mio amico commercialista che purtroppo non posso postare.

Grazie

verifica bene,

login e psw sono del commercialista

cfproprietario e p.iva sono del medico

pincode inviante (NON CIFRATO) e sede sono del commercialista

la sede l'ho aggiunta in xml, nell'esempio sogei non c'è

non ho altro ....
fai sapere
ciao
Marino
 
Ciao Marino,
ho fatto proprio come da te specificato.

C'è un modo per vedere il log del colloquio soap?

Grazie Claudio
 
Ciao Marino,
ho fatto proprio come da te specificato.

C'è un modo per vedere il log del colloquio soap?

Grazie Claudio

credenziali, metti a 1 trace e exception
PHP:
$SoapClientParam = array
    ( 
    "location"		=> "x", 
    "login"                   => $login, 
    "password"		=> $password, 
    "authentication"	=> SOAP_AUTHENTICATION_BASIC, 
    "trace"		=> 1, 
    "exceptions"	=> 1
    );

FattureInviaWsdl.php

PHP:
$output = $client->inviaFileMtom(Array
    (
    "nomeFileAllegato"       => _Fatture730,
    "pincodeInvianteCifrato" => $pincodeInviante,
    "documento"              => $zipfile,
    "datiProprietario"       => ( Array( "cfProprietario" => $cfProprietario ) ),
    "opzionale1"             => $Sede,
    "opzionale2"             => '0',
    "opzionale3"             => '0'
    ))
;

    echo "====== REQUEST HEADERS =====" . "<br />";
    var_dump($client->__getLastRequestHeaders()); echo "<p> </p>";
    echo "========= REQUEST ==========" . "<br />";
    var_dump($client->__getLastRequest()); echo "<p> </p>";
    echo "========== OUTPUT ==========" . "<br />";
    var_dump($output); echo "<p> </p>";

if (is_soap_fault($output))
 
Ciao Marino,

Nello snippet per la ricezione del file errori c'è un modo di avere direttamente il file csv? O un modo per estrarre
direttamente nello snippet il file CSV dallo Zip?

Grazie

Claudio
 
PHP:
        else
            {
            error_log("SALVO GLI ERRORI COME ".$nomefile, 0);
            echo "<p><h4>SALVO GLI ERRORI COME ".$nomefile."</h4></p>";
            file_put_contents ( $nomefile, $dati ); 

            $zip = new ZipArchive;
            $res = $zip->open($nomefile);
            if ($res === TRUE)
                {
                $fileCSV = $zip->getNameIndex(0);
                $zip->extractTo(_PercorsoDocRicevuti);
                $zip->close();
                error_log("File csv estratto ".$fileCSV, 0);
                echo "<p>File csv estratto ".$fileCSV."</p>";
                }
            else
                {
                error_log("Il file ".$nomefile." non è disponibile", 0);
                echo "<p>Il file ".$nomefile." non è disponibile</p>";
                }

            error_log("RICHIESTA COMPLETATA CON SUCCESSO", 0);
            echo "<p><h4>RICHIESTA COMPLETATA CON SUCCESSO</h4></p>";
            }

prova così, ciao
Marino
 

Discussioni simili