E-Deklaracje błąd: cannot find the declaration of element 'deklaracja'

0

Witam, morduje sie z obsługą wysyłki edeklaracji, dokument próbuje wysłać przez webservice metodą: sendDocument
Jest też metoda: sendUnsignDocument.

Dokument jest podpisany podpisem otaczającym i wygląda on mniej więcej tak:

<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="Sgn_822820675616_0">
<ds:SignedInfo Id="SgnInfo_822820698782_6">
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<ds:Reference Id="Ref_822820685156_3" URI="#Dokument-0">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>xxxxxxxxxxxxxxxxxxxx=</ds:DigestValue>
</ds:Reference>
<ds:Reference Type="http://uri.etsi.org/01903#SignedProperties" Id="Ref_822820698609_4" URI="#SgnProp_822820676003_1">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>xxxxxxxxxxxxxxxxxxxx=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue Id="SgnVal_822820698757_5">
xxxxxxxxxxxxxxxxxxxx=
</ds:SignatureValue>
<ds:KeyInfo Id="Key_822820676860_2">
<ds:X509Data>
<ds:X509Certificate>
xxxxxxxxxxxxxxxxxxxx=
</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
<ds:Object>
<xades:QualifyingProperties xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" Target="#Sgn_822820675616_0">
<xades:SignedProperties Id="SgnProp_822820676003_1">
<xades:SignedSignatureProperties>
<xades:SigningTime>2015-11-04T08:06:20Z</xades:SigningTime>
<xades:SigningCertificate>
<xades:Cert>
<xades:CertDigest>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>xxxxxxxxxxxxxxxxxxxx=</ds:DigestValue>
</xades:CertDigest>
<xades:IssuerSerial>
<ds:X509IssuerName>
xxxxxxxxxxxxxxxxxxxx=
</ds:X509IssuerName>
<ds:X509SerialNumber>xxxxxxxxxxxxxxxxxxxx=</ds:X509SerialNumber>
</xades:IssuerSerial>
</xades:Cert>
</xades:SigningCertificate>
</xades:SignedSignatureProperties>
<xades:SignedDataObjectProperties/>
</xades:SignedProperties>
</xades:QualifyingProperties>
</ds:Object>
<ds:Object Id="Dokument-0" MimeType="text/xml">
<Deklaracja xmlns="http://crd.gov.pl/wzor/2015/07/15/2491/">
<Naglowek>
<KodFormularza kodSystemowy="VAT-7 (15)" kodPodatku="VAT" rodzajZobowiazania="Z" wersjaSchemy="1-1E">VAT-7</KodFormularza>
<WariantFormularza>15</WariantFormularza>
<CelZlozenia poz="P_7">1</CelZlozenia>
<Rok>2015</Rok>
<Miesiac>1</Miesiac>
<KodUrzedu>0207</KodUrzedu>
</Naglowek>

....
</Deklaracja>
</ds:Object>
</ds:Signature>

czy podpis ma być inny? Czy ma on zawierać sie w wyższym członie wiadomości soap? Z tego co zrozumiałem ten dokument ma być w base64 w całości z podpisem. Ma ktoś doświadczenia?

Może posiada ktoś przykładowy XML Vat-7 (15) który przechodzi przez bramke testową?

0

W deklaracjach VAT nie robiłem więc Ci z samym XML nie pomogę jednak co do podpisu to są dwa kwalifikowany i niekwalifikowany. Kwalifikowany wymaga zewnętrznego urządzenia (temat był już gdzieś tu na forum poruszany więc możesz poszukać). Druga sprawa to w jaki sposób wysyłasz deklarację i przy użyciu jakiego delphi. Ja walczyłem z ws Fedex i Delphi7. Okazało się, że ws Fedexa jest nowszy niż pozwala na to Delphi7 więc użyłem nieco innej metody do wysyłki:
Jak połączyć się z webserwisem FedEx
Może to Ci coś podpowie. Ponadto proponuję podać fragment kodu do wysyłki oraz jaki zwrotnie dostajesz komunikat.

0

więc tak, posiadam podpis kwalifikowany z czytnikiem, robię to pod Delphi XE6. WSDLa nie udało mi się zaimportować (nie importuje podtypów), ale na tym forum znalazłem unit który ktoś jakimś cudem poprawnie zaimportował - i o dziwo komunikuje z webservicem jak należy.

Co do tematu to problem rozwiązałem, okazało się że ciołki z MF zmienili mały atrybut w XSD i od razu przestało działać. Nawet nie zaznaczyli na stronie, że wprowadzono zmianę. Niby XSD jest z lipca (data na stronie nadal widnieje jako 2015-07-01), a zmianę zrobili we wrześniu nie dodając nigdzie notki.

jedyną zmianę jakiej dokonali to:

<Deklaracja xmlns="http://crd.gov.pl/wzor/2015/09/04/2567/">
<Deklaracja xmlns="http://crd.gov.pl/wzor/2015/07/15/2491/">

jeszcze bym zrozumiał gdyby były zmiany w składni, ale absolutnie nic sie nie zmieniło w XSD a zmodyfikowali tylko date wzoru (podobno nawet w desktopowej aplikacji wywalał sie ten sam błąd po ich zmianach). Ten ich śmieszny parser XML nawet czepia sie jak nody są w niewłaściwej kolejności poukładane - mimo że pola mają ponumerowane 1,2,3,4 to w nagłówku ma być 1,3,4,2!

1 użytkowników online, w tym zalogowanych: 0, gości: 1