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:
For the entire list of API endpoints, refer to API Endpoints.
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: 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 |
ssl_merchant_txn_id | Merchant Transaction ID Unique transaction reference number sent to the downstream systems as part of the Encompass ROC data. | Optional | 39 | alphanumeric |
[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. Required for hand-keyed transactions. | Conditional | 18 | numeric |
ssl_exp_date | Card’s Expiry Date Date when the card becomes invalid. Format: MMYY 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:
| 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. Required for swiped 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 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 Required if card is read from a ROAM device. | Conditional | NA | NA |
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 if using ssl_enc_track_data . | Conditional | 20 | alphanumeric |
ssl_vm_mobile_source | Mobile Source Valid values:
| Conditional | NA | alphanumeric |
ssl_vendor_id | Vendor ID Unique vendor identifier assigned by Elavon. Required for encrypting devices and certification. | Conditional | 8 | alphanumeric |
ssl_mobile_id | Mobile ID Unique assigned mobile identification number of each mobile device in use as determined by the merchant. Optional for encrypting devices. | Conditional | 50 | alphanumeric |
ssl_token | Credit Card Token Encrypted card data that can replace ssl_card_number .Important:
ssl_merchant_initiated_unscheduled = Y. | Conditional | 20 | alphanumeric |
ssl_token_provider | Credit Card Token Provider This code indicates the provider for the token. This value is also visible in the Converge UI. Valid values:
| Optional | 1 | alphanumeric |
ssl_pos_mode | POS Device Data Entry Capability Indicates how the POS device captures card data. Valid values:
| Optional | 2 | numeric |
ssl_entry_mode | Transaction Entry Indicator Indicates how the track data was captured. Valid values:
| 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) Important: DBA Prefix must be set using DBA Payment Fields Settings UI if ssl_dynamic_dba is used. Example: MANYMAG*BAKERS MONTHLY | Conditional | 21 | alphanumeric |
ssl_dynamic_dba_address | Dynamic DBA Address The dynamic doing business as street address for this transaction. This value allows a merchant use an alternate address for this transaction. | Optional | 30 | alphanumeric |
ssl_dynamic_dba_auth_type | Merchant ID The dynamic doing business as authorization type. Valid values:
| Optional | 1 | alphanumeric |
ssl_dynamic_dba_city | Dynamic City Name This value allows a merchant use an alternate city as part of the address for this transaction | Optional | 13 | alphanumeric |
ssl_dynamic_dba_country | Dynamic Country ISO Code This value allows a merchant specify an alternate country as part of the address for this transaction. | Optional | 3 | alphanumeric |
ssl_dynamic_dba_email | Dynamic Email Address This value allows a merchant specify an alternate email address for this transaction. | Optional | 70 | alphanumeric |
ssl_dynamic_dba_mcc | Dynamic Merchant Category Code This value allows a merchant specify an alternate merchant category for this transaction. | Optional | 22 | numeric |
ssl_dynamic_dba_phone | Dynamic Phone Number This value allows a merchant specify an alternate phone number for this transaction. | Optional | 20 | alphanumeric |
ssl_dynamic_dba_postal | Dynamic Postal or ZIP Code This value allows a merchant set an alternate postal code for a transaction. | Optional | 9 | alphanumeric |
ssl_dynamic_dba_state | Dynamic State Code This value allows a merchant set an alternate state code for a transaction. | Optional | 2 | alphanumeric |
ssl_dynamic_dba_submid | Dynamic Sub-merchant ID This value allows a merchant set an alternate sub-merchant ID for a transaction. | Optional | 22 | numeric |
ssl_dynamic_dba_taxid | Dynamic Merchant Tax ID This value allows a merchant set an alternate Tax ID for this transaction. | Optional | 14 | 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:
Hand-keyed: ssl_card_number , ssl_exp_date Swiped/Contactless: ssl_track_data Encrypted Swiped/Contactless
| Optional | 1 | alphanumeric |
ssl_add_token | Add to Card Manager Indicator Indicates whether to add or update token and cardholder details in Card Manager. Valid values:
| 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:
| 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:
| 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. Required for eComm and MOTO transactions. | 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:
| 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:
| 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. | Optional | 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:
| 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
| 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 | 12 | 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:
| Optional | 1 | alphanumeric |
ssl_line_Item_tax_indicator | Line Item Tax Indicator Indicates whether the line item is taxable. Valid values:
| 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:
| 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 Click to Pay processing option, Market Segment set to Internet, and Region set to Canada and US. Refer to the Click to Pay section for more information on processing Click to Pay wallet transactions. | |||
ssl_eWallet | Wallet Identifier Indicates the wallet payment type offered by the merchant. Valid value: 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:
| 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 Click to Pay 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 |
ssl_customer_code | Customer Code or Purchase Order Number Customer ID or PO number specified in the billing statement of the cardholder. | |||
[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 |
[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_bin_override | Override Bank Identification Number (BIN) Allows the integrated application to pass the ssl_Customer_code and/or ssl_salestax values for non-corporate cards.Valid value: 1 - Pass customer code and/or sales tax for non-corporate card transaction requests | Optional | 1 | numeric |
ssl_description | Merchant-defined Transaction Description Short and custom text to describe the transaction. | Optional | 255 | alphanumeric |
ssl_lane_number | Lane Number A unique identifier for point of sale devices that can be passed to satisfy Mastercard’s unique Terminal ID requirement | Optional | 8 | numeric |
ssl_partial_auth_indicator | Partial Authorization Indicator Indicates whether the integrated application supports partial authorization or approval. Valid values:
| 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_issuer_response | Original Issuer Response The issuer response returned during the authorization attempt. An ssl_issuer_response = 00 indicates success.An ssl_issuer_response not equal to 00 indicates a decline or failure. |
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 . |
ssl_par_value | Payment Account Reference (PAR) from original auth |
[Tokenization] | Returned only if Tokenization parameters are sent in the request. |
ssl_token | Token Generated from the credit card number. Returned if transaction was approved. Not returned if the transaction was failed or rejected. |
ssl_token_provider | Credit Card Token Provider This code indicates the provider for the token. This value is also visible in the Converge UI. Valid values:
|
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 |
ssl_association_token_data | Association token indidcator Used to identify if the data in the account data field contains an association defined token replacement value instead of the original account data. Valid values:
|
ssl_brand_token_eligibility_indicator | Identifies if the transactions is eligible for the brand tokenization services Valid values:
|
[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. |
ssl_response_advicecode | Merchant Advice Code (MAC) response for MasterCard Transactions Valid Values:
|
[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 may 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
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
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_test_mode>false</ssl_test_mode>
<ssl_transaction_type>ccsale</ssl_transaction_type>
<ssl_card_number>000000000000000</ssl_card_number>
<ssl_exp_date>1222</ssl_exp_date>
<ssl_amount>1.00</ssl_amount>
</txn>
Response
<txn>
<ssl_card_number>00********0000</ssl_card_number>
<ssl_exp_date>1222</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>10/20/2021 01:07:23 PM</ssl_txn_time>
</txn>
Sale with Tip
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_test_mode>false</ssl_test_mode>
<ssl_transaction_type>ccsale</ssl_transaction_type>
<ssl_card_number>0000000000000000</ssl_card_number>
<ssl_exp_date>1222</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_issuer_response>00</ssl_issuer_response>
<ssl_card_number>41**********1111</ssl_card_number>
<ssl_departure_date></ssl_departure_date>
<ssl_oar_data>010012672405021605160000047554200000000000866452212216126724</ssl_oar_data>
<ssl_result>0</ssl_result>
<ssl_txn_id>020522A40-E2934CB9-40F7-4BA9-BC34-E52C1826A8AB</ssl_txn_id>
<ssl_avs_response> </ssl_avs_response>
<ssl_approval_code>866452</ssl_approval_code>
<ssl_account_status></ssl_account_status>
<ssl_amount>32.00</ssl_amount>
<customfeild2></customfeild2>
<ssl_txn_time>05/02/2022 11:05:16 AM</ssl_txn_time>
<ssl_exp_date>1222</ssl_exp_date>
<ssl_base_amount>30.00</ssl_base_amount>
<ssl_card_short_description>VISA</ssl_card_short_description>
<ssl_completion_date></ssl_completion_date>
<ssl_credit_surcharge_amount></ssl_credit_surcharge_amount>
<ssl_tip_amount>2.00</ssl_tip_amount>
<ssl_customer_code></ssl_customer_code>
<ssl_card_type>CREDITCARD</ssl_card_type>
<ssl_access_code></ssl_access_code>
<ssl_transaction_type>SALE</ssl_transaction_type>
<ssl_salestax></ssl_salestax>
<ssl_account_balance>0.00</ssl_account_balance>
<ssl_ps2000_data>A000000000000000 A</ssl_ps2000_data>
<ssl_result_message>APPROVAL</ssl_result_message>
<ssl_server>Joe123</ssl_server>
<ssl_invoice_number></ssl_invoice_number>
<ssl_cvv2_response>P</ssl_cvv2_response>
<ssl_tender_amount></ssl_tender_amount>
<ssl_partner_app_id>01</ssl_partner_app_id>
</txn>
Sale with Multi-Currency Conversion
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_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/2021 12:02:29 AM</ssl_txn_time>
</txn>
Sale with Partial Approval
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_test_mode>false</ssl_test_mode>
<ssl_transaction_type>ccsale</ssl_transaction_type>
<ssl_card_number>0000000000000000</ssl_card_number>
<ssl_exp_date>1222</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
Send a
ccsale
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_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>
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>
Cardholder accepts DCC and a second request is sent requesting the card to be charged in foreign currency.
xmldata= <txn> <ID>ekU9j0L0iFO9m9FELAqK8E6</ID> <dccoption>Y</dccoption> </txn>
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
Send a
ccsale
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_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>
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>
Cardholder declines DCC and a second request is sent requesting the card to be charged in home currency.
xmldata= <txn> <ID>iQ4AezhcjmJznh3BYLZ0-W9</ID> <dccoption>N</dccoption> </txn>
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
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>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
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>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.
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>ccsale</ssl_transaction_type>
<ssl_amount>10.00</ssl_amount>
<ssl_token>7098165265161885</ssl_token>
</txn>
Brand Token Eligibility Indicator
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>ccsale</ssl_transaction_type>
<ssl_card_number>4485660000000007</ssl_card_number>
<ssl_exp_date>1223</ssl_exp_date>
<ssl_amount>1.17</ssl_amount>
<ssl_first_name>John</ssl_first_name>
<ssl_last_name>Doe</ssl_last_name>
<ssl_cvv2cvc2_indicator>1</ssl_cvv2cvc2_indicator>
<ssl_cvv2cvc2>789</ssl_cvv2cvc2>
<ssl_phone>57847687</ssl_phone>
</txn>
Response
<txn>
<ssl_issuer_response>00</ssl_issuer_response>
<ssl_transaction_type>SALE</ssl_transaction_type>
<ssl_card_number>44**********0007</ssl_card_number>
<ssl_departure_date/>
<ssl_oar_data>010010232904061601370000047554200000000000910676209616102329</ssl_oar_data>
<ssl_result>0</ssl_result>
<ssl_txn_id>060422MB-74883286-7318-47AD-B14C-706101331FBF</ssl_txn_id>
<ssl_brand_token_eligibility_indicator>1</ssl_brand_token_eligibility_indicator>
<ssl_avs_response> </ssl_avs_response>
<ssl_approval_code>910676</ssl_approval_code>
<ssl_salestax/>
<ssl_amount>1.17</ssl_amount>
<ssl_txn_time>04/06/2022 11:01:37 AM</ssl_txn_time>
<ssl_account_balance>0.00</ssl_account_balance>
<ssl_ps2000_data>A4061201375704370252A</ssl_ps2000_data>
<ssl_exp_date>1223</ssl_exp_date>
<ssl_result_message>APPROVAL</ssl_result_message>
<ssl_card_short_description>VISA</ssl_card_short_description>
<ssl_completion_date/>
<ssl_par_value>12340012345678910123456789101</ssl_par_value>
<ssl_customer_code/>
<ssl_card_type>CREDITCARD</ssl_card_type>
<ssl_invoice_number/>
<ssl_cvv2_response>M</ssl_cvv2_response>
<ssl_partner_app_id>01</ssl_partner_app_id>
</txn>
Sale with Level 3 Data
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>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>
MasterCard Transaction declined with MAC value M03/M21
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_test_mode>False</ssl_test_mode>
<ssl_show_form>False</ssl_show_form>
<ssl_result_format>HTML</ssl_result_format>
<ssl_transaction_type>ccsale</ssl_transaction_type>
<ssl_recurring_flag></ssl_recurring_flag>
<ssl_payment_count></ssl_payment_count>
<ssl_card_present></ssl_card_present>
<ssl_partial_auth_indicator></ssl_partial_auth_indicator>
<ssl_amount>10.08</ssl_amount>
<ssl_tip_amount></ssl_tip_amount>
<ssl_track_data></ssl_track_data>
<ssl_card_number>5121212121212124</ssl_card_number>
<ssl_exp_date>1234</ssl_exp_date>
<ssl_cvv2cvc2>123</ssl_cvv2cvc2>
<ssl_cvv2cvc2_indicator>1</ssl_cvv2cvc2_indicator>
<ssl_server></ssl_server>
<ssl_shift></ssl_shift>
</txn>
Response
<txn>
<ssl_issuer_response>08</ssl_issuer_response>
<ssl_last_name/>
<ssl_response_advicecode>M03</ssl_response_advicecode>
<ssl_company/>
<ssl_phone/>
<ssl_card_number>51**********2124</ssl_card_number>
<ssl_departure_date/>
<ssl_oar_data>010001031102162128550216000816800000000000QMC297MCC097C6C</ssl_oar_data>
<ssl_result>1</ssl_result>
<ssl_txn_id>160222M1-15B444C0-69F6-4C17-BB34-76DEDC2238C4</ssl_txn_id>
<ssl_avs_response> </ssl_avs_response>
<ssl_approval_code/>
<ssl_email/>
<ssl_amount>10.08</ssl_amount>
<ssl_avs_zip/>
<ssl_txn_time>02/16/2022 04:28:55 PM</ssl_txn_time>
<ssl_exp_date>1234</ssl_exp_date>
<ssl_card_short_description>MC</ssl_card_short_description>
<ssl_completion_date/>
<ssl_address2/>
<ssl_customer_code/>
<ssl_country/>
<ssl_card_type>CREDITCARD</ssl_card_type>
<ssl_transaction_type>SALE</ssl_transaction_type>
<ssl_salestax/>
<ssl_avs_address/>
<ssl_account_balance>10.08</ssl_account_balance>
<ssl_ps2000_data>MMCC097C6C 0216E1</ssl_ps2000_data>
<ssl_state/>
<ssl_city/>
<ssl_result_message>DECLINED</ssl_result_message>
ssl_first_name/>
<ssl_invoice_number/>
<ssl_cvv2_response>U</ssl_cvv2_response>
<ssl_partner_app_id>01</ssl_partner_app_id>
</txn>