PunchOut cXML - Getting Started

This guide helps you set up and validate a cXML PunchOut integration between DJUST and your eProcurement system, from pre-flight checks to first end-to-end tests.

At a glance

  • DJUST exposes a cXML setup endpoint keyed by your tenantConfigurationKey.
  • Your eProcurement sends a PunchOutSetupRequest, DJUST opens a session, and returns a cart via PunchOutOrderMessage posted to your Hook URL.
  • Agree on schema version, Extrinsic names, auth format, and error fallbacks before you start.

➡️ Steps

  1. Sent these pre-requisites informations to your DJUST consultant

    📋 What the eProcurement provides

    RequirementFieldsDetails / Examples
    DJUST endpoint addressThe cXML URL (from DJUST) for sending PunchOutSetupRequest.
    Authentication parametersIdentitySharedSecretemailWhere user will be sent (Header, Contact, or Extrinsic).
    Hook / BrowserFormPost URLReturn URL that receives the PunchOutOrderMessage.
    PunchOut request structureFields you will send (e.g., BuyerCookie, ShipTo, Contact) and the Extrinsic you expect to send/receive.
    Example PunchOutSetupRequestReal XML samples from your environment for validation of structure and fields.
    Security constraintsIPs or domains to allowlist; TLS requirements and minimum versions.
    Supported scenariosUse of FUNCTION=VALIDATE or FUNCTION=DETAIL; flows like copy existing cart or open product detail.
    User profile payloadWhich fields will be transmitted (name, email, role) and where they appear.
  2. Djust will parameter the punch-out and sent you the following informations to help you finalize set up in your system

    1. tenantConfigurationKey
    2. Setup endpoint URL
  3. In parallel with step 1 you can start adapting your front-end to make it compatible with a punch-out access (please refer to following sections to help you implement the punch out on your front-end)


🎯 What DJUST provides

RequirementDetails / Examples
Tenant Configuration KeySecure key identifying the tenant in setup calls.
Used in: POST /punchout/cxml/setup/{tenantConfigurationKey}.
Setup endpoint URLPublic cXML endpoint that receives PunchOutSetupRequest.
Return URL policySupport for form POST back to the eProcurement (Hook URL).
Documentation of expected PunchOutOrderMessage structure on return.
Accepted cXML schema

Version cXML 1.2.0xx.


required elements for authentication :
Identity: your integration identifier
SharedSecret: your shared secret
Email: the user’s email

standard fields :
Contact/Email: preferred place to pass the user’s email (or supply via Extrinsic if agreed)
BrowserFormPost/URL: the Hook URL where PunchOutOrderMessage will be posted
Optional Extrinsic values (e.g., UserEmail, CostCenter, BusinessUnit) as agreed with DJUST

Error policy and fallbacksHTTP codes to use in auto-submit pages (e.g. 401, 403, 500).
Cart return structureSample PunchOutOrderMessage with ItemIn, ItemDetail, Extrinsic, classifications.



Did this page help you?