PINless Bill Pay - pldbillpay
Merchants that process both recurring transactions and PINless debit transactions can take advantage of PINless bill pay. PINless bill pay transactions can run after confirming that the card the transaction will charge to is valid using binlookup
.
In this section:
For the entire list of API endpoints, refer to API Endpoints.
Requirements
PINless bill pay is available on terminals with the following settings:
- Region set to USA
- Debit enabled
- PINless Debit Bill Pay enabled
- Eligible Merchant MCC/SIC Code
Process Flow
Before sending a request for a PINless bill pay transaction, you need to confirm that the card supports PINless bill pay as an option. To do this, send a binlookup
request and check for the following field/value combinations.
<debit>Y</debit>
<billPaymentSupport>Y</billPaymentSupport>
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: pldbillpay | Required | 20 | alphanumeric |
ssl_amount | Transaction Amount The base amount that does not include the Surcharge amount. Format: Number with 2 decimals places | Required | 11 | numeric |
ssl_customer_number | Customer/Payee Account Number Important: ssl_invoice_number will be replaced with ssl_customer_number | Required | 25 | numeric |
[Card Data] | ||||
ssl_card_number | Card Number Card Number as it appears on the debit card. | Required | 18 | numeric |
ssl_exp_date | Card’s Expiry Date Date when the card becomes invalid. Format: MMYY | Optional | 4 | numeric |
ssl_account_type | Bank Deposit Account Type Valid values:
| Required | 1 | numeric |
Response
Field name | Description |
---|---|
ssl_account_balance | Account Balance Available balance on the card. |
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_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_reference_number | Transaction Reference Number |
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/2022 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_card_number | Masked Card Number Converge only returns the first 2 or last 4 digits of the regular PAN. |
ssl_card_type | Payment Type Valid value: DEBITCARD |
ssl_account_type | Bank Deposit Account Type Valid values:
|
ssl_amount | Transaction Amount The total transaction amount that may include the Surcharge amount. |
[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.
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_customer_number>abcd1234</ssl_customer_number>
<ssl_transaction_type>PLDBILLPAY</ssl_transaction_type>
<ssl_card_number>4643********5518</ssl_card_number>
<ssl_exp_date>1220</ssl_exp_date>
<ssl_amount>1.00</ssl_amount>
</txn>
Responses
Successful Response
<txn>
<ssl_txn_time>02/05/2020 01:03:56 PM</ssl_txn_time>
<ssl_amount>1.00</ssl_amount>
<ssl_account_balance>0</ssl_account_balance>
<ssl_issuer_response>00</ssl_issuer_response>
<ssl_reference_number>47036</ssl_reference_number>
<ssl_result_message>APPROVAL</ssl_result_message>
<ssl_transaction_type>purchase</ssl_transaction_type>
<ssl_card_number>4643********5518</ssl_card_number>
<ssl_card_short_description/>
<ssl_result>0</ssl_result>
<ssl_txn_id>050220MB-8ADBA093-8747-414A-AB13-0BC946159B9B</ssl_txn_id>
<ssl_approval_code>774431</ssl_approval_code>
<ssl_card_type>debitcard</ssl_card_type>
</txn>
Card Not Eligible
<txn>
<errorCode>4027</errorCode>
<errorName>Payment Card Not Eligible for Debit Bill Pay</errorName>
<errorMessage>The provided payment card is not eligible for Debit Bill Pay.</errorMessage>
</txn>
PINless Bill Pay Not Enabled
<txn>
<errorCode>4014</errorCode>
<errorName>This terminal or user id is not permitted to process this transaction type.</errorName>
<errorMessage>Not Permitted</errorMessage>
</txn>