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

ssl_merchant_id
15 | numeric | required
Merchant ID
Elavon-assigned Converge account ID.
ssl_user_id
15 | alphanumeric | required
Converge User ID
The user ID with Hosted Payment API User status that can send transaction requests through the terminal.
ssl_pin
64 | alphanumeric | required
Terminal ID
Unique identifier of the terminal that will process the transaction request and submit to the Converge gateway.
Important: The ssl_user_id sending the transaction request must be associated with the terminal that will process the request.
ssl_transaction_type
20 | alphanumeric | required
Transaction Type
Value: dbpurchase
ssl_amount
11 | numeric | required
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
ssl_cashback_amount
12 | numeric | required
Cashback Amount
Amount to pay the cardholder for making a debit purchase transaction.
Important: Only applicable to terminals that are set up with the Cashback debit payment option.
Format: Number with 2 decimal places
[Card Data]
 
ssl_track_data
76 | alphanumeric | required
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 name, and the cardholder's last name.
ssl_account_type
1 | numeric | required
Bank Deposit Account Type
Valid values:
  • 0 - Checking
  • 1 - Saving
[PIN Pad]
Values returned by the PIN Pad device.
ssl_dukpt
20 | - | required
DUKPT
Value used to encrypt the PIN of the cardholder.
ssl_key_pointer
1 | alphanumeric | required
Triple-DES DUKPT Pointer
Indicates the encryption key used on US debit transactions.
Valid value: T - Triple-DES DUKPT
ssl_pin_block
16 | - | required
Encrypted PIN Block
The encrypted personal identification number entered by the debit cardholder to authenticate ownership of the card.
[Tip Processing]
Use only on terminals that are set up with the Market Segment set to Service.
ssl_tip_amount
11 | numeric | optional
Tip or Gratuity Amount
Amount to add or update to the transaction amount.
Format: Number with 2 decimals places
ssl_server
8 | alphanumeric | optional
Server ID
Unique identifier of the clerk, waiter, waitress or cashier.
ssl_shift
4 | alphanumeric | optional
Shift ID
Unique identifier of the time period, course or service type.
[Dynamic DBA]
&nbsp
ssl_dynamic_dba
21 | alphanumeric
Dynamic DBA

The dynamic doing business as name for this transaction.

Lets 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 preventing chargebacks.

This can prevent chargebacks by preventing users from seeing transactions attached to unrelated names on their payment card statements.

ssl_dynamic_dba_address
30 | alphanumeric
Dynamic DBA Address

The dynamic doing business as street address for this transaction.

This value lets a merchant use an alternate address for this transaction.

ssl_dynamic_dba_auth_type
1 | alphanumeric
Merchant ID

The dynamic doing business as authorization type.

Valid values:

  • F - Final
  • P - Pre-authorize
ssl_dynamic_dba_city
13 | alphanumeric
Dynamic City Name

The dynamic doing business as city name.

This value lets a merchant use an alternate city as part of the address for this transaction

ssl_dynamic_dba_country
3 | alphanumeric
Dynamic Country ISO Code

The dynamic doing business as International Standards Organization country code.

This value lets a merchant specify an alternate country as part of the address for this transaction.

ssl_dynamic_dba_email
70 | alphanumeric
Dynamic Email Address

The dynamic doing business as email address.

This value lets a merchant specify an alternate email address for this transaction.

ssl_dynamic_dba_mcc
22 | numeric
Dynamic Merchant Category Code

The dynamic doing business as merchant category code.

This value lets a merchant specify an alternate merchant category for this transaction.

ssl_dynamic_dba_phone
20 | alphanumeric
Dynamic Phone Number

The dynamic doing business as phone number.

This value lets a merchant specify an alternate phone number for this transaction.

ssl_dynamic_dba_postal
9 | alphanumeric
Dynamic Postal or ZIP Code

The dynamic doing business as postal code.

This value lets a merchant set an alternate postal code for a transaction.

ssl_dynamic_dba_state
2 | alphanumeric
Dynamic State Code

The dynamic doing business as state code.

This value lets a merchant set an alternate state code for a transaction.

ssl_dynamic_dba_submid
22 | numeric
Dynamic Sub-merchant ID

The dynamic doing business as sub merchant ID.

This value lets a merchant set an alternate sub-merchant ID for a transaction.

ssl_dynamic_dba_taxid
14 | alphanumeric
Dynamic Merchant Tax ID

The dynamic doing business as Merchant Tax ID.

This value lets a merchant set an alternate Tax ID for this transaction.

Response

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 Debit 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.
Important: Only applicable to terminals that are set up with the Cashback debit payment option.
Format: Number with 2 decimal places
ssl_surcharge_amount
 
Surcharge Amount
The fee that the merchant charges for the transaction as a cost for doing business.
Important: Only applicable to terminals that are set up with the Surcharge debit payment option.
Format: Number with 2 decimal places
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.