Purchase - dbpurchase

This section describes the message parameters for Debit Card Purchase transaction processing, which you can submit using the XML API integration method. Refer to the Integration Methods section for more information.

The dbpurchase transaction deducts the purchase amount from the debit cardholder’s checking or savings account, debiting the account immediately.

In this section:

Request

Field nameDescriptionRequiredLengthData type
ssl_merchant_idMerchant ID
Elavon-assigned Converge account ID.
Required15numeric
ssl_user_idConverge User ID
The user ID with Hosted Payment API User status that can send transaction requests through the terminal.
Required15alphanumeric
ssl_pinTerminal 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.
Required64alphanumeric
ssl_transaction_typeTransaction Type
Valid value:dbpurchase
Required20alphanumeric
ssl_amountTransaction Amount
The base amount that does not include the Cashback or Tip amount.
The system computes for the total amount to send for authorization.
Format: Number with 2 decimals places
Required11numeric
ssl_cashback_amountCashback Amount
Amount to pay the cardholder for making a debit purchase transaction.
Format: Number with 2 decimal places
Important: Only applicable to terminals that are set up with the Cashback debit payment option.
Required12numeric
[Card Data]
ssl_track_dataRaw 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.
Required76alphanumeric
ssl_account_typeBank Deposit Account Type
Valid values:
- 0 - Checking
- 1 - Saving
Required1numeric
[PIN Pad]Values returned by the PIN Pad device.
ssl_dukptDUKPT
Value used to encrypt the PIN of the cardholder.
Required20-
ssl_key_pointerTriple-DES DUKPT Pointer
Indicates the encryption key used on US debit transactions.
Valid value:T - Triple-DES DUKPT
Required1alphanumeric
ssl_pin_blockEncrypted PIN Block
The encrypted personal identification number entered by the debit cardholder to authenticate ownership of the card.
Required16-
[Tip Processing]Use only on terminals that are set up with the Market Segment set to Service
ssl_tip_amountTip or Gratuity Amount
Amount to add to or update the transaction amount.
Format: Number with 2 decimal places
Optional11numeric
ssl_serverServer ID
Unique identifier of the clerk, waiter, waitress or cashier.
Optional8alphanumeric
ssl_shiftShift ID
Unique identifier of the time period, course or service type.
Optional4alphanumeric
[Dynamic DBA]
ssl_dynamic_dbaDynamic DBA
The dynamic doing business as name for this transaction.
Allows a merchant specify, on a per-transaction basis, wording that may be more recognizable or more service-specific to the customer than their usual business name.
This can prevent chargebacks by preventing users from seeing transactions attached to unrelated names on their payment card statements.
21alphanumeric
ssl_dynamic_dba_addressDynamic DBA Address
The dynamic doing business as street address for this transaction.
This value allows a merchant use an alternate address for this transaction.
30alphanumeric
ssl_dynamic_dba_auth_typeMerchant ID
The dynamic doing business as authorization type.
Valid values:
- F - Final
- P - Pre-authorize
1alphanumeric
ssl_dynamic_dba_cityDynamic City Name
This value allows a merchant use an alternate city as part of the address for this transaction
13alphanumeric
ssl_dynamic_dba_countryDynamic Country ISO Code
This value allows a merchant specify an alternate country as part of the address for this transaction.
3alphanumeric
ssl_dynamic_dba_emailDynamic Email Address
This value allows a merchant specify an alternate email address for this transaction.
70alphanumeric
ssl_dynamic_dba_mccDynamic Merchant Category Code
This value allows a merchant specify an alternate merchant category for this transaction.
22numeric
ssl_dynamic_dba_phoneDynamic Phone Number
This value allows a merchant specify an alternate phone number for this transaction.
20alphanumeric
ssl_dynamic_dba_postalDynamic Postal or ZIP Code
This value allows a merchant set an alternate postal code for a transaction.
9alphanumeric
ssl_dynamic_dba_stateDynamic State Code
This value allows a merchant set an alternate state code for a transaction.
2alphanumeric
ssl_dynamic_dba_submidDynamic Sub-merchant ID
This value allows a merchant set an alternate sub-merchant ID for a transaction.
22numeric
ssl_dynamic_dba_taxidDynamic Merchant Tax ID
This value allows a merchant set an alternate Tax ID for this transaction.
14alphanumeric

Response

Field nameDescription
ssl_resultTransaction Outcome
An ssl_result = 0 indicates an approved transaction.
An ssl_result not equal to 0 indicates a declined and unauthorized transaction.
ssl_result_messageTransaction Result Message
Refer to the Payment Card Response Codes section for an extensive list of possible returned messages.
ssl_txn_idTransaction ID
Unique identifier of the transaction.
ssl_txn_timeProcessing 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_codeTransaction Approval Code
Unique code returned by the credit card processor that indicates the approval status of the transaction.
ssl_reference_numberTransaction Reference Number
ssl_card_numberMasked Card Number
Converge only returns the first 2 or last 4 digits of the regular PAN.
ssl_exp_dateCard’s Expiry Date
Returned based on merchant setup.
ssl_account_typeBank Deposit Account Type
Valid values:
- 0 - Checking
- 1 - Saving
ssl_amountTransaction Amount
The total transaction amount that may include the Surcharge or Cashback amount.
ssl_cashback_amountCashback Amount
Amount to pay the cardholder for making a debit purchase transaction.
Format: Number with 2 decimal places
Important: Only applicable to terminals that are set up with the Cashback debit payment option.
ssl_surcharge_amountSurcharge Amount
The fee that the merchant charges for the transaction as a cost for doing business.
Format: Number with 2 decimal places
[notice important Only applicable to terminals that are set up with the Surcharge debit payment option.
ssl_emailEmail Address
The cardholder’s or customer’s email address. Returned based on merchant setup.
ssl_promo_listPromotion 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.
[Tip Processing]Returned only if Tip parameters are sent in the request.
ssl_base_amountBase Amount
Original transaction amount sent in the request. Returned based on the terminal setup.
ssl_tip_amountTip Amount
Added or updated tip or gratuity amount. Returned based on the terminal setup.
ssl_serverServer ID
Server identifier sent in the request. Returned based on the terminal setup.
ssl_shiftShift
Shift information sent in the request. Returned based on the terminal setup.
[Error]Returned only if an error occurs. Refer to the Error Codes section for more information.
errorCodeError 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.
errorMessageError Message
Detailed explanation of the error. This field may be changed based on merchant configuration in the user interface.
errorNameError Name
Error name or reason for the error.

Integration with Loyalty Program Transactions

The Debit Card Purchase 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 Debit Card Purchase 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 Debit Card Purchase transaction using the rewards information and new discounted amount. At this point, the Debit Card Purchase 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 Debit Card Purchase’s original transaction amount. At this point, the Debit Card Purchase 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 Debit Card Purchase transaction using the rewards information and new discounted amount. At this point, the Debit Card Purchase 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 Debit Card Purchase 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 Debit Card Purchase 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 Debit Card Purchase transaction using the rewards information and new discounted amount. At this point, the Debit Card Purchase and Loyalty Program transactions are complete.