EMV DCC Check - emvdcccheck

The EMVDCCCHECK transaction type lets EMV cards use Dynamic Currency Conversion. At a high level, EMVDCCCHECK passes amount and card data to determine whether a transaction can take advantage of DCC. If the transaction is eligible, Converge will return a token to initiate the transaction.

To process dynamic currency conversion on an EMV transaction, you must first process an API request for <ssl_transaction_type>EMVDCCCHECK</ssl_transaction_type>. If the card being processed as part of the EMVDCCCHECK transaction is eligible for dynamic currency conversion, Converge will return a ssl_dcc_token and DCC values. Include the ssl_dcc_token with an authorization request - Do not include the DCC values with this request.

error_outline
note

An ssl_dcc_token expires after 15 minutes. If a DCC transaction is not completed during that time, you must send a new EMVDCCCHECK transaction request.

Data Requirements

You will need to define either ssl_tlv_enc or ssl_enc_track_data. ssl_tlv_enc requires that tags 9F02 (authorization amount), C0 (KSN), D0 (encrypted track2 equivalent) are correctly populated. ssl_enc_track_data must include ssl_ksn, ssl_amount, and ssl_enc_track_data_format (if appropriate).

Request

ssl_merchant_id
15 | numeric | required
Merchant ID
Elavon-assigned Converge account ID.
ssl_user_id
15 | alphanumeric | required
Converge User ID
The user ID with Hosted Payment API User status that can send transaction requests through the terminal.
ssl_pin
64 | alphanumeric | required
Terminal ID
Unique identifier of the terminal that will process the transaction request and submit to the Converge gateway.
Important: The ssl_user_id sending the transaction request must be associated with the terminal that will process the request.
ssl_transaction_type
20 | alphanumeric | required
Transaction Type
Value: emvdcccheck
ssl_txn_id
46 | alphanumeric | required
Transaction ID
Unique identifier of the approved EMV Chip Sale (emvchipsale) transaction for currency conversion or the approved EMV Chip Auth Only (emvchipauthonly) transaction to be completed.
ssl_tlv_enc
4 | hex | required
Encrypted Tag Length Value
Data defining the EMV record. The data includes the following:
  • Total Authorization Amount
  • Tip Amount (if available)
ssl_amount
11 | numeric | required
Transaction Amount
The Sale amount that includes the Net and Sales Tax amounts.
Format: Number with 2 decimals places
ssl_enc_track_data
160 | alphanumeric | conditional
Encrypted Raw Track I and/or II Data
Encrypted Track I and/or II data captured from the card's magnetic stripe when using an Ingenico encrypting device. The data includes beginning and ending sentinels, card's expiry date, cardholder's first name, and the cardholder's last name.
ssl_ksn
20 | alphanumeric | conditional
Key Serial Number
Unique identifier generated from the swiped payment card and returned by the encrypting device. The KSN encrypts the PAN data through the DUKPT method.
Important: Required when sending track data from an encrypting device.
ssl_card_type
10 | alphanumeric | optional
Card Type
Payment method to use for the transaction.
Valid values: CREDITCARDDEBITCARD

Response

ssl_result
 
Transaction Outcome
An ssl_result = 0 indicates an approved transaction.
An ssl_result not equal to 0 indicates a declined and unauthorized transaction.
ssl_result_message
 
Transaction Result Message
Refer to the EMV Card Response Codes section for an extensive list of possible returned messages.
ssl_txn_id
 
Transaction ID
Unique identifier of the transaction.
ssl_txn_time
 
Processing Date and Time
Indicates when Converge processed the transaction.
Format: MM/DD/YYYY hh:mm:ss AM/PM
Example: 03/18/2010 10:34:10 AM
ssl_markup
 
Markup
The markup applied to the Reference Exchange Rate when calculating the ssl_conversion_rate value to use for converting the merchant's Pricing Currency to ssl_txn_currency_code.
ssl_conversion_rate
 
Conversion Rate
Exchange rate applied to the conversion of ssl_amount.
ssl_cardholder_amount
 
Cardholder Amount
Total amount in the cardholder's billing currency.
ssl_cardholder_currency
 
Cardholder Currency
 
ssl_merchant_currency
 
Merchant Currency
 
ssl_dcc_token
 
DCC Token
Enables EMV transactions for DCC.

Errors

4017
Time-Out
The request has timed out. The allotted time to complete the request has ended. Please try again.
5002
Amount Invalid
The amount supplied in the authorization request appears to be invalid.
5000
Credit Card Number Invalid
The Credit Card Number supplied in the authorization request appears to be invalid.

Examples

error_outline
important
  • In these examples, you will have to change the data values, such as my_merchant_id, my_user_id, my_pin, and transaction data to match your Converge account and meet the needs of your website.
  • Code samples provided are for demonstration only and should not be used for live transactions. All sensitive merchant data, including transaction amounts and your Converge credentials, should be placed in server side code.

TLV Request

<txn>
    <ssl_merchant_id>my_merchant_id</ssl_merchant_id>
    <ssl_user_id>my_user_id</ssl_user_id>
    <ssl_pin>my_pin</ssl_pin>
    <ssl_transaction_type>emvdcccheck</ssl_transaction_type>
    <ssl_tlv_enc>
        5F3002020157114761730000000010D151220100000000009F2608A0B1AB453C86165D9F27
        01805A0847617300000000105F2A0208405F2D0265659F4005F000F0A0019A031508159B02
        E8009F21030122399C01004004061820159F41040000023082025C009F1E08534330313030
        3438C00AFFFF44556600076000468407A00000000310105F340101950502000080005F200C
        5445535420434152442030319F1A0208409F1401039F02060000000017009F3901059F3602
        02899F370478813F359F0607A00000000310109F3501229F34031E03009F3303E0F8C89F03
        060000000000009F0902008C9F120B56697361204372656469744F07A00000000310109F11
        01019F100706010A03A000009F0702FF005F24031512319F530152D02845AF345545C28415
        29B3E3673B7538E0EE4ACAA24DA3E4158BAC0763A4EF024BFABF04822E063B865F28020124
        500B5649534120435245444954
    </ssl_tlv_enc>
</txn>

Encrypted Swipe Request

<txn>
    <ssl_merchant_id>my_merchant_id</ssl_merchant_id>
    <ssl_user_id>my_user_id</ssl_user_id>
    <ssl_pin>my_pin</ssl_pin>
    <ssl_transaction_type>emvdcccheck</ssl_transaction_type>
    <ssl_amount>7</ssl_amount>
    <ssl_ksn>x</ssl_ksn>
    <ssl_enc_track_data>x</ssl_enc_track_data>
</txn>

DCC Eligible Response

<txn>
    <ssl_result>0</ssl_result>
    <ssl_result_message>APPROVAL</ssl_result_message>
    <ssl_txn_time>12/13/2018 10:48:10 AM</ssl_txn_time>
    <ssl_conversion_rate>81346</ssl_conversion_rate>
    <ssl_dcc_exponent>5</ssl_dcc_exponent>
    <ssl_amount>11.5</ssl_amount>
    <ssl_cardholder_amount>9.35</ssl_cardholder_amount>
    <ssl_cardholder_currency>GBP</ssl_cardholder_currency>
    <ssl_merchant_currency>USD</ssl_merchant_currency>
    <ssl_markup>3.75</ssl_markup>
    <ssl_dcc_rate_provider>US Bank</ssl_dcc_rate_provider>
    <ssl_dcc_token>0e33871de37b660101648411d75e1c93f211d5d1</ssl_dcc_token>
</txn>

Not DCC Eligible Response (ssl_dcc_token not returned)

<txn>
    <ssl_result>1</ssl_result>
    <ssl_result_message/>
    <ssl_txn_time>12/13/2018 10:33:23 AM</ssl_txn_time>
    <ssl_conversion_rate/>
    <ssl_dcc_exponent/>
    <ssl_amount>11.5</ssl_amount>
    <ssl_cardholder_amount/>
    <ssl_cardholder_currency/>
    <ssl_merchant_currency/>
    <ssl_markup/>
    <ssl_dcc_rate_provider/>
</txn>

EMVCHIPSALE Request With DCC Token

<txn>
    <ssl_merchant_id>my_merchant_id</ssl_merchant_id>
    <ssl_user_id>my_user_id</ssl_user_id>
    <ssl_pin>my_pin</ssl_pin>
    <ssl_transaction_type>emvchipsale</ssl_transaction_type>
    <ssl_tlv_enc>
        5F3002020157114761730000000010D151220100000000009F2608A0B1AB453C86165D9F27
        01805A0847617300000000105F2A0208405F2D0265659F4005F000F0A0019A031508159B02
        E8009F21030122399C01004004061820159F41040000023082025C009F1E08534330313030
        3438C00AFFFF44556600076000468407A00000000310105F340101950502000080005F200C
        5445535420434152442030319F1A0208409F1401039F02060000000017009F3901059F3602
        02899F370478813F359F0607A00000000310109F3501229F34031E03009F3303E0F8C89F03
        060000000000009F0902008C9F120B56697361204372656469744F07A00000000310109F11
        01019F100706010A03A000009F0702FF005F24031512319F530152D02845AF345545C28415
        29B3E3673B7538E0EE4ACAA24DA3E4158BAC0763A4EF024BFABF04822E063B865F28020124
        500B5649534120435245444954
    </ssl_tlv_enc>
    <ssl_entry_mode>05</ssl_entry_mode>
    <ssl_pos_mode>05</ssl_pos_mode>
    <ssl_dcc_token>0e33871de37b660101648411d75e1c93f211d5d1</ssl_dcc_token>
</txn>

EMVSWIPESALE Request with DCC Token

<txn>
    <ssl_merchant_id>my_merchant_id</ssl_merchant_id>
    <ssl_user_id>my_user_id</ssl_user_id>
    <ssl_pin>my_pin</ssl_pin>
    <ssl_transaction_type>emvswipesale</ssl_transaction_type>
    <ssl_amount>7</ssl_amount>
    <ssl_ksn>x</ssl_ksn>
    <ssl_enc_track_data>x</ssl_enc_track_data>
    <ssl_entry_mode>05</ssl_entry_mode>
    <ssl_pos_mode>08</ssl_pos_mode>
    <ssl_dcc_token>0e33871de37b660101648411d75e1c93f211d5d1</ssl_dcc_token>
</txn>

Auth Response with DCC

An EMV Chip Sale request can have DCC applied by adding the following fields to the end of the request.

    <ssl_cardholder_amount>9.35</ssl_cardholder_amount>
    <ssl_cardholder_currency>GBP</ssl_cardholder_currency>
    <ssl_conversion_rate>0.81346</ssl_conversion_rate>
    <ssl_dcc_rate_provider>US Bank</ssl_dcc_rate_provider>
    <ssl_markup>3.75</ssl_markup>