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 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: dbpurchase
Required 20 alphanumeric
ssl_amount Transaction 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
Required 11 numeric
ssl_cashback_amount Cashback Amount
Amount to pay the cardholder for making a debit purchase transaction.
Format: Number with 2 decimal places
error_outline

important

Only applicable to terminals that are set up with the Cashback debit payment option.


Required 12 numeric
[Card Data]
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 76 alphanumeric
ssl_account_type Bank Deposit Account Type
Valid values:
0 - Checking
1 - Saving
Required 1 numeric
[PIN Pad] Values returned by the PIN Pad device.
ssl_dukpt DUKPT
Value used to encrypt the PIN of the cardholder.
Required 20 -
ssl_key_pointer Triple-DES DUKPT Pointer
Indicates the encryption key used on US debit transactions.
Valid value: T - Triple-DES DUKPT
Required 1 alphanumeric
ssl_pin_block Encrypted PIN Block
The encrypted personal identification number entered by the debit cardholder to authenticate ownership of the card.
Required 16 -
[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 to or update the transaction amount.
Format: Number with 2 decimals places
Optional 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
[Dynamic DBA]
ssl_dynamic_dba Dynamic 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.
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.
30 alphanumeric
ssl_dynamic_dba_auth_type Merchant ID
The dynamic doing business as authorization type.
Valid values:
F - Final
P - Pre-authorize
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
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.
3 alphanumeric
ssl_dynamic_dba_email Dynamic Email Address
This value allows a merchant specify an alternate email address for this transaction.
70 alphanumeric
ssl_dynamic_dba_mcc Dynamic Merchant Category Code
This value allows a merchant specify an alternate merchant category for this transaction.
22 numeric
ssl_dynamic_dba_phone Dynamic Phone Number
This value allows a merchant specify an alternate phone number for this transaction.
20 alphanumeric
ssl_dynamic_dba_postal Dynamic Postal or ZIP Code
This value allows a merchant set an alternate postal code for a transaction.
9 alphanumeric
ssl_dynamic_dba_state Dynamic State Code
This value allows a merchant set an alternate state code for a transaction.
2 alphanumeric
ssl_dynamic_dba_submid Dynamic Sub-merchant ID
This value allows a merchant set an alternate sub-merchant ID for a transaction.
22 numeric
ssl_dynamic_dba_taxid Dynamic Merchant Tax ID
This value allows a merchant set an alternate Tax ID for this transaction.
14 alphanumeric

Response

Field name Description
ssl_result Transaction Outcome
An ssl_result = 0 indicates an approved transaction.
An ssl_result not equal to 0 indicates a declined and unauthorized transaction.
ssl_result_message Transaction Result Message
Refer to the 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_reference_number Transaction Reference Number
ssl_card_number Masked Card Number
Converge only returns the first 2 or last 4 digits of the regular PAN.
ssl_exp_date Card's Expiry Date
Returned based on merchant setup.
ssl_account_type Bank Deposit Account Type
Valid values:
0 - Checking
1 - Saving
ssl_amount Transaction Amount
The total transaction amount that may include the Surcharge or Cashback amount.
ssl_cashback_amount Cashback Amount
Amount to pay the cardholder for making a debit purchase transaction.
Format: Number with 2 decimal places
error_outline

important

Only applicable to terminals that are set up with the Cashback debit payment option.

ssl_surcharge_amount Surcharge Amount
The fee that the merchant charges for the transaction as a cost for doing business.
Format: Number with 2 decimal places
error_outline

important

Only applicable to terminals that are set up with the Surcharge debit payment option.

ssl_email Email Address
The cardholder's or customer's email address. Returned based on merchant setup.
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.
[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.
[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.

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.