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

Field name Description Required Length Data type
ssl_merchant_id Merchant ID
Elavon-assigned Converge account ID.
Required 15 numeric
ssl_user_id Converge User ID
The user ID with Hosted Payment API User status that can send transaction requests through the terminal.
Required 15 alphanumeric
ssl_pin Terminal ID
Unique identifier of the terminal that will process the transaction request and submit to the Converge gateway.
error_outline

important

The ssl_user_id sending the transaction request must be associated with the terminal that will process the request.

Required 64 alphanumeric
ssl_transaction_type Transaction Type
Valid value: emvdcccheck
Required 20 alphanumeric
ssl_txn_id Transaction ID
Unique identifier of the approved EMV Chip Sale (emvchipsale) transaction to be refunded or the approved EMV Chip Auth Only (emvchipauthonly) transaction to be completed.
Required 46 alphanumeric
ssl_tlv_enc Encrypted Tag Length Value
Data defining the EMV record. The data includes the following:
Total Authorization Amount
Tip Amount (if available)
Required 4 hex
ssl_amount Transaction Amount
The Sale amount that includes the Net and Sales Tax amounts.
Format: Number with 2 decimals places
Required 11 numeric
ssl_enc_track_data 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 and last name.
Conditional 160 alphanumeric
ssl_ksn 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.
error_outline

info

Required when sending track data from an encrypting device.

Conditional 20 alphanumeric
ssl_card_type Card Type
Payment method to use for the transaction.
Valid values: CREDITCARD, DEBITCARD
Optional 10 alphanumeric

Response

Field name Description
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

Code Description
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>