Parameters

The parameters for CSNBCSV.

For the definitions of the return_code, reason_code, exit_data_length, and exit_data parameters, see Parameters common to all verbs.

rule_array_count
Direction: Input
Type: Integer
A pointer to an integer variable containing the number of elements in the rule_array variable. This value must be 0, 1, or 2.
rule_array
Direction: Input
Type: String array
Keywords that provide control information to the verb. Each keyword is left-aligned in 8-byte fields and padded on the right with blanks. All keywords must be in contiguous storage. The rule_array keywords are described in Table 1.
Table 1. Keywords for CVV Verify control information

Keywords for CVV Verify control information

Keyword Description
PAN data length (One, optional)
PAN-13 Specifies that the length of the PAN data is 13 bytes. PAN-13 is the default value.
PAN-14 Specifies that the length of the PAN data is 14 bytes.
PAN-15 Specifies that the length of the PAN data is 15 bytes.
PAN-16 Specifies that the length of the PAN data is 16 bytes.
PAN-17 Specifies that the length of the PAN data is 17 bytes.
PAN-18 Specifies that the length of the PAN data is 18 bytes.
PAN-19 Specifies that the length of the PAN data is 19 bytes.
CVV length (One, optional)
CVV-1 Specifies that the CVV is to be computed as one byte, followed by four blanks. CVV-1 is the default value.
CVV-2 Specifies that the CVV is to be computed as two bytes, followed by three blanks.
CVV-3 Specifies that the CVV is to be computed as three bytes, followed by two blanks.
CVV-4 Specifies that the CVV is to be computed as four bytes, followed by one blank.
CVV-5 Specifies that the CVV is to be computed as five bytes.
PAN_data
Direction: Input
Type: String
The PAN_data parameter specifies an address that points to the place in application data storage that contains personal account number (PAN) information in character form. The PAN is the account number as defined for the track-2 magnetic-stripe standards. If the PAN-nn keyword is specified in the rule_array, where nn is a value between 13 and 19, then nn number of characters are processed.

If you specify the PAN-nn keyword in the rule_array where nn is less than 16, the server might copy 16 bytes to a work area. Therefore, ensure that the verb can address 16 bytes of storage.

expiration_date
Direction: Input
Type: String
The expiration_date parameter specifies an address that points to the place in application data storage that contains the card expiration date in numeric character form in a 4-byte field. The application programmer must determine whether the CVV is calculated with the date form of YYMM or MMYY.
service_code
Direction: Input
Type: String
The service_code parameter specifies an address that points to the place in application data storage that contains the service code in numeric character form in a 3-byte field. The service code is the number that the track-2 magnetic-stripe standards define. The service code of X'000' is supported.
CVV_key_A_identifier
Direction: Input/Output
Type: String

A pointer to a string that contains an operational single or double-length CCA or TR-31 DES key token, or the label of such a token in key storage. A single-length key contains the key-A key that encrypts information in the CVV process. The left half of a double-length key contains the key-A key that encrypts information in the CVV process and the right half contains the key-B key that decrypts information.

For a CCA token, it is the internal key token containing a single or double-length DATA or MAC key, or the label of a key storage record containing a single or double-length DATA or MAC key. When a double-length MAC key is used, the CV bits 0 - 3 must indicate a CVVKEY-A key (B'0010').

For a TR-31 token, it must have the following attributes:

  • TR-31 key usage: C0
  • Algorithm: D or T
  • TR-31 mode of key use: C or V

When this key is a double-length key, CVV_key_B_identifier must be 64 byte of binary zero.

CVV_key_B_identifier
Direction: Input/Output
Type: String
A pointer to a string that contains an operational single-length CCA or TR-31 DES key token, or the label of such a token in key storage. The internal key token contains the key-B key that decrypts information in the CVV process.

For a CCA token, it is a single-length DATA or MAC key that decrypts information in the CCV process.

For a TR-31 token, it must have the following attributes:

  • TR-31 key usage: C0
  • Algorithm: D
  • TR-31 mode of key use: C or V

When CVV_key_A_identifier is a double-length key, this parameter must be 64 byte of binary zero.

CVV_value
Direction: Input
Type: String
The CVV_value parameter specifies an address that contains the CVV value which will be compared to the computed CVV value. This is a 5-byte field.