2

我有一个关于 ariba punchoutSetupRequest 的问题。我的 API 响应如下:

<?xml version="1.0" encoding="UTF-8"?>
<cXML payloadID="1454654070603.1234567890@ctoms1234" timeStamp="2016-02-05T15:34:30-15:00">
    <Response>
        <Status code="400" text="Failed"/>
        <PunchOutSetupResponse>
            <StartPage>
                <URL>http://ARIBA-TEST.ty.chugai-pharm.co.jp/Buyer/punchout?client=HTML.8gnyW0CvGJ1R!-34269844!1454653851331&amp;responseid=5&amp;locale=ja_JP</URL>
            </StartPage>
        </PunchOutSetupResponse>
    </Response>
</cXML>

但是,Ariba 调用我的 api 并像这样对我做出响应。

 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.034/cXML.dtd">
<cXML payloadID="1501225074983-2497119422372518906@216.109.111.6" timestamp="2017-07-27T23:57:54-07:00">
        <Response>
                <Status code="500" text="Internal Server Error">Error:Punchout error from supplier:Response: <!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.014/cXML.dtd"><cXML payloadID="958074700772@www.workchairs.com" timestamp="2005-06-14T12:59:09-07:00"><Response><Status code="400" text="Bad request"/><PunchOutSetupResponse><StartPage><URL>https://punchout.workchairs.com/Servlet/sessionid=7006</URL></StartPage></PunchOutSetupResponse></Response></cXML>  Please contact support with the Error Reference Number: ANERR-10000000000000000381125876 for more details</Status>
        </Response>
</cXML>

任何人都可以帮我解决它。不确定我对 setupRequest API 的响应

4

2 回答 2

0

所以为了清楚起见,您正在设置交易的供应商方面?

你为什么用400代码回复,400 将意味着有错误并且 PunchOutSetupRequest 事务不正确,如果请求无效,您不太可能想要发送 StartPage(您的打卡目录的条目),您的 API 应该服务

<?xml version="1.0" encoding="UTF-8"?>
<cXML payloadID="1454654070603.1234567890@ctoms1234" timeStamp="2016-02-05T15:34:30-15:00">
    <Response>
        <Status code="200" text="success"/>
        <PunchOutSetupResponse>
            <StartPage>
                <URL>http://ARIBA-TEST.ty.chugai-pharm.co.jp/Buyer/punchout?client=HTML.8gnyW0CvGJ1R!-34269844!1454653851331&amp;responseid=5&amp;locale=ja_JP</URL>
            </StartPage>
        </PunchOutSetupResponse>
    </Response>
</cXML>
于 2017-07-28T11:27:34.373 回答
0

在 Ariba cXML 中,400 代码具有特定的含义,例如,如果有人向已处理的请求发送了副本。例如,提交带有 operation = "new" 的发票,然后尝试为相同的发票编号开具 creditmemo,但 header 中没有 operation = "update" 值。其他典型的 400 代码原因是缺少有效负载 id、缺少时间戳、缺少“特定事务所需的代码”等。

于 2018-02-26T18:33:01.427 回答