Skip to main content

Configure OCI punchout

This howto describes how to connect your SAP OCI compliant eprocurement solution to Storefront.

Prerequisites

  • An OCI-compliant eprocurement solution
  • Basic knowledge of punchout in general and OCI in particular

Step 1: Gather information

  • Go to Administration->Tenants and pick the tenant you want to connect via OCI
  • Scroll to "Punchout"
  • Copy the "OCI Punchout URL" and write it down as OCI_PUNCHOUT_URL. It looks like https://<customer>.meplato.live/oci.

Step 2: Create a new client for OCI punchout

  • Go to Administration->Clients and click "New client"
  • Enter a description of the purpose of the new client, e.g. "OCI Punchout to SAP SRM (Production)". It will help you remember which client is being used for what.
  • Enter the redirect URL. It is being used as an additional security layer so that malicious users cannot use the client even if they somehow retrieved the client credentials.
  • DO NOT attach the client to a specific user.
  • Click "Create"
  • Select the newly created client.
  • Write down the "OAuth Client ID" as OAUTH_CLIENT_ID.

Step 3: Configure your OCI-compliant eprocurement system

The OCI punchout must go to the following URL (replace the placeholders with the values written down above):

  • HTTP Method must be POST
  • Punchout URL is <OCI_PUNCHOUT_URL>, e.g. https://demo.storefront.live/oci
  • The Content-Type header must be application/x-www-form-urlencoded
  • The body must be HTTP POST Form URL encoded.
  • Required parameters are:
    • client_id which is <OAUTH_CLIENT_ID> from above
    • email must be dynamically filled with the email address of the user initiating the punchout.
    • HOOK_URL must be the URL at which the contents of the shopping cart will be sent back as the punchout completes.

Example:

POST /oci HTTP/1.1
Host: demo.storefront.live
Content-Type: application/x-www-form-urlencoded

client_id=QkU3OUU4NTEtNjBFNS00QTdCLUEyQ0ItRjI3REFFNENEMTJFCg==&email=joe@example.com&HOOK_URL=https://example.com/callback