C++ Payment System Upgrade

This section describes how to transition your SCMP payment system to send and receive HTTPS Simple Order API transmissions using the C++ programming language. Upgrading your payment system to Simple Order requires you to download an API key from the
Business Center
.

Enable SCMP-to-Simple Order Conversion

The conversion kit method enables users with an SCMP payment system to maintain their SCMP system while using the Simple Order endpoint. When you send an SCMP request to
Cybersource
, the request is converted into a Simple Order request and then sent to the corresponding Simple Order endpoint. When
Cybersource
returns a Simple Order response, the response is converted into SCMP for your system to process it. This image demonstrates the conversion process:

Figure:

SCMP-to-Simple Order Conversion

Setting Up SCMP-to-Simple Order Conversion

Follow these steps to set up SCMP-to-Simple Order conversion.
  1. Add the SCMP conversion kit to your payment system. Retrieve the conversion kit files from the
    SCMPToNVPTest
    folder in GitHub:
  2. Add the
    cybs.ini
    file to your application. Retrieve the
    cybs.ini
    file from the
    resources
    folder in GitHub:
  3. Update these parameter values in your
    cybs.ini
    file:
    • merchantID
      : Set to your production merchant ID used for commerce.
    • keysDirectory
      : Set to the file path that leads to your P12 certificate.
    • serverURL
      : Set to the
      Cybersource
      Simple Order endpoint.
    • keyFilename
      : Set to the file name of your .p12 file.
    • password
      : Set to your P12 certificate password.
    • sslCertFile
      : Set to the file path and name of your .p12 file.
    merchantID=your-merchant-id keysDirectory=c:/keys serverURL=https://ics2wstest.ic3.com/commerce/1.x/transactionProcessor/ keyFilename=your-merchant-id.p12 password=test-password sslCertFile=c:/keys/ics2wstest.ic3.crt
    You can set other files at your discretion. See the comments in the
    README.md
    file to determine which values to change:
  4. After your SCMP payment software creates a request, replace your existing request to SCMP with a request to the
    processRequest
    method from the class in the
    ics_util.cpp
    file. Then, pass your SCMP request as a parameter in the
    processRequest
    method.
    ics_msg* scmpResponse = processRequest(scmpRequest);  // <-- User inputs their SCMP request here
    If you do not have the
    ics_util.cpp
    file, you can retrieve it from the
    SCMPToNVPTest
    folder in GitHub:

Result

When you send an API request to
Cybersource
, the
processRequest
method converts your SCMP request into a Simple Order request. It then sends the converted request to the correct Simple Order endpoint. When you receive a Simple Order response from
Cybersource
, the response is converted into SCMP for your payment system to process.