Corrispettivi da Distributori Automatici con porta di comunicazione - Errore 500 e altri

Buongiorno,
E’ da qualche giorno che stiamo tentando, invano, di richiedere un certificato dispositivo per poi procedere all’attivazione ell’invio di corrispettivi di simulazione, per verificare se il software e’ stato scritto correttamente.
Ogni volta che viene invocato l’endpoint: https://apid-ivaservizi.agenziaentrate.gov.it/v1/dispositivi (richiestaCertificatoDispositivo, POST) ricevo uno status code 500.
Quello che vorrei sapere e’: esiste un ambiente di dev/sandbox per eventualmente censire dispositivi “fasulli” e inviare corrispettivi di “test”?
Esiste un certificato “CAEntrate.cer” aggiornato (quello fornito e’ scaduto nel 2021, quindi inutile per i fini di validazione)?
Grazie,
Marco

1 Mi Piace

Ciao Dario, grazie per le info, effettivamente su quell’endpoint non fanno che rispondere Firma non integra, una mia ipotesi e’ che il certificato fabbricante in mio possesso e’ abilitato sui server di produzione ma non quelli di sviluppo… Sarebbe molto utile se qualcuno di Sogei potesse rispondere per offrire delucidazioni a riguardo…

Cosa intendi “dopo aver censito il dispositivo” comunque? A me fallisce subito anche la richiesta di certificato dispositivo su https://v-apid-ivaservizi.agenziaentrate.gov.it/v1/dispositivi/:

<Errori>
    <Errore>
      <Codice>99999</Codice>
      <Descrizione>XML con Firma non integra</Descrizione>
    </Errore>
  </Errori>

E’ necessario eseguire qualche step aggiuntivo che mi sono perso?
Grazie mille!

Ecco la richiesta anonimizzata. Si nel p12/pfx ho il certificato fabbricante e la chiave privata usata per la csr che l’ha generato.

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<p:RichiestaCertificatoDispositivo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/corrispettivi/v1.0/CorrispettiviMessageTypes_v1.0.xsd" versione="1.0"
    xmlns:p="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/corrispettivi/v1.0">
    <Csr>[csr]</Csr>
    <Dispositivo>
        <Tipo>DM</Tipo>
    </Dispositivo>
    <TecnicoVerificatore>
        <CodiceFiscale>TZICAI84A01D575Z</CodiceFiscale>
        <PIvaSocieta>
            <IdPaese>IT</IdPaese>
            <IdCodice>99999999999</IdCodice>
        </PIvaSocieta>
    </TecnicoVerificatore>
    <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
        <ds:SignedInfo>
            <ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
            <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" />
            <ds:Reference URI="">
                <ds:Transforms>
                    <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
                </ds:Transforms>
                <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
                <ds:DigestValue>[base64_44_caratteri]</ds:DigestValue>
            </ds:Reference>
        </ds:SignedInfo>
        <ds:SignatureValue>[base64_344_caratteri]</ds:SignatureValue>
        <ds:KeyInfo>
            <ds:X509Data>
                <ds:X509IssuerSerial>
                    <ds:X509IssuerName>CN=CA Servizio AE Corrispettivi IVA, OU=Servizio AE Corrispettivi IVA, O=Agenzia delle Entrate, C=IT</ds:X509IssuerName>
                    <ds:X509SerialNumber>[thumbprint]</ds:X509SerialNumber>
                </ds:X509IssuerSerial>
                <ds:X509Certificate>[certificato fabbricante]</ds:X509Certificate>
            </ds:X509Data>
        </ds:KeyInfo>
    </ds:Signature>
</p:RichiestaCertificatoDispositivo>

Per quanto riguarda la validazione, ci sto lavorando… a vederlo sembra valido comunque ti faccio sapere :smiley:
Grazie mille ancora

C’e’ l’attributo versione (e’ un po nascosto, sulla dx):

<p:RichiestaCertificatoDispositivo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/corrispettivi/v1.0/CorrispettiviMessageTypes_v1.0.xsd" versione="1.0"
    xmlns:p="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/corrispettivi/v1.0">

La marca e il modello teoricamente non sono obbligatori se il tipo del dispositivo e’ DM.
Il certificato fabbricante e’ valido, credo… E’ stato creato seguendo i passi proposti dal sito dell’Agenzia delle Entrate, la quale ha prodotto un file .cer…

Grazie Dario, era proprio quello, erroneamente andavo a modificare l’xml firmato aggiungendo il prefisso ds e l’attributo xmlns:ds=“…”, questo invalidava la firma e quindi, giustamente, non piaceva al ricevente. Modificata questa cosa il server ha cominciat ad accettare le richieste!

Ho visto che mi viene risposto 202 (Creazione certificato in corso), devo continuare a mandare lo stesso messaggio fino a che non ricevo 201?

Ok risolto, su server di prod mi fermo a “Gestore non censito” chiaramente perche’ sto mandando dati “farlocchi”.
Su server di test “v-apid-…” invece ricevo 403 (Dispositivo non autorizzato alla richiesta) alla Richiesta Certificato Dispositivo… Se il server “v-apid-…” funzionasse potremmo anche (sperabilmente) attivare un dispositivo senza dover per forza avere un Gestore reale e poi inviare corrispettivi con simulazione=“true”…
Grazie ancora