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.
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.
In this section:
For the entire list of API endpoints, refer to API Endpoints.
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 (AID). | Required | 6 or 7 | 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. 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:
| Required | 4 | hex |
ssl_amount | Transaction Amount The Sale amount that includes the Net and Sales Tax amounts. Format: Number with 2 decimal 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. 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
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
xmldata=
<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
xmldata=
<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
xmldata=
<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
xmldata=
<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>