cXML PunchOut

cXML PunchOut (Ariba-derived, cXML 1.2.014) is used by Coupa, SAP Ariba, Oracle Procurement Cloud and Visma Proceedo. New buyers use the generic endpoint and authenticate via their credential.

Setup endpoint

POST https://api.glede.app/cxml/punchout (production)
POST https://sandbox.api.glede.app/cxml/punchout (sandbox)
Content-Type: text/xml

Setup request

A PunchOutSetupRequest envelope. Glede reads:

  • Header > From > Credential[@domain] > Identity — your buyer identity (provided by Glede)
  • Header > Sender > Credential > SharedSecret — your shared secret (provided by Glede)
  • Request > PunchOutSetupRequest > BrowserFormPost > URL — your HOOK_URL (host must be allowlisted)
  • BuyerCookie — echoed back on cart-return

Setup response

HTTP 200 with a PunchOutSetupResponse; redirect the browser to StartPage > URL:

Errors are returned as HTTP 200 with a non-200 <Status> (e.g. 401 Invalid credentials).

Cart return

On checkout Glede POSTs a PunchOutOrderMessage to your HOOK_URL (credentials reversed — Glede is now From). Each line:

  • ItemID > SupplierPartID = GLEDE-GIFTCARD
  • ItemID > SupplierPartAuxiliaryID = <sessionId>:<lineId> (reconciliation key)
  • ItemDetail > UnitPrice > Money[@currency] = face value + service fee, net of VAT
  • Classification[@domain="UNSPSC"] = 14111530
  • ManufacturerName = Glede AS
  • Extrinsic fields: lineId, recipientEmail, recipientName, scheduledSendingTime

Approved PO: the buyer's approved purchase order is sent back as a cXML OrderRequest to the same /cxml/... endpoint; Glede parses the SupplierPartAuxiliaryID to reconcile it to the session and issue the gift cards.

Limits: up to 500 line items per cart; session valid for 4 hours.