CTI_QueryTransaction()

This subprocedure is used to query a transaction using the CyberSource REST Transaction Query API. This subprocedure requires a record for your merchant ID in CTICFGRPT, and you must populate the record with a shared and secret key pair for use with CyberSource’s HTTP Signature Authentication. For more information on generating these keys, please see this guide from CyberSource: Create a Shared Secret Key for HTTP Signature Authentication

The ADDRPTKEY command can be used to easily create a record for your merchant ID and generated security keys in CTICFGRPT.

The query response will be downloaded to an IFS file in the download directory specified in your CTICFGMCH record. This file can be parsed with the CTI_ParseTransactionQuery() subprocedure.

If an error occurs, this subprocedure will return *OFF, and information about the error will be present in the pErrorDS parameter which contains a CTI_ErrorDS_t data structure.

Subprocedure Prototype

D CTI_QueryTransaction...
D                 PR              N   Extproc('CTI_QueryTransaction')

Returns *OFF if an error occurs during processing, *ON otherwise.

D  pUniqueId                          Const Like(CTI_UniqueId_t)

Unique ID generated with CTI_NextUniqueID()

Required

D  pQueryTransactionDS...
D                                     LikeDS(CTI_QueryTransactionDS_t)

A data structure containing configuration information for the query to be performed

Required

D  pErrorDS                           LikeDS(CTI_ErrorDS_t)

Error data structure used to capture subprocedure and CyberSource errors

Required

Data Structures

D CTI_QueryTransactionDS_t...
D                 DS                  Qualified Template Inz
 
D  MerchantId                         Like(CTI_MerchantId_t)

Merchant ID used to process the transaction

Required

D  Environment                   5A

CyberSource environment where the report will be retrieved from

Required

Valid Values:

  • CTI_ENV_PROD
  • CTI_ENV_TEST

D  KeyLabel                     50A   Varying

Unique label to identify the security key in CTICFGRPT to be used

Default Value: CTI_DEFAULT

D  TransactionId                50A   Varying

CyberSource unique identifier for the transaction to be queried

D  Filepath                           Like(CTI_FilePath_t)

Name of the file where the report will be downloaded. This file will be saved in the default download directory set for the specified merchant ID in CTICFGMCH

D CTI_ErrorDS_t   DS                  Qualified Template Inz
 
D  Subproc                     132A   Varying

Name of subprocedure returning error

D  MessageId                     7A

Message ID of error message

D  Message                    1024A   Varying

Error message text

D  Source                       10A

Error message source

D  LogFile                            Like(CTI_FilePath_t)

IFS filepath of generated log file

Input Table Files

Field Name Long Field Name Data Type Field Title Comments
MERCHANTID
MERCHANTID
VARCHAR(30)
Merchant ID
ENV
ENVIRONMENT
VARCHAR(5)
CyberSource Environment
KEYLABEL
KEYLABEL
VARCHAR(50)
Key Label
SHAREDKEY
SHAREDKEY
VARCHAR(36)
Shared Key
SECRETKEY
SECRETKEY
VARCHAR(50)
Secret Key