我正在使用 WCF 通过他们的 WSDL 为 IRS 集成 A2A 渠道。我能够通过发送请求的任何与代码相关的错误,但目前从 IRS 收到以下错误:
<faultstring>The message was not formatted properly and/or cannot be interpreted. Please review the XML standards outlined in Section 3 of Publication 5258 (...), correct any issues, and try again.</faultstring>
<detail>
<errorcode>TPE1105</errorcode>
<uniqueTransmissionID/>
</detail>
我假设基于<uniqueTransmissionID/>
响应中的附加节点,它与 UTID 有关。我已经无数次地查看了 UTID 和 Soap Envelope 示例的格式,但我终其一生都无法弄清楚可能有什么不合适的地方。我在之前的回答中尝试了fatherOfWine 的一个小建议,将 BusinessHeader 移到 Manifest 上方,但它返回了相同的错误。
我已经用肥皂信封添加了完整的请求,在请求过程中空格似乎被剥离了,但我已经从 Fiddler 重新格式化了它。
POST [AATS URL] HTTP/1.1
Content-Type: multipart/related; type="application/xop+xml";start="<rootpart>";start-info="text/xml";boundary="--023e657d-66f5-4e92-8e6e-c223338c205a"
SOAPAction: "BulkRequestTransmitter"
Host: la.www4.irs.gov
Content-Length: 15820
Expect: 100-continue
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
----023e657d-66f5-4e92-8e6e-c223338c205a
Content-Type: application/xop+xml; type="text/xml"; charset=UTF-8
Content-Transfer-Encoding: 8bit
Content-Id:<rootpart>
<soapenv:Envelope xmlns:oas1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:urn="urn:us:gov:treasury:irs:ext:aca:air:ty18"
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:acasecurityheader"
xmlns:urn4="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-E508633998DD41B6AE062D27D0AC9A48"
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-BAC31544F1954B5F8C8441167B91A388">
<Transforms>
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<InclusiveNamespaces PrefixList="wsse wsa oas1 soapenv urn urn1 urn2 urn3 urn4"
xmlns="http://www.w3.org/2001/10/xml-exc-c14n#" />
</Transform>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
<DigestValue>[VALUE]</DigestValue>
</Reference>
<Reference URI="#id-870747663BAB4D6FB43FFAD2034013F1">
<Transforms>
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<InclusiveNamespaces PrefixList="wsa oas1 soapenv urn1 urn2 urn3 urn4"
xmlns="http://www.w3.org/2001/10/xml-exc-c14n#" />
</Transform>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
<DigestValue>[VALUE]</DigestValue>
</Reference>
<Reference URI="#id-1A336736A6134B16831D45A0C8785D10">
<Transforms>
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<InclusiveNamespaces PrefixList="wsa oas1 soapenv urn urn1 urn3 urn4"
xmlns="http://www.w3.org/2001/10/xml-exc-c14n#" />
</Transform>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
<DigestValue>[VALUE]</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>[VALUE]</SignatureValue>
<KeyInfo Id="KI-42CB9363E8BE47F2B3E0CD8A743C2D7C">
<wsse:SecurityTokenReference wsu:Id="STR-9EE1B09DD6794A64B00B496CC9DC3804">
<wsse: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">[KEY]</wsse:KeyIdentifier>
</wsse:SecurityTokenReference>
</KeyInfo>
</Signature>
<wsu:Timestamp wsu:Id="TS-BAC31544F1954B5F8C8441167B91A388">
<wsu:Created>2018-12-27T17:42:39.593Z</wsu:Created>
<wsu:Expires>2018-12-27T17:52:39.593Z</wsu:Expires>
</wsu:Timestamp>
</wsse:Security>
<urn:ACATransmitterManifestReqDtl wsu:Id="id-DB1DDC6A020C433CB71FF38200026E55"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<urn:PaymentYr>2018</urn:PaymentYr>
<urn:PriorYearDataInd>0</urn:PriorYearDataInd>
<urn1:EIN>[EIN]</urn1:EIN>
<urn:TransmissionTypeCd>O</urn:TransmissionTypeCd>
<urn:TestFileCd>T</urn:TestFileCd>
<urn:TransmitterNameGrp>
<urn:BusinessNameLine1Txt>[Name]</urn:BusinessNameLine1Txt>
</urn:TransmitterNameGrp>
<urn:CompanyInformationGrp>
<urn:CompanyNm>[Name]</urn:CompanyNm>
<urn:MailingAddressGrp>
<urn:USAddressGrp>
<urn:AddressLine1Txt>[Address]</urn:AddressLine1Txt>
<urn1:CityNm>[City]</urn1:CityNm>
<urn:USStateCd>[ST]</urn:USStateCd>
<urn1:USZIPCd>[ZIP]</urn1:USZIPCd>
</urn:USAddressGrp>
</urn:MailingAddressGrp>
<urn:ContactNameGrp>
<urn:PersonFirstNm>[FirstName]</urn:PersonFirstNm>
<urn:PersonLastNm>[LastName]</urn:PersonLastNm>
</urn:ContactNameGrp>
<urn:ContactPhoneNum>[PhoneNumber]</urn:ContactPhoneNum>
</urn:CompanyInformationGrp>
<urn:VendorInformationGrp>
<urn:VendorCd>I</urn:VendorCd>
<urn:ContactNameGrp>
<urn:PersonFirstNm>[FirstName]</urn:PersonFirstNm>
<urn:PersonLastNm>[LastName]</urn:PersonLastNm>
</urn:ContactNameGrp>
<urn:ContactPhoneNum>[PhoneNumber]</urn:ContactPhoneNum>
</urn:VendorInformationGrp>
<urn:TotalPayeeRecordCnt>3</urn:TotalPayeeRecordCnt>
<urn:TotalPayerRecordCnt>1</urn:TotalPayerRecordCnt>
<urn:SoftwareId>[SoftwareID]</urn:SoftwareId>
<urn:FormTypeCd>1094/1095C</urn:FormTypeCd>
<urn1:BinaryFormatCd>application/xml</urn1:BinaryFormatCd>
<urn1:ChecksumAugmentationNum>[CheckSum]</urn1:ChecksumAugmentationNum>
<urn1:AttachmentByteSizeNum>[Bytes]</urn1:AttachmentByteSizeNum>
<urn:DocumentSystemFileNm>1094C_Request_[TCC]_20181226T161942345Z.xml</urn:DocumentSystemFileNm>
</urn:ACATransmitterManifestReqDtl>
<urn2:ACABusinessHeader wsu:Id="id-E71242CFDF04487D9ECA0AC2E1544E90"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<urn:UniqueTransmissionId>6de74234-d0fd-45b2-ad45-b408fd137201:SYS12:[TCC]::T</urn:UniqueTransmissionId>
<urn1:Timestamp>2018-12-26T16:19:42Z</urn1:Timestamp>
</urn2:ACABusinessHeader>
<urn3:ACASecurityHeader>
<urn2:UserId>1#######</urn2:UserId>
</urn3:ACASecurityHeader>
<wsa:Action>BulkRequestTransmitter</wsa:Action>
</soapenv:Header>
<soapenv:Body>
<urn4:ACABulkRequestTransmitter version="1.0">
<urn1:BulkExchangeFile>
<inc:Include href="cid:1094C_Request_[TCC]_20181226T161942345Z.xml"
xmlns:inc="http://www.w3.org/2004/08/xop/include" />
</urn1:BulkExchangeFile>
</urn4:ACABulkRequestTransmitter>
</soapenv:Body>
</soapenv:Envelope>
----023e657d-66f5-4e92-8e6e-c223338c205a
Content-Type: application/xml
Content-Transfer-Encoding: 7bit
Content-Id: <1094C_Request_[TCC]_20181226T161942345Z.xml>
Content-Disposition: attachment; filename="1094C_Request_[TCC]_20181226T161942345Z.xml"
<?xml version="1.0" encoding="utf-8"?>
<n1:Form109495CTransmittalUpstream xmlns="urn:us:gov:treasury:irs:ext:aca:air:ty18"
xmlns:irs="urn:us:gov:treasury:irs:common"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p3="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xsi:schemaLocation="urn:us:gov:treasury:irs:msg:form1094-1095Ctransmitterupstreammessage IRS-Form1094-1095CTransmitterUpstreamMessage.xsd"
xmlns:n1="urn:us:gov:treasury:irs:msg:form1094-1095Ctransmitterupstreammessage">
[Removed for Space]
</n1:Form109495CTransmittalUpstream>
----023e657d-66f5-4e92-8e6e-c223338c205a--
更新:我添加了安全标头并通过了这个特定的问题,现在正在解决 WS-Security 错误。我还用更改的内容更新了我的信封。