1 Reply Latest reply on Dec 18, 2014 9:45 AM by Debbie Curtis-Magley

    cXML

    Tim Wappat Newbie

      We are a supplier and I want to fetch new purchase orders from Ariba by polling.

       

      The documentation in the Ariba help for "cXML PEnding Queue" (https://uex.ariba.com/node/413) says

      "You can configure your Ariba Network accounts to retrieve cXML documents through the pending queue using the cXML Pending Queue routing method."

      ..."use the GetPending/Data Download transaction method."

      ..."You can use this routing method to retrieve the following transactions:

           New Purchase Orders

           Changed/Canceled Purchase Orders

           Blanket Purchase Orders

           Status Update Requests"


      I noticed cXML Pending Queue as an option for the routing in Network Settings>cXML Setup Routings for new orders, so set it.

       

      cxml pending.JPG

      If I go to our test catalogue on our account, and test it, generating a test purchase order, with our routing to cXML Pending Queue, I can see the PO appear in the queue through the web GUI at

      InBox>>Pending Queue (from extended menu)

      In there when the Document Type filter is set to "Purchase Order" it s possible to see the PO. I now want to use the API to get hold of that PO to process it.

       

      Page 249 of the CXML Solouttions Guide describes the "Get Pending/Data DownloadTransaction", which seems like the way we would obtain these orders.

      I can't get those test orders to be returned to me issuing one of those requests.

       

      I am using our test Ariba account and po generated by the catalog tester, so they are from the catalog test "customer".

       

      I have lifted the example from the solutions guide. I wonder if the solutions guide is missing a message type for this?

      I would expect to pass something like PurchaseOrderRequest in the <MessageType>PurchaseOrderRequest</MessageType> node???

      There are the following listed, but not mention of purchase orders.

      • StatusUpdateRequest

      • ConfirmationRequest

      • ShipNoticeRequest

      • ServiceEntryRequest

      • InvoiceDetailRequest

      • SupplierChangeMessage

      • SalesOrderRequest

      • CopyRequest.PaymentProposalRequest

      • CopyRequest.PaymentRemittanceRequest

      • CopyRequest.PaymentRemittanceStatusUpdateRequest

      • SubscriptionChangeMessage

      • OrganizationChangeMessage

       

       

      A pointer in the right direction please...

      Following is what I am posting, just getting 200 OK back, no list of pending purchase orders...

      Obviously I am changing the credentials for our own in "from" and "sender", supplying our secret. I am using Ariba generic network ID, untouched as shown in the XML below.

       

      <?xml version="1.0" encoding="UTF-8"?>

      <!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.014/cXML.dtd">

      <cXML payloadID="1105574416.19583@hydra.buyer.com" timestamp="2005-01-13T00:00:16+00:00">

      <Header>

      <From>

      <Credential domain="NetworkID">

      <Identity>AN13000000259</Identity>

      </Credential>

      </From>

      <To>

      <Credential domain="NetworkID">

      <Identity>AN01000000001</Identity>

      </Credential>

      </To>

      <Sender>

      <Credential domain="NetworkID">

      <Identity>AN13000000259</Identity>

      <SharedSecret>abracadabra</SharedSecret>

      </Credential>

      <UserAgent>Our Procurement System 3.0</UserAgent>

      </Sender>

      </Header>

      <Request>

      <GetPendingRequest lastReceivedTimestamp="2005-01-12T00:00:25+00:00" maxMessages="20">

      <MessageType>StatusUpdateRequest</MessageType>

      </GetPendingRequest>

      </Request>

      </cXML>