IRS-A2A BulkRequestTransmitter — [TPE1207] В сообщении с запросом отсутствует вложение.

Я пытаюсь отправить запрос в IRS с помощью WCF, и файл прикреплен следующим образом

TransmitterACAUIBusinessHeaderType manifestType = iRSSubmissionManifest;

ACASendService.BulkRequestTransmitterRequest request = new ACASendService.BulkRequestTransmitterRequest();

request.Security = GetSecurity();
request.ACATransmitterManifestReqDtl = GetACATransmitterManifestReqDtl(manifestType);
request.ACABusinessHeader = GetACATransmitterBusinessHeaderRequest(manifestType);

request.ACABulkRequestTransmitter = new ACABulkRequestTransmitterType();
byte[] uploadFile = StreamingHelper.Chunk(_submissionXmlFolderPath);
request.ACABulkRequestTransmitter.BulkExchangeFile = uploadFile;

ACASendService.BulkRequestTransmitterPortTypeClient _airClient = new ACASendService.BulkRequestTransmitterPortTypeClient();
ACASendService.ACABulkRequestTransmitterResponseType response = _airClient.BulkRequestTransmitter(request.ACASecurityHeader, request.Security, ref request.ACABusinessHeader, request.ACATransmitterManifestReqDtl, request.ACABulkRequestTransmitter);

Когда я смотрю на запрос, я вижу двоичные данные в Soap Body.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:us:gov:treasury:irs:ext:aca:air:7.0" xmlns:urn1="urn:us:gov:treasury:irs:common" xmlns:urn2="urn:us:gov:treasury:irs:msg:acabusinessheader" xmlns:urn3="urn:us:gov:treasury:irs:msg:irsacabulkrequesttransmitter">
<soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
        <Signature Id="SIG-57610A09584142FAA8ABFBD262776BF9" xmlns="http://www.w3.org/2000/09/xmldsig#">
            <SignedInfo>
                <CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"/>
                <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
                <Reference URI="#TS-C126221AACCA4F37BDBBC1AE27A45F44">
                    <Transforms>
                        <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
                            <InclusiveNamespaces PrefixList="wsse wsa soapenv urn urn1 urn2 urn3" xmlns="http://www.w3.org/2001/10/xml-exc-c14n#"/>
                        </Transform>
                    </Transforms>
                    <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                    <DigestValue>DtSEqek9RuRdR/q8AlxobY/90+o=</DigestValue>
                </Reference>
                <Reference URI="#MF-D3C0AAF6624148A08627F799ECDDA387">
                    <Transforms>
                        <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
                            <InclusiveNamespaces PrefixList="wsa soapenv urn1 urn2 urn3" xmlns="http://www.w3.org/2001/10/xml-exc-c14n#"/>
                        </Transform>
                    </Transforms>
                    <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                    <DigestValue>adRdmNY8Gwrebd9fMaiBRCgz/3o=</DigestValue>
                </Reference>
                <Reference URI="#BH-CD8C12D6D4984DD3901CFE1D9E65A86A">
                    <Transforms>
                        <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
                            <InclusiveNamespaces PrefixList="wsa soapenv urn urn1 urn3" xmlns="http://www.w3.org/2001/10/xml-exc-c14n#"/>
                        </Transform>
                    </Transforms>
                    <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                    <DigestValue>dj4DhqNAJnNp40DT5dEdKGTOP48=</DigestValue>
                </Reference>
            </SignedInfo>
            <SignatureValue>Signature==</SignatureValue>
            <KeyInfo Id="KI-4174BEF920A14F639F7C4E9F825D53AE">
                <wsse:SecurityTokenReference wsu:Id="STR-192B01936AC24010A0DF60BD21F3A6FA">
                    <KeyIdentifier EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">KeyData==</KeyIdentifier>
                </wsse:SecurityTokenReference>
            </KeyInfo>
        </Signature>
        <wsu:Timestamp wsu:Id="TS-C126221AACCA4F37BDBBC1AE27A45F44" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
            <wsu:Created>2016-04-18T12:03:46.570Z</wsu:Created>
            <wsu:Expires>2016-04-18T12:13:46.572Z</wsu:Expires>
        </wsu:Timestamp>
    </wsse:Security>
    <urn:ACATransmitterManifestReqDtl wsu:Id="MF-D3C0AAF6624148A08627F799ECDDA387" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
        <PaymentYr>2015</PaymentYr>
        <PriorYearDataInd>0</PriorYearDataInd>
        <EIN>EIN</EIN>
        <TransmissionTypeCd>O</TransmissionTypeCd>
        <TestFileCd>T</TestFileCd>
        <TransmitterNameGrp>
            <BusinessNameLine1Txt>Name</BusinessNameLine1Txt>
        </TransmitterNameGrp>
        <CompanyInformationGrp>
            <CompanyNm>Company</CompanyNm>
            <MailingAddressGrp>
                <USAddressGrp>
                    <AddressLine1Txt>Address1</AddressLine1Txt>
                    <CityNm>City</CityNm>
                    <USStateCd>MD</USStateCd>
                    <USZIPCd>ZIP</USZIPCd>
                </USAddressGrp>
            </MailingAddressGrp>
            <ContactNameGrp>
                <PersonFirstNm>First</PersonFirstNm>
                <PersonLastNm>Last</PersonLastNm>
            </ContactNameGrp>
            <ContactPhoneNum>Phone</ContactPhoneNum>
        </CompanyInformationGrp>
        <VendorInformationGrp>
            <VendorCd>I</VendorCd>
            <ContactNameGrp>
                <PersonFirstNm>First</PersonFirstNm>
                <PersonLastNm>Last</PersonLastNm>
            </ContactNameGrp>
            <ContactPhoneNum>Phone</ContactPhoneNum>
        </VendorInformationGrp>
        <TotalPayeeRecordCnt>1</TotalPayeeRecordCnt>
        <TotalPayerRecordCnt>1</TotalPayerRecordCnt>
        <SoftwareId></SoftwareId>
        <FormTypeCd>1094/1095C</FormTypeCd>
        <BinaryFormatCd>application/xml</BinaryFormatCd>
        <ChecksumAugmentationNum>4BDAA151D8543B25D9A3DCDFDBFF0F44</ChecksumAugmentationNum>
        <AttachmentByteSizeNum>3800</AttachmentByteSizeNum>
        <DocumentSystemFileNm>1094C_Request_TCC_20160418T062909155Z.xml</DocumentSystemFileNm>
    </urn:ACATransmitterManifestReqDtl>
    <urn2:ACABusinessHeader wsu:Id="BH-CD8C12D6D4984DD3901CFE1D9E65A86A" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
        <urn:UniqueTransmissionId xmlns:urn="urn:us:gov:treasury:irs:ext:aca:air:7.0">d5631c37-de39-4569-914f-41d482b780e6:SYS12:TCC::T</urn:UniqueTransmissionId>
        <urn1:Timestamp xmlns:urn1="urn:us:gov:treasury:irs:common">2016-04-18T17:33:53Z</urn1:Timestamp>
    </urn2:ACABusinessHeader>
    <wsa:Action>BulkRequestTransmitterService</wsa:Action>
</soapenv:Header>
<soapenv:Body>
    <urn3:ACABulkRequestTransmitter version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <urn1:BulkExchangeFile>PEZvcm0xMDk0OTVDVHJhbnNtaXR0YWxVcHN0cm_File_Bytes=</urn1:BulkExchangeFile>
    </urn3:ACABulkRequestTransmitter>
</soapenv:Body>

Am I missing anything? is there any specific bindings or encoding need to be added?


person Ravi    schedule 23.04.2016    source источник
comment
Какова реальная проблема, с которой вы столкнулись? Кроме того, фрагмент, который вы разместили, немного короче.   -  person khlr    schedule 23.04.2016
comment
Я получаю сообщение об ошибке от IRS с кодом ошибки TPE1207 (в сообщении запроса отсутствует вложение).   -  person Ravi    schedule 24.04.2016
comment
@khlr Я отредактировал фрагмент.   -  person Ravi    schedule 24.04.2016


Ответы (1)


Если я правильно читаю ваш сгенерированный XML, кажется, что вы встроили содержимое файла своих налоговых форм в элемент BulkExchangeFile. Возможно, это связано с тем, что когда вы просматривали файл wsdl, который распространяет IRS, указанный элемент описывается как xsd:base64Binary.

Если вы посмотрите на страницу 84 Руководства IRS по составу версии 4.3,https://www.irs.gov/PUP/for_taxpros/software_developers/information_returns/AIR%20Submission%20Composition%20and%20Reference%20Guide%20TY2015_v4.3_03_17_2016.pdf (или найдите http://www.w3.org/2004/08/xop/include в документе), вы увидите, что BulkExchangeFile должно быть заполнено следующим образом:

<inc:Include href="cid:yourAttachmentFile.xml" xmlns:inc="http://www.w3.org/2004/08/xop/include"/>

где yourAtachmentFile.xml — это файл, который вы хотите отправить в систему IRS-AIR-A2A. Как вы увидите на странице, ваши налоговые данные должны быть получены в виде вложения MTOM.

По сути, ваш XML выше содержит налоговые данные в BulkExchangeElement, и вы не отправляете данные в виде вложения MTOM.

Я думаю, что вы парень C# (я чувак Java), поэтому этот поток может вам помочь: Сообщение IRS-A2A BulkRequestTransmitter неправильно отформатировано и/или не может быть интерпретировано

У меня были проблемы с отправкой наших данных 1095 в IRS, пока я не увидел страницу 84 в Руководстве по составлению. Можно подумать, что соблюдения WSDL должно быть достаточно для связи с веб-службой;)

person rjp    schedule 25.04.2016