Sale - ccsale

This section describes the message parameters for Credit Card Sale transaction processing, which you can submit using the Hosted Payments, Checkout.js, and XML API integration methods. Refer to the Integration Methods section for more information.

The ccsale transaction obtains real-time authorization for a Credit Card Sale transaction and enters the transaction into the Unsettled batch.

In this section:

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: ccsale
Required 20 alphanumeric
ssl_amount Transaction Amount
The sale amount that includes the net and sales tax amounts.
For Tip Processing, the Sale amount must not include the Tip amount.
For terminals that are set up with the Multi Currency credit payment option, make sure that the number of decimal places are correct as some currencies have 0 (like JPY) or 3 (like BHD) decimal places.
Format: Number with 2 decimal places.
Required 11 numeric
[Card data] Use the appropriate card data parameters for the transaction.
ssl_card_number Card number
Card number as it appears on the credit card.
error_outline

important

Required for hand-keyed transactions.

Conditional 18 numeric
ssl_exp_date Card's Expiry Date
Date when the card becomes invalid.
Format: MMYY
error_outline

important

  • Required if ssl_card_number is not null.
    * Do not send the expiry date when the token is stored in Card Manager.
Conditional 4 numeric
ssl_card_present Card Present Indicator
Indicates whether the card is physically present during the transaction.
Recommended for hand-keyed transactions.
Valid values:
Y - Card present
N - Card not present
Optional 1 alphanumeric
ssl_track_data Raw Track I and/or II Data
Track data captured from the card's magnetic stripe. The data includes beginning and ending sentinels, card's expiry date, cardholder's first and last name.
error_outline

important

Required for swiped and contactless transactions.

Conditional 76 alphanumeric
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 name and last name.
Conditional 160 alphanumeric
ssl_enc_track_data_format Encrypted Raw Track I and/or II Data Format
Format of the track data captured from the card's magnetic stripe.
Valid value: ROAM_GENERIC_TDES_EMV
error_outline

important

Required if card is read from a ROAM device.

Conditional NA NA
ssl_encrypted_track1_data Encrypted Raw Track I Data
Encrypted Track I data captured from the card's magnetic stripe when using a MagTek encrypting device. The data includes beginning and ending sentinels, card's expiry date, cardholder's first name and last name.
error_outline

important

Required for swiped and contactless transactions.

Conditional 160 alphanumeric
ssl_encrypted_track2_data Encrypted Raw Track II Data
Encrypted Track II data captured from the card's magnetic stripe when using a MagTek encrypting device.
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

important

Required if using ssl_enc_track_data, ssl_encrypted_track1_data or ssl_encrypted_track2_data.

Conditional 20 alphanumeric
ssl_vm_mobile_source Mobile Source
Valid values:
BBERRY - BlackBerry mobile device
ADROID - Android mobile device
ITUNES - Apple mobile device
WIN8 - Windows WIN8-based Device
NOMOB - Non-mobile Device
error_outline

important

Required for encrypting devices.

Conditional NA alphanumeric
ssl_vendor_id Vendor ID
Unique vendor identifier assigned by Elavon.
error_outline

important

Required for encrypting devices.

Conditional 8 alphanumeric
ssl_mobile_id Mobile ID
Unique assigned mobile identification number of each mobile device in use as determined by the merchant.
error_outline

important

Optional for encrypting devices.

Conditional 50 alphanumeric
ssl_token Credit Card Token
Encrypted card data that can replace ssl_card_number.
error_outline

important

  • The token must already be stored in Card Manager.
    + Use only if the terminal is set up with the Tokenization terminal option.
    + Required if ssl_merchant_initiated_unscheduled = Y.
Conditional 20 alphanumeric
ssl_pos_mode POS Device Data Entry Capability
Indicates how the POS device captures card data.
Valid values:
01 - Manual entry only
02 - Magnetic swipe-capable
03 - Proximity or contactless-capable
04 - EMV chip-capable (ICC) - Contact only with magnetic stripe
05 - EMV chip-capable (ICC) - Dual interface with magnetic stripe
Optional 2 numeric
ssl_entry_mode Transaction Entry Indicator
Indicates how the track data was captured.
Valid values:
01 - Key entered - Card not present
02 - Key entered - Card present
03 - Swiped (default)
04 - Proximity/Contactless
Optional 2 numeric
[Doing Business As] Use only on terminals that are set up with the DBA Name terminal option.
ssl_dynamic_dba Doing Business As Name
Merchant-defined descriptors that replace the merchant's business name on credit card statements.
Format: Prefix*Descriptor
Length: Prefix = 3, 7, or 12, Asterisk = 1, Descriptor = 21 - (Prefix + Asterisk)
Example: MANYMAG*BAKERS MONTHLY
Optional 21 alphanumeric
[Tokenization] Use only on terminals that are set up with the Tokenization terminal option.
ssl_get_token Generate Token Indicator
Indicates whether to generate a token when submitting the card data.
Valid values:
Y - Authorize transaction and generate token
N - Do not generate token (Default)
If set to Y, the following parameters are mandatory:
Hand-keyed
- ssl_card_number
- ssl_exp_date
Swiped/Contactless
- ssl_track_data
Encrypted Swiped/Contactless
- ssl_enc_track_data (Ingenico)
- ssl_encrypted_track1_data (MagTek)
- ssl_encrypted_track2_data (MagTek)
Optional 1 alphanumeric
ssl_add_token Add to Card Manager Indicator
Indicates whether to generate and store the token in Card Manager.
Valid values:
Y - Authorize transaction, generate and store token
N - Do not store token (Default)
Optional 1 alphanumeric
[Tip Processing] Use only on terminals that are set up with the Market Segment set to Service.
ssl_tip_amount Tip or Gratuity Amount
Amount to add or update to the transaction amount.
Format: Number with 2 decimal places.
Required 11 numeric
ssl_server Server ID
Unique identifier of the clerk, waiter, waitress or cashier.
Optional 8 alphanumeric
ssl_shift Shift ID
Unique identifier of the time period, course or service type.
Optional 4 alphanumeric
[Card Verification] Use only on terminals that are set up with the CVV2, CVC2, CID credit card payment option.
ssl_cvv2cvc2 Card Verification Value / Card Validation Code
Card security code or number printed on the card and commonly used for card not present payment transactions.
Optional 4 numeric
ssl_cvv2cvc2_indicator Card Verification Value / Card Validation Code Indicator
Indicates the status of the card security code or number during the transaction.
Valid values:
0 - Bypassed
1 - Present
2 - Illegible
9 - Not Present
Optional 1 numeric
[Purchasing Cards] Use only on terminals that are set up with the Purchasing Card 2 credit card payment option.
ssl_customer_code Customer Code or Purchase Order Number
Customer ID or PO number specified in the billing statement of the cardholder.
Optional 17 alphanumeric
ssl_salestax Sales Tax
Tax amount to add to the purchase or sales amount.
For a tax exempt transaction, enter 0.00.
Format: Amount with 2 decimal places.
Optional 8 alphanumeric
ssl_salestax_indicator Sales Tax Indicator
Whether tax is included on a transaction. This field is required for Level 3 transactions.
Valid values:
Y - Sales Tax Included
N or Zero - Tax Exempted Sale (card acceptor has the ability to provide tax amount, but goods/services were not taxable)
Conditional - alphanumeric
[Invoice Number] Use only on terminals that are set up with the Invoice Number credit card payment option.
ssl_invoice_number Invoice/Ticket Number
Unique identifier of the invoice or ticket.
Optional 25 alphanumeric
[Multi-Currency Conversion] Use only on terminals that are set up with the Multi Currency credit card payment option. Refer to the Multi-Currency Conversion (MCC) section for more information on processing MCC transactions.
ssl_transaction_currency Transaction Currency
The currency ISO code that the merchant applies to their goods or services.
Default: USD or CAD
Optional 3 alphanumeric
[Recurring / Installment Payment] Use only on terminals that are set up with the Recurring credit card payment option.
ssl_recurring_flag Recurring Flag
Indicates whether the transaction is a recurring or an installment payment.
Valid values:
1 - Recurring
2 - Installment
Optional 1 numeric
ssl_payment_number Installment Sequence Number
Required if ssl_recurring_flag = 2.
Conditional numeric
ssl_payment_count Installment Count
Total number of payments.
Required if ssl_recurring_flag = 2.
Conditional numeric
[Travel Data] Use only on terminals that are set up with the Travel Data credit card payment option.
ssl_departure_Date Travel Departure Date
Date sent to the Merchant Airline Risk Monitoring System (MARMS) to monitor risks associated with advanced booking.
Format: MM/DD/YYYY
Optional 10 alphanumeric
ssl_completion_Date Travel Completion Date
Date sent to the Merchant Airline Risk Monitoring System (MARMS) to monitor risks associated with advanced booking.
Format: MM/DD/YYYY
Optional 10 alphanumeric
[Card on File]
ssl_merchant_initiated_unscheduled Merchant Initiated Unscheduled Transaction Indicator
Indicates the transaction was initiated by a merchant using a stored credential (token or stored card number) for a fixed or variable amount that does not occur on a scheduled or regularly occurring transaction date.
Valid values:
Y - Yes
N - No
Optional 1 alphanumeric
ssl_oar_data Original Authorization Response Data
Include this parameter for all future Card On File transactions using Token or Card Number.
Required 60 alphanumeric
ssl_ps2000_data PS2000 Data
Include this parameter for all future Card On File transactions using Token or Card Number.
Required 22 alphanumeric
[Level 3] Use only on terminals that are set up with the Level 3 terminal option. A transaction can have up to 998 products (product), which are nested within the Line Item Products (LineItemProducts) parameter.
ssl_level3_indicator Level 3 Indicator
Valid values:
Y - Level 3 transaction (send Level 3 data to issuer)
N - Only save data locally (do not send Level 3 data to issuer)
Required 1 alphanumeric
ssl_ship_to_zip ZIP Code
ZIP or postal code of the destination address.
Optional 9 alphanumeric
ssl_ship_to_country Country Code
Country ISO code of the destination address.
Optional 3 alphanumeric
ssl_shipping_amount Freight or Shipping Amount Optional 11 numeric
ssl_ship_from_postal_code ZIP Code
ZIP or postal code of the originating address.
Optional 9 alphanumeric
ssl_discount_amount Discount Amount
The discount amount for the entire transaction (order).
Optional 11 numeric
ssl_duty_amount Duty Amount
The total charges for any import or export duties included in the transaction.
Optional 11 numeric
ssl_national_tax_indicator National Tax Indicator
Valid values:
Visa
0 - Tax not included in total purchase amount
1 - Tax included in total purchase amount

MasterCard
Y - Tax included in total purchase amount
N - Transaction not subject to tax
0 or Space - Tax information unknown
Optional 1 alphanumeric
ssl_national_tax_amount National or VAT Amount Optional 11 numeric
ssl_order_date Order Date
Date when the merchant received the order.
Format: YYMMDD
Optional 6 numeric
ssl_other_tax Other Tax Amount Optional 12 numeric
ssl_summary_commodity_code Summary Commodity Code
Indicates whether Level 3 data is in the line item detail.
Optional 4 alphanumeric
ssl_merchant_vat_number Merchant VAT Number
The identification number assigned by the taxing authority to the merchant.
Optional 20 alphanumeric
ssl_customer_vat_number Customer VAT Number
The identification number assigned by the VAT authority to the buying company.
Optional 13 alphanumeric
ssl_freight_tax_amount VAT or Tax Amount
VAT or tax applied to the freight or shipping amount.
Optional 12 numeric
ssl_vat_invoice_number VAT Invoice Number Optional 15 alphanumeric
ssl_tracking_number Shipping Tracking Number Optional 25 alphanumeric
ssl_shipping_company Shipping Company Name Optional 50 alphanumeric
ssl_other_fees Other Fees Optional 12 numeric
ssl_line_item_description Line Item Description Optional 35 alphanumeric
ssl_line_Item_product_code Line Item Product Code
The part or catalog number of the line item.
Optional 13 alphanumeric
ssl_line_Item_commodity_code Line Item Commodity Code
The commodity code used to classify the line item.
Optional 12 alphanumeric
ssl_line_Item_quantity Line Item Quantity
The number of purchased units for the line item.
Optional 12 numeric
ssl_line_Item_unit_of_measure Line Item Measurement Code
The unit of measure that each line item is purchased in.
Optional 3 alphanumeric
ssl_line_Item_unit_cost Line Item Unit Cost
The cost of each purchased unit for the line item.
Optional 12 numeric
ssl_line_Item_discount_indicator Line Item Discount Indicator
Indicates whether the line item is discounted.
Valid values:
Y - Item amount is discounted
N - Item amount is not discounted
Optional 1 alphanumeric
ssl_line_Item_tax_indicator Line Item Tax Indicator
Indicates whether the line item is taxable.
Valid values:
Y - Item amount is taxable
N - Item amount is not taxable
Optional 1 alphanumeric
ssl_line_item_discount_amount Discount Amount
The discount amount for the entire line item.
Optional 11 numeric
ssl_line_Item_tax_rate Line Item Tax Rate Optional 4 numeric
ssl_line_Item_tax_amount Line Item Tax Amount
The tax amount for each purchased unit.
Optional 12 numeric
ssl_line_Item_tax_type Line Item Tax Type
The type of tax applied to the line item.
Optional 4 alphanumeric
ssl_line_Item_extended_total Line Item Extended Amount
The total cost of the line item for the detail record.
Computation Rule: Quantity x Unit Price
Optional 9 numeric
ssl_line_Item_total Line Item Total Amount Optional 12 numeric
ssl_line_Item_alternative_tax Alternate Tax ID
The alternate tax identifier description for the line item.
Optional 12 numeric
[3D Secure] Use only on terminals that are set up with eMPI Merchant Numbers.
Refer to the 3D Secure section for more information on retrieving the following Issuer Authentication parameters.
ssl_eci_ind eCommerce Indicator
Valid values:
5 - Fully authenticated (if eci = 02 or 05)
6 - Attempted VbV (if eci = 01 or 06)
7 - Non-VbV (if eci = 07 or )
Required 1 numeric
ssl_3dsecure_value Cardholder Authentication Verification (CAVV) (Visa)
Universal Cardholder Authentication Field (UCAF) (MasterCard)
Validates the integrity of the Verified by Visa (VbV) transaction data.
Required 80 Base64 Encoded
ssl_xid eMPI Transaction ID
Unique transaction identifier generated by the Elavon Merchant Plug In (eMPI) engine.
Optional 20 alphanumeric
[MasterPass] Use only on terminals that are set up with the MasterPass processing option, Market Segment set to Internet, and Region set to Canada.
Refer to the MasterPass section for more information on processing MasterPass wallet transactions.
ssl_eWallet Wallet Identifier
Indicates the wallet payment type offered by the merchant.
Valid values:
MasterPass
Required 10 alphanumeric
ssl_callback_url Callback URL
The URL of the merchant that will host the response.
Required 200 alphanumeric
ssl_eWallet_shipping Shipping Information Indicator
Indicates the shipping information to use for the wallet purchase.
Valid values:
Y - Use MasterPass shipping information
N - Use shipping information from merchant's website or payment form
Optional 1 alphanumeric
ssl_product_string Product String
List of products purchased from the merchant website. All the products appear as Line Items on the MasterPass website along with the total amount.
Format: Unit Price::Quantity::Description::Image URL
Multi-Product Format: Unit Price::Quantity::Description::Image URL
Optional 200 alphanumeric
[Apple Pay on the Web] Use only on terminals that are set up with the Apple Pay on the Web terminal option.
Refer to the Apple Pay on the Web section for more information on processing Apple Pay wallet transactions.
ssl_transaction_source Transaction Source
The source of the transaction request.
Required 20 alphanumeric
ssl_applepay_web Required 4000 alphanumeric
ssl_applepay_billing Billing Address
The billing address in the cardholder's Apple Pay account.
Optional 4000 alphanumeric
ssl_applepay_shipping Shipping Address
The shipping address in the cardholder's Apple Pay account.
Optional 4000 alphanumeric
[Visa Checkout] Use only on terminals that are set up with the VisaCheckout processing option.
Refer to the Visa Checkout section for more information on processing Visa Checkout wallet transactions.
ssl_visapayload Visa Payload Required 4000 alphanumeric
[Optional Fields]
ssl_avs_address Address Line 1
Commonly the house number and street name on the cardholder's / customer's account or billing address.
Address Verification Service (AVS) data compared with the address on the card issuer's file.
Recommended for hand-keyed transactions to qualify for better interchange rates.
Optional 30 alphanumeric
ssl_avs_zip Postal or ZIP Code
ZIP code on the cardholder's account or billing address.
(AVS) data compared with the postal or ZIP code on the card issuer's file.
Recommended for hand-keyed transactions to qualify for better interchange rates.
Optional 9 alphanumeric
ssl_description Merchant-defined Transaction Description
Short and custom text to describe the transaction.
Optional 255 alphanumeric
ssl_partial_auth_indicator Partial Authorization Indicator
Indicates whether the integrated application supports partial authorization or approval.
Valid values:
0 - Partial authorization not supported (Default)
1 - Partial authorization supported
Optional 1 numeric
[Healthcare] Only use on terminals with Healthcare enabled.
ssl_healthcare_amount Healthcare Amount
Total amount in a healthcare transaction. ssl_healthcare_amount is equal to ssl_otc_amount + ssl_prescription_amount + ssl_clinic_other_amount + ssl_dental_amount. If this amount is not included in the transaction, then Converge will calculate based off the other healthcare fields. If you do include this field in the transaction, then Converge will validate the field. If the validation fails, Converge will decline the transaction.
Optional 11 numeric
ssl_otc_amount Over the Counter Amount
Amount of over the counter medical expenditures.
Defaults to 0.00 if not sent.
Optional 11 numeric
ssl_prescription_amount Prescription Amount
Amount of prescription drug expenditures.
Defaults to 0.00 if not sent.
Optional 11 numeric
ssl_clinic_other_amount Clinic/Other Amount
Amount of expenditures for clinic or other medical office services.
Defaults to 0.00 if not sent.
Optional 11 numeric
ssl_dental_amount Dental Amount
Amount of dental expenditures.
Defaults to 0.00 if not sent.
Optional 11 numeric
ssl_vision_amount Vision Amount
Amount of vision expenditures.
Defaults to 0.00 if not sent.
Optional 11 numeric
ssl_transit_amount Transit Amount
Amount of transit expenditures.
Defaults to 0.00 if not sent.
Requests that include Transit Amount must be sent separately from healthcare transactions that include other healthcare amount fields.
Optional 11 numeric

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 Payment 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_approval_code Transaction Approval Code
Unique code returned by the credit card processor that indicates the approval status of the transaction.
ssl_amount Total Authorized/Approved Transaction Amount
The amount includes the Tip amount, if submitted in the request.
ssl_card_number Masked Card Number
Converge only returns the first 2 or last 4 digits of the regular PAN, or the last 4 digits of the actual card number if it is an association token (example, ApplePay).
ssl_card_short_description Short Card Brand Name
Valid values:
AMEX
CUP
DISC
MC
PP
VISA
ssl_card_type Payment Type
Valid value: CREDITCARD
ssl_promo_list Promotion List
This contains a list of all promo products; the data for each promo product will be nested and embedded between beginning and ending elements ssl_promo_product up to 5 promo products. Each promo product ssl_promo_product will contain ssl_promo_code, ssl_promo_code_name, ssl_promo_code_description, and ssl_promo_code_issue_points.
[Tokenization] Returned only if Tokenization parameters are sent in the request.
ssl_token Token
Generated from the credit card number.
ssl_token_response Token Generation Outcome
A value of SUCCESS indicates Converge generated the token. Other values returned are FAILURE, Action Not Permitted, Invalid Token, Not Permitted, and Acct Verification Failed.
ssl_add_token_response Add to Card Manager Outcome
Valid values:
Card Added
Card Updated
Not Permitted
FAILURE - First Name - is required
[Tip Processing] Returned only if Tip parameters are sent in the request.
ssl_base_amount Base Amount
Original transaction amount sent in the request. Returned based on the terminal setup.
ssl_tip_amount Tip Amount
Added or updated tip or gratuity amount. Returned based on the terminal setup.
ssl_server Server ID
Server identifier sent in the request. Returned based on the terminal setup.
ssl_shift Shift
Shift information sent in the request. Returned based on the terminal setup.
[Address Verification Service] Returned only if AVS parameters are sent in the request.
ssl_avs_response Address Verification Response Code
Refer to the AVS Response Codes section for a complete list of AVS response codes.
[Card Verification] Returned only if CVV / CVC / CID parameters are sent in the request.
ssl_cvv2_response Card Verification Response Code
Refer to the CVV2/CVC2 Response Codes section for a complete list of CVV/CVC2 response codes.
[Invoice Number] Returned only if Invoice Number parameters are sent in the request.
ssl_invoice_number Invoice Number
The invoice number or ticket number sent in the original request.
[Multi-Currency Conversion] Returned only if MCC parameters are sent in the request.
ssl_transaction_currency Transaction Currency
[Dynamic Currency Conversion] Returned only if the terminal is set up with the Dynamic Currency credit card payment option.
Refer to the Dynamic Currency Conversion (DCC) section for more information on retrieving the following DCC transaction parameters.
ssl_txn_currency_code Transaction Currency Code
The cardholder's billing currency code.
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_cardholder_base_amount Base Amount
Base amount in the cardholder currency. Returned only if Tip Processing parameters are sent in the request.
ssl_cardholder_tip_amount Tip Amount
Tip amount in the cardholder currency. Returned only if Tip Processing parameters are sent in the request.
[Partial Approval] Returned only if Partial Approval parameters are sent in the request.
If the customer indicates that they do not wish to continue with the additional tender type, the point of sale application must send a reversal to cancel this payment and reestablish the balance back to the card.
A reversal can be achieved by sending a ccdelete in terminal-based terminals or ccvoid in host-based terminals.
ssl_requested_amount Requested Amount
Original requested amount on partial approvals.
ssl_balance_due Remaining Balance
The difference between the requested amount and the authorized amount, which the merchant will collect from the customer.
ssl_account_balance Account Balance
Available balance on the card, which is 0.00 for a partially authorized transaction.
[Card On File]
ssl_oar_data Original Authorization Response Data
This data will be as received during the original authorization processing.
This is a retain and return value for terminal-based settlement messages.
You must store this field with the payment details from the transaction to make future Card On File transactions.
ssl_ps2000_data PS2000
This data will be as received during the original authorization processing.
This is a retain and return value for terminal-based settlement messages.
You must store this field with the payment details from the transaction to make future Card On File transactions.
[Error] Returned only if an error occurs. Refer to the Error Codes section for more information.
errorCode Error Code
Typically, when the transaction failed validation or the request is incorrect. This will prevent the transaction from going to authorization. This is a numeric field.
errorMessage Error Message
Detailed explanation of the error. This field may be changed based on merchant configuration in the user interface.
errorName Error Name
Error name or reason for the error.

Examples

error_outline

important

  • In all of 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.

Basic Sale Transaction

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_test_mode>false</ssl_test_mode>
    <ssl_transaction_type>ccsale</ssl_transaction_type>
    <ssl_card_number>000000000000000</ssl_card_number>
    <ssl_exp_date>1215</ssl_exp_date>
    <ssl_amount>1.00</ssl_amount>
</txn>

Response

<txn>
    <ssl_card_number>00********0000</ssl_card_number>
    <ssl_exp_date>1215</ssl_exp_date>
    <ssl_amount>1.00</ssl_amount>
    <ssl_result>0</ssl_result>
    <ssl_result_message>APPROVAL</ssl_result_message>
    <ssl_txn_id>101641221593ACBA6-BAFD-76B7-4948-B3DE68CFD0CC</ssl_txn_id>
    <ssl_approval_code>CMC142</ssl_approval_code>
    <ssl_account_balance>1.00</ssl_account_balance>
    <ssl_txn_time>01/20/2011 01:07:23 PM</ssl_txn_time>
</txn>

Sale with Tip

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_test_mode>false</ssl_test_mode>
    <ssl_transaction_type>ccsale</ssl_transaction_type>
    <ssl_card_number>0000000000000000</ssl_card_number>
    <ssl_exp_date>1215</ssl_exp_date>
    <ssl_amount>10.00</ssl_amount>
    <ssl_tip_amount>2.00</ssl_tip_amount>
    <ssl_shift>Dinner</ssl_shift>
    <ssl_server>Joe123</ssl_server>
</txn>

Response

<txn>
    <ssl_result>0</ssl_result>
    <ssl_approval_code>N25032</ssl_approval_code>
    <ssl_result_message>APPROVAL</ssl_result_message>
    <ssl_txn_id>TEST43B-D0638677-26EB-40F5-B2F9-3AF2545DE144</ssl_txn_id>
    <ssl_txn_time>10/03/2012 10:25:03 PM</ssl_txn_time>
    <ssl_card_number>00********0000</ssl_card_number>
    <ssl_exp_date>1215</ssl_exp_date>
    <ssl_base_amount>10.00</ssl_base_amount>
    <ssl_amount>12.00</ssl_amount>
    <ssl_tip_amount>2.00</ssl_tip_amount>
    <ssl_shift>Dinner</ssl_shift>
    <ssl_server>Joe1</ssl_server>
</txn>

Sale with Multi-Currency Conversion

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_test_mode>false</ssl_test_mode>
    <ssl_transaction_type>ccsale</ssl_transaction_type>
    <ssl_card_number>0000000000000000</ssl_card_number>
    <ssl_exp_date>1215</ssl_exp_date>
    <ssl_amount>200</ssl_amount>
    <ssl_transaction_currency>JPY</ssl_transaction_currency>
    <ssl_invoice_number>XMLXSSJPYNVISA20-200</ssl_invoice_number>
</txn>

Response

<txn>
    <ssl_approval_code>CVI032</ssl_approval_code>
    <ssl_exp_date>1222</ssl_exp_date>
    <ssl_result_message>APPROVAL</ssl_result_message>
    <ssl_invoice_number>XMLXSSJPYNVISA20-200</ssl_invoice_number>
    <ssl_amount>200</ssl_amount>
    <ssl_transaction_currency>JPY</ssl_transaction_currency>
    <ssl_result>0</ssl_result>
    <ssl_txn_id>AA47AE-BD32FF54-BE12-4046-98E9-F78E9D75212D</ssl_txn_id>
    <ssl_card_number>00**********0000</ssl_card_number>
    <ssl_txn_time>11/19/2013 12:02:29 AM</ssl_txn_time>
</txn>

Sale with Partial Approval

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_test_mode>false</ssl_test_mode>
    <ssl_transaction_type>ccsale</ssl_transaction_type>
    <ssl_card_number>0000000000000000</ssl_card_number>
    <ssl_exp_date>1212</ssl_exp_date>
    <ssl_amount>10.10</ssl_amount>
    <ssl_first_name>Test</ssl_first_name>
    <ssl_partial_auth_indicator>1</ssl_partial_auth_indicator>
</txn>

Response

If the balance on a card is not enough to cover for the entire purchase, the point of sale application must be able to read the additional returned fields and collect the balance that remains by other means. In this example, the amount requested was 10.10 and only 10.05 was approved. The integrated application must display the balance left to pay as 0.05.

<txn>
    <ssl_card_number>00********0000></ssl_card_number>
    <ssl_exp_date>1212</ssl_exp_date>
    <ssl_amount>10.05</ssl_amount>
    <ssl_requested_amount>10.10</ssl_requested_amount>
    <ssl_balance_due>0.05</ssl_balance_due>
    <ssl_result>0</ssl_result>
    <ssl_result_message>PARTIAL APPROVAL</ssl_result_message>
    <ssl_txn_id>AA48439-9D9AFF76-AFEC-0B8D-DC7F-43A5F97BF81B</ssl_txn_id>
    <ssl_approval_code>CVI788</ssl_approval_code>
    <ssl_account_balance>0.00</ssl_account_balance>
    <ssl_txn_time>10/25/2011 10:49:52 PM</ssl_txn_time>
</txn>

Sale with Dynamic Currency Conversion

Cardholder Accepts DCC and Charged in Foreign Currency

  1. Send a ccsale 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_test_mode>false</ssl_test_mode>
        <ssl_transaction_type>ccsale</ssl_transaction_type>
        <ssl_card_number>0000000000000000</ssl_card_number>
        <ssl_exp_date>1219</ssl_exp_date>
        <ssl_amount>1.00</ssl_amount>
    </txn>
  2. Receive a DCC decision response.

    <txn>
        <id>ekU9j0L0iFO9m9FELAqK8E6</id>
        <ssl_txn_currency_code>EUR</ssl_txn_currency_code>
        <ssl_markup>3.25</ssl_markup>
        <ssl_conversion_rate>.76373</ssl_conversion_rate>
        <ssl_amount>1.00</ssl_amount>
        <ssl_cardholder_amount>0.76</ssl_cardholder_amount> <dccoption>
        <option label="Please charge my purchase in my home currency.">Y</option>
        <option label="Do not charge me in my home currency. Charge my purchase in US dollars.">N</option>
        </dccoption>
    </txn>
  3. Cardholder accepts DCC and a second request is sent requesting the card to be charged in foreign currency.

    <txn>
        <ID>ekU9j0L0iFO9m9FELAqK8E6</ID>
        <dccoption>Y</dccoption>
    </txn>
  4. Receive a final response and print receipt.

    <txn>
        <ssl_card_number>00********0000</ssl_card_number>
        <ssl_exp_date>1219</ssl_exp_date>
        <ssl_amount>1.00</ssl_amount>
        <ssl_cardholder_amount>0.76</ssl_cardholder_amount>
        <ssl_cardholder_currency>EUR</ssl_cardholder_currency>
        <ssl_conversion_rate>.76373</ssl_conversion_rate>
        <ssl_markup>3.25</ssl_markup>
        <ssl_invoice_number/>
        <ssl_result>0</ssl_result>
        <ssl_result_message>APPROVAL</ssl_result_message>
        <ssl_txn_id>101641221295DB876-F2A9-7B6A-B173-2737983B7693</ssl_txn_id>
        <ssl_approval_code>N05465</ssl_approval_code>
        <ssl_txn_time>01/20/2011 01:05:44 PM</ssl_txn_time>
    </txn>

Cardholder Declines DCC and Charged in Home Currency

  1. Send a ccsale 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_test_mode>false</ssl_test_mode>
        <ssl_transaction_type>ccsale</ssl_transaction_type>
        <ssl_card_number>0000000000000000</ssl_card_number>
        <ssl_exp_date>1219</ssl_exp_date>
        <ssl_amount>1.00</ssl_amount>
    </txn>
  2. Receive a DCC decision response.

    <txn>
        <id>ekU9j0L0iFO9m9FELAqK8E6</id>
        <ssl_txn_currency_code>EUR</ssl_txn_currency_code>
        <ssl_markup>3.25</ssl_markup>
        <ssl_conversion_rate>.76373</ssl_conversion_rate>
        <ssl_amount>1.00</ssl_amount>
        <ssl_cardholder_amount>0.76</ssl_cardholder_amount> <dccoption>
        <option label="Please charge my purchase in my home currency.">Y</option>
        <option label="Do not charge me in my home currency. Charge my purchase in US dollars.">N</option>
        </dccoption>
    </txn>
  3. Cardholder declines DCC and a second request is sent requesting the card to be charged in home currency.

    <txn>
        <ID>iQ4AezhcjmJznh3BYLZ0-W9</ID>
        <dccoption>N</dccoption>
    </txn>
  4. Receive a final response.

    <txn>
        <ssl_card_number>00********0000</ssl_card_number>
        <ssl_exp_date>1219</ssl_exp_date>
        <ssl_amount>1.00</ssl_amount>
        <ssl_result>0</ssl_result>
        <ssl_result_message>APPROVAL</ssl_result_message>
        <ssl_txn_id>101641221593ACBA6-BAFD-76B7-4948- B3DE68CFD0CC</ssl_txn_id>
        <ssl_approval_code>CMC142</ssl_approval_code>
        <ssl_account_balance>1.00</ssl_account_balance>
        <ssl_txn_time>01/20/2011 01:07:23 PM</ssl_txn_time>
    </txn>

Sale with Token Generation

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>ccsale</ssl_transaction_type>
    <ssl_card_number>0000000000000000</ssl_card_number>
    <ssl_exp_date>1222</ssl_exp_date>
    <ssl_cvv2cvc2_indicator>1</ssl_cvv2cvc2_indicator>
    <ssl_cvv2cvc2>321</ssl_cvv2cvc2>
    <ssl_amount>12.00</ssl_amount>
    <ssl_avs_address>7300</ssl_avs_address>
    <ssl_avs_zip>12345</ssl_avs_zip>
    <ssl_get_token>Y</ssl_get_token>
</txn>

Response

<txn>
    <ssl_approval_code>CVI194</ssl_approval_code>
    <ssl_dynamic_dba/>21, 17, or 12 length>
    <ssl_exp_date>1222</ssl_exp_date>
    <ssl_server />
    <ssl_account_balance>12.00</ssl_account_balance>
    <ssl_token>7876275006683003</ssl_token>
    <ssl_get_token>Y</ssl_get_token>
    <ssl_result_message>APPROVAL</ssl_result_message>
    <ssl_token_response>SUCCESS</ssl_token_response>
    <ssl_base_amount>12.00</ssl_base_amount>
    <ssl_amount>12.00</ssl_amount>
    <ssl_txn_id>AA4843B-0E98A88D-6923-4A77-B546-38CFDDCE4DA4</ssl_txn_id>
    <ssl_result>0</ssl_result>
    <ssl_card_number>00**********0000</ssl_card_number>
    <ssl_txn_time>03/26/2013 02:50:56 PM</ssl_txn_time>
    <ssl_avs_response>S</ssl_avs_response>
    <ssl_cvv2_response>M</ssl_cvv2_response>
</txn>

Sale with Token Generation and Store to Card Manager

This Sale transaction includes the token generation and add to Card Manager parameters.

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>ccsale</ssl_transaction_type>
        <ssl_amount>10.00</ssl_amount>
        <ssl_card_number>0000000000000000</ssl_card_number>
        <ssl_exp_date>1219</ssl_exp_date>
        <ssl_invoice_number>1234</ssl_invoice_number>
        <ssl_first_name>John</ssl_first_name>
        <ssl_last_name>Doe</ssl_last_name>
        <ssl_avs_address>123 Main</ssl_avs_address>
        <ssl_city>Atlanta</ssl_city>
        <ssl_state>GA</ssl_state>
        <ssl_avs_zip>30123</ssl_avs_zip>
        <ssl_country>USA</ssl_country>
        <ssl_cvv2cvc2_indicator>1</ssl_cvv2cvc2_indicator>
        <ssl_cvv2cvc2>123</ssl_cvv2cvc2>
        <ssl_get_token>Y</ssl_get_token>
        <ssl_add_token>Y</ssl_add_token>
</txn>

Response

<txn>
        <ssl_approval_code>CVI371</ssl_approval_code>
        <ssl_cvv2_response>M</ssl_cvv2_response>
        <ssl_add_token_response>Card Added</ssl_add_token_response>
        <ssl_account_balance>10.00</ssl_account_balance>
        <ssl_token>7098165265161885</ssl_token>
        <ssl_token_response>SUCCESS</ssl_token_response>
        <ssl_result_message>APPROVAL</ssl_result_message>
        <ssl_invoice_number>1234</ssl_invoice_number>
        <ssl_amount>10.00</ssl_amount>
        <ssl_txn_id>AA4843B-0E213944-FEBA-4841-ADEA-8804C127AB3</ssl_txn_id>
        <ssl_result>0</ssl_result>
        <ssl_card_number>00**********0000</ssl_card_number>
        <ssl_txn_time>02/18/2014 04:06:41 PM</ssl_txn_time>
        <ssl_avs_response>D</ssl_avs_response>
        <ssl_invoice_number>1234</ssl_invoice_number>
        <ssl_first_name>John</ssl_first_name>
        <ssl_last_name>Doe</ssl_last_name>
        <ssl_avs_address>123 Main</ssl_avs_address>
        <ssl_city>Atlanta</ssl_city>
        <ssl_state>GA</ssl_state>
        <ssl_avs_zip>30123</ssl_avs_zip>
        <ssl_country>USA</ssl_country>
</txn>

Request

Now that the token is stored in Card Manager, any succeeding Sale request can be submitted using the generated 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>ccsale</ssl_transaction_type>
    <ssl_amount>10.00</ssl_amount>
    <ssl_token>7098165265161885</ssl_token>
</txn>                        

Sale with Level 3 Data

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>ccsale</ssl_transaction_type>
    <! -- CCAUTHONLY --!>
    <ssl_card_number>5000******3003</ssl_card_number>
    <ssl_exp_date>****</ssl_exp_date>
    <ssl_amount>10.00</ssl_amount>
    <ssl_cvv2cvc2_indicator>1</ssl_cvv2cvc2_indicator>
    <ssl_cvv2cvc2>123</ssl_cvv2cvc2>
    <ssl_avs_address>100 Test Street</ssl_avs_address>
    <ssl_avs_zip>96210</ssl_avs_zip>
    <ssl_salestax>1.30</ssl_salestax>
    <ssl_customer_code>ABC12345</ssl_customer_code>
    <! -- System fields, used in Level 3 Clearing File --!>
    <ssl_ship_to_zip>L4W2C8</ssl_ship_to_zip>
    <ssl_ship_to_country>123</ssl_ship_to_country>
    <! -- Level 3 fields --!>
    <ssl_ship_from_postal_code>111</ssl_ship_from_postal_code>
    <ssl_discount_amount>2</ssl_discount_amount>
    <ssl_duty_amount>5</ssl_duty_amount>
    <ssl_shipping_amount>10</ssl_shipping_amount>
    <ssl_national_tax_indicator>1</ssl_national_tax_indicator>
    <ssl_national_tax_amount>4</ssl_national_tax_amount>
    <ssl_order_date>01/22/2014</ssl_order_date>
    <ssl_other_tax>3</ssl_other_tax>
    <ssl_summary_commodity_code>444</ssl_summary_commodity_code>
    <ssl_merchant_vat_number>222</ssl_merchant_vat_number>
    <ssl_customer_vat_number>333</ssl_customer_vat_number>
    <ssl_freight_tax_amount>8</ssl_freight_tax_amount>
    <ssl_freight_tax_rate>9</ssl_freight_tax_rate>
    <ssl_vat_invoice_number>224</ssl_vat_invoice_number>
    <! -- Indicator to include the Level3 data in clearing File --!>
    <ssl_level3_indicator>Y</ssl_level3_indicator>
    <! -- Indicator to include the Level3 data in clearing File --!>
    <ssl_tracking_number>TN12345</ssl_tracking_number>
    <ssl_shipping_company>Elavon</ssl_shipping_company>
    <ssl_other_fees>5.00</ssl_other_fees>
    <LineItemProducts>
        <product>
            <ssl_line_item_description>First Product</ssl_line_item_description>
            <ssl_line_Item_product_code>P-001</ssl_line_Item_product_code>
            <ssl_line_Item_commodity_code>CMD1</ssl_line_Item_commodity_code>
            <ssl_line_Item_quantity>101</ssl_line_Item_quantity>
            <ssl_line_Item_unit_of_measure>M1</ssl_line_Item_unit_of_measure>
            <ssl_line_Item_unit_cost>5.00</ssl_line_Item_unit_cost>
            <ssl_line_Item_discount_indicator>1</ssl_line_Item_discount_indicator>
            <ssl_line_item_discount_amount>1.00</ssl_line_item_discount_amount>
            <ssl_line_Item_tax_Indicator>1</ssl_line_Item_tax_Indicator>
            <ssl_line_Item_tax_rate>20</ssl_line_Item_tax_rate>
            <ssl_line_Item_tax_amount>1.00</ssl_line_Item_tax_amount>
            <ssl_line_Item_tax_type>1</ssl_line_Item_tax_type>
            <ssl_line_Item_extended_total>20</ssl_line_Item_extended_total>
            <ssl_line_Item_total>30</ssl_line_Item_total>
            <ssl_line_Item_alternative_tax>GST</ssl_line_Item_alternative_tax>
        </product>
        <product>
            <ssl_line_item_description>Second Product</ssl_line_item_description>
            <ssl_line_Item_product_code>P-002</ssl_line_Item_product_code>
            <ssl_line_Item_commodity_code>CMD2</ssl_line_Item_commodity_code>
            <ssl_line_Item_quantity>102</ssl_line_Item_quantity>
            <ssl_line_Item_unit_of_measure>M2</ssl_line_Item_unit_of_measure>
            <ssl_line_Item_unit_cost>10.00</ssl_line_Item_unit_cost>
            <ssl_line_Item_discount_indicator>1</ssl_line_Item_discount_indicator>
            <ssl_line_item_discount_amount>2.00</ssl_line_item_discount_amount>
            <ssl_line_Item_tax_Indicator>2</ssl_line_Item_tax_Indicator>
            <ssl_line_Item_tax_rate>40</ssl_line_Item_tax_rate>
            <ssl_line_Item_tax_amount>2.00</ssl_line_Item_tax_amount>
            <ssl_line_Item_tax_type>2</ssl_line_Item_tax_type>
            <ssl_line_Item_extended_total>40</ssl_line_Item_extended_total>
            <ssl_line_Item_total>60</ssl_line_Item_total>
            <ssl_line_Item_alternative_tax>PST</ssl_line_Item_alternative_tax>
        </product>
    </LineItemProducts>
</txn>

Integration with Loyalty Program Transactions

The Credit Card Sale transaction can integrate the processing of the following Loyalty Program transactions:

  • Lead Inquiry
  • Member Inquiry
  • Enrollment

Transaction Processing

These steps outline the process of integrating the Lead Inquiry, Member Inquiry, and Enrollment transactions with the Credit Card Sale transaction.

  1. The integrated application sends the payment card to Converge.
  2. Converge sends a Lead Inquiry (ltleadinquiry) transaction to Elavon's loyalty program to verify the payment card's enrollment status.

    Refer to the Lead Inquiry transaction for information about the appropriate request parameters.

  3. Converge receives a response from the Elavon loyalty program.

    If the Elavon loyalty program recognizes the payment card as a member, it checks for rewards and sends the rewards information (ssl_promo_list) with the new discounted amount (ssl_tender_amount).

    If the Elavon loyalty program recognized the payment card as not a member, it sends a Join Offer message in the response.

  4. Converge sends the Elavon loyalty program response to the integrated application.

    If the payment card is a member, the integrated application can authorize the Credit Card Sale transaction using the rewards information and new discounted amount. At this point, the Credit Card Sale and Loyalty Program transactions are complete.

    If the payment card is not a member, the integration application prompts (ssl_loyalty_prompt) the cardholder to not enroll, confirm their membership, or enroll.

  5. The cardholder selects an option from the prompt displayed by the integrated application.

    If the cardholder selects to not enroll, the integrated application proceeds with the authorization of the Credit Card Sale's original transaction amount. At this point, the Credit Card Sale and Loyalty Program transactions are complete.

    If the cardholder confirms their membership, the integrated application sends a Member Inquiry (ltmemberinquiry) transaction. Refer to the Member Inquiry transaction for information about the appropriate request parameters.

  6. If the integration application sent a Member Inquiry transaction and the Elavon loyalty program recognizes the payment card as a member, it checks for rewards and sends the rewards information (ssl_promo_list) with the new discounted amount (ssl_tender_amount). The integrated application can then authorize the Credit Card Sale transaction using the rewards information and new discounted amount. At this point, the Credit Card Sale and Loyalty Program transactions are complete.

    If the integrated application sent an Enrollment transaction and the cardholder uses the payment card to enroll, the integrated application sends the Credit Card Sale transaction with the cardholder's phone number (ssl_phone) and Enrollment Indicator (ssl_enrollment) (obtained from the ltenrollment transaction), and promotional codes from the ltleadinquiry response. The payment card is charged with purchase amount and enrolled in the loyalty program with a phone number. At this point, the Credit Card Sale and Loyalty Program transactions are complete.

    If the integrated application sent an Enrollment transaction and the cardholder uses only their phone number to enroll or a new loyalty card is issued, the Elavon loyalty program enrolls the loyalty card and checks for rewards and responds with the rewards information and new discounted amount. The integrated application can authorize the Credit Card Sale transaction using the rewards information and new discounted amount. At this point, the Credit Card Sale and Loyalty Program transactions are complete.