Receiving TPE error 1105 when attempting to transmit to irs a2a system

376 Views Asked by At

I am receiving the TPE 1105 whenever I try to submit to the IRS through A2A. I have been over the soap examples as well as dug into the wsd's multiple times and have been unable to figure out what might be causing this issue.

If you have any insight I would be so eternally grateful to finally put the 1105 to bed.

    POST [AATS_URL] HTTP/1.1
    Content-Encoding: gzip
    Accept-Encoding: gzip,deflate
    Content-Type: multipart/related; type="application/xop+xml"; start="<root_part>"; boundary="--=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517"; start-info="text/xml"
    SOAPAction: "BulkRequestTransmitter"
    MIME-Version: 1.0
    Accept: text/xml,multipart/related
    Expect: 100-continue
    Cache-Control: no-cache
    Pragma: no-cache
    User-Agent: Java/1.8.0_111
    Host: la.www4.irs.gov
    Connection: keep-alive
    Content-Length: 16299

    ----=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517
    Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
    Content-Transfer-Encoding: 8bit
    Content-Id: <root_part>

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <soapenv:Envelope xmlns:air="urn:us:gov:treasury:irs:ext:aca:air:ty18" xmlns:com="urn:us:gov:treasury:irs:common" xmlns:hdr="urn:us:gov:treasury:irs:msg:acabusinessheader" xmlns:oas1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:req="urn:us:gov:treasury:irs:msg:irsacabulkrequesttransmitter" xmlns:sec="urn:us:gov:treasury:irs:msg:acasecurityheader" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
        <soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
            <wse:Security xmlns:wse="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" Id="SH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
                <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="SIG-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
                    <ds:SignedInfo>
                        <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"/>
                        <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
                        <ds:Reference URI="#TS-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
                            <ds:Transforms>
                                <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments">
                                    <ds:InclusiveNamespaces xmlns:ds="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wse wsa osa1 soapenv air com hdr sec req"/>
                                </ds:Transform>
                            </ds:Transforms>
                        <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
                        <ds:DigestValue>FqYS/pHdN05mKKccxqM4jmEwJNRR+ikRPB7HuyvbGQY=</ds:DigestValue>
                        </ds:Reference>
                        <ds:Reference URI="#MH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
                            <ds:Transforms>
                                <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
                                    <ds:InclusiveNamespaces xmlns:ds="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wse wsa osa1 soapenv com hdr sec req"/>
                                </ds:Transform>
                            </ds:Transforms>
                        <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
                        <ds:DigestValue>qlWuAbD2PwDmvK7/KzU56ZWsKhBH2PYW/v2eW/30/4E=</ds:DigestValue>
                        </ds:Reference>
                        <ds:Reference URI="#BH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
                            <ds:Transforms>
                                <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
                                    <ds:InclusiveNamespaces xmlns:ds="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wse wsa osa1 soapenv air com sec req"/>
                                </ds:Transform>
                            </ds:Transforms>
                            <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
                            <ds:DigestValue>E2cw4uavSk8RGQeewG04q3tcBRwM6dnMQmSctdJl4k8=</ds:DigestValue>
                        </ds:Reference>
                    </ds:SignedInfo>
                    <ds:SignatureValue>[SIGNATURE_VALUE]</ds:SignatureValue>
                    <ds:KeyInfo Id="KI-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
                        <wse:SecurityTokenReference wsu:Id="STR-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
                            <wse: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">[CERT_VALUE]</wse:KeyIdentifier>
                        </wse:SecurityTokenReference>
                    </ds:KeyInfo>
                </ds:Signature>
                <wsu:Timestamp wsu:Id="TS-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
                    <wsu:Created>2019-02-15T15:41:01Z</wsu:Created>
                    <wsu:Expires>2019-02-15T15:51:01Z</wsu:Expires>
                </wsu:Timestamp>
            </wse:Security>
            <air:ACATransmitterManifestReqDtl xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="MH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
                <air:PaymentYr>2018</air:PaymentYr>
                <air:PriorYearDataInd>0</air:PriorYearDataInd>
                <com:EIN>[REDACTED]</com:EIN>
                <air:TransmissionTypeCd>O</air:TransmissionTypeCd>
                <air:TestFileCd>T</air:TestFileCd>
                <air:TransmitterForeignEntityInd>0</air:TransmitterForeignEntityInd>
                <air:TransmitterNameGrp>
                    <air:BusinessNameLine1Txt>[REDACTED]</air:BusinessNameLine1Txt>
                </air:TransmitterNameGrp>
                <air:CompanyInformationGrp>
                    <air:CompanyNm>[REDACTED]</air:CompanyNm>
                    <air:MailingAddressGrp>
                        <air:USAddressGrp>
                            <air:AddressLine1Txt>[REDACTED]</air:AddressLine1Txt>
                            <com:CityNm>[REDACTED]</com:CityNm>
                            <air:USStateCd>[REDACTED]</air:USStateCd>
                            <com:USZIPCd>[REDACTED]</com:USZIPCd>
                        </air:USAddressGrp>
                    </air:MailingAddressGrp>
                    <air:ContactNameGrp>
                        <air:PersonFirstNm>[REDACTED]</air:PersonFirstNm>
                        <air:PersonMiddleNm>[REDACTED]</air:PersonMiddleNm>
                        <air:PersonLastNm>[REDACTED]</air:PersonLastNm>
                    </air:ContactNameGrp>
                    <air:ContactPhoneNum>[REDACTED]</air:ContactPhoneNum>
                </air:CompanyInformationGrp>
                <air:VendorInformationGrp>
                    <air:VendorCd>I</air:VendorCd>
                    <air:ContactNameGrp>
                        <air:PersonFirstNm>[REDACTED]</air:PersonFirstNm>
                        <air:PersonMiddleNm>[REDACTED]</air:PersonMiddleNm>
                        <air:PersonLastNm>[REDACTED]</air:PersonLastNm>
                    </air:ContactNameGrp>
                    <air:ContactPhoneNum>[REDACTED]</air:ContactPhoneNum>
                </air:VendorInformationGrp>
                <air:TotalPayeeRecordCnt>2</air:TotalPayeeRecordCnt>
                <air:TotalPayerRecordCnt>1</air:TotalPayerRecordCnt>
                <air:SoftwareId>[REDACTED]</air:SoftwareId>
                <air:FormTypeCd>1094/1095B</air:FormTypeCd>
                <com:BinaryFormatCd>application/xml</com:BinaryFormatCd>
                <com:ChecksumAugmentationNum>25fbebd1143d8aa935a445db998eb374761113af8b17d67b3a95af9ad73e17bc</com:ChecksumAugmentationNum>
                <com:AttachmentByteSizeNum>7245</com:AttachmentByteSizeNum>
                <air:DocumentSystemFileNm>1094B_Request_[TCC]_20190215T154101026Z.xml</air:DocumentSystemFileNm>
            </air:ACATransmitterManifestReqDtl>
            <hdr:ACABusinessHeader xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="BH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
            <air:UniqueTransmissionId>3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7:SYS12:[TCC]::T</air:UniqueTransmissionId>
            <com:Timestamp>2019-02-15T15:41:01Z</com:Timestamp>
            </hdr:ACABusinessHeader>
            <sec:ACASecurityHeader>
            <hdr:UserId>[REDACTED]</hdr:UserId>
            </sec:ACASecurityHeader>
            <wsa:Action>BulkRequestTransmitterService</wsa:Action>
        </soapenv:Header>
        <soapenv:Body>
            <req:ACABulkRequestTransmitter version="1.0">
                <com:BulkExchangeFile>
                    <xop:Include xmlns:xop="http://www.w3.org/2004/08/xop/include" href="cid:1094B_Request_[TCC]_20190215T154101026Z.xml"/>
                </com:BulkExchangeFile>
            </req:ACABulkRequestTransmitter>
        </soapenv:Body>
    </soapenv:Envelope>

    ----=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517
    Content-Type: application/xml
    Content-Transfer-Encoding: 7bit
    Content-Id: <1094B_Request_[TCC]_20190215T154101026Z.xml>
    Content-Disposition: attachment; filename="1094B_Request_[TCC]_20190215T154101026Z.xml"

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <msg:Form109495BTransmittalUpstream xmlns:air="urn:us:gov:treasury:irs:ext:aca:air:ty18" xmlns:com="urn:us:gov:treasury:irs:common" xmlns:msg="urn:us:gov:treasury:irs:msg:form1094-1095Btransmitterupstreammessage" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:us:gov:treasury:irs:msg:form1094-1095Btransmitterupstreammessage ../MSG/IRS-Form1094-1095BTransmitterUpstreamMessage.xsd">
    [REMOVED TO SAVE SPACE]
    </msg:Form109495BTransmittalUpstream>

    ----=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517-- 

We are generating these soap envelopes manually using the core org.w3c.dom Document library in Java in conjunction with the java xml dsig library for signing and validating.

EDIT-- I've managed to pass the 1105 and am now hitting the 1122 'WS Security Header Error'. I've read over the docs many times, tried to verify everything I can, but am still hitting it. There are a few unknowns for me-

  1. What exactly is expected inside the KeyIdentifier element? I've tried the base64 encoded bytes of the cert, and the public key but the docs from oasis for the x509v3 token aren't exactly very descriptive or maybe I've just misread them.
  2. Is there a way to verify my references are correct? I see them, so that would mean they are being created correctly, no?
  3. If you happen to see anything out of the ordinary with the security header, please please let me know. This Transmission code is identical currently to what is passing the 1105 and failing the 1122, minus formatting.

I'm using the java dsig library to create my Signature elements in the below code.

2

There are 2 best solutions below

5
Das On

The first thing that sticks out to me is the namespace for UserId is different than what I currently am using. It looks like you are using the namespace for acabusinessheader when it should be the common namespace, changing it to what I've changed below will at least have that tag using the right namespace.

<sec:ACASecurityHeader>
   <com:UserId>[REDACTED]</com:UserId>
</sec:ACASecurityHeader>
0
SteveManC On

Ok, so this is a bit of a lack of understanding of the technology on my part and the vagueness of the IRS docs as well. The issue with my failed transmission receiving the TPE 1105 was caused because I was 'indenting' my xml with my transformer in Java when writing our data to the connection. This caused the soap message to become unrecognizable as a MIME type message. Hope this can help someone.

EDIT-- So my second problem, encountering the 1122, was caused by the org.w3.dom Document being a level 1 document vs. a level 2 in Java. This in conjunction with the java dsig library was not properly signing ( I believe ) the xml. Once I upgraded the code to use a level 2 document, everything is working fine. Hopefully someone will find this useful as it would have saved me loads of time.