URL: http://www.elavon.com

Default Currency: USD

Developer Documentation:
https://developer.elavon.com/na/docs/converge/1.0.0/integration-guide/api_introduction (XML API)
https://demo.myvirtualmerchant.com/VirtualMerchantDemo/download/developerGuide.pdf

Gateway Endpoints
Production: https://api.convergepay.com/VirtualMerchant/processxml.do
Test: https://api.demo.convergepay.com/VirtualMerchantDemo/processxml.do

Supported Parameters:
* denotes a required field

Field NameTypeElavon MappingNotes
gatewaystringN/AElavon
merchantId*stringssl_merchant_idMerchant ID: Elavon-assigned Converge account ID
username*stringssl_user_idConverge User ID: The user ID with Hosted Payment API User status that can send transaction requests through the terminal
password*stringssl_pinTerminal ID: Unique identifier of the terminal that will process the transaction request and submit to the Converge gateway
amountnumericssl_amountTransaction amount in cents. Example: $10.00 should be sent as 1000
currencyCodestringssl_transaction_currencyCurrency of the transaction. Alpha-3 ISO currency code
Use the ISO 4217 three-letter alphabetic code for the currency.
* Only applicable to Card Authorize and Purchase
creditCard.Numberstringssl_card_numberCard number or TokenEx Token - TokenEx will replace the Token with the Detokenized number
creditCard.ExpMonthnumericssl_exp_dateThe customer’s credit card expiration month. 1 or 2 digit value. Example: 11
creditCard.ExpYearnumericssl_exp_dateThe customer’s credit card expiration year. 4 digit value. Example: 2025
creditCard.Cvvstringssl_cvv2cvc2Card verification value

Please refer to Tokenization, Detokenization and CVV Retrieval.
threeDSecure.CAVVstringssl_3dsecure_valueCardholder Authentication Verification (CAVV) (Visa)
Universal Cardholder Authentication Field (UCAF) (MasterCard)
Validates the integrity of the Verified by Visa (VbV) transaction data.
threeDSecure.ECIstringssl_eci_indeCommerce Indicator

5 - Fully authenticated (if eci = 02 or 05)
6 - Attempted VbV (if eci = 01 or 06)
7 - Non-VbV (if eci = 07)
threeDSecure.Xidstringssl_xidTransaction identifier. Unique transaction identifier generated by the Elavon Merchant Plug In (eMPI) engine.
threeDSecure.ThreeDSecureVersionstringssl_3ds_message_version1.0.2, 2.1.0, or 2.2.0.
threeDSecure.ThreeDSServerTransIdstringssl_3ds_server_trans_id3DS Server Transaction ID
threeDSecure.TransactionStatusstringssl_3ds_trans_statusTransaction Status (Y, N, U, etc.)
threeDSecure.TransactionStatusReasonstringssl_3ds_trans_status_reasonTransaction Status Reason
threeDSecure.DSTransIdstringssl_dir_server_tran_idDirectory Server Transaction Identification (ID)
threeDSecure.ProgramProtocolstringssl_program_protocol1 (Legacy 3DS - 1.0.2) or 2 (EMVCo - 2.0.0 +)
check.FirstNamestringssl_first_nameFirst name on the customer's account.
check.LastNamestringssl_last_nameLast name on the customer's account.
check.AccountNumberstringssl_bank_account_numberACH account number or TokenEx Token - TokenEx will replace the Token with the Detokenized number
check.RoutingNumberstringssl_aba_numberThe ABA routing number.
check.CheckNumberstringssl_check_numberThe number of the check.
check.AccountTypestringssl_bank_account_typeBank Account Type. Indicates the type of checking account.
Valid Values
0 - Checking
1 - CorporateChecking
agreementIndicatorstringssl_agreeAgreement Indicator.
Valid values
0 - Does not agree
1 - Agrees
processingOptionstringssl_ecs_product_codeACH Processing Option.
Valid values: WEB, TEL, PPD, CCD
Important:
IF ssl_bank_account_type = 0 (Checking), WEB, TEL or PPD is required.
IF ssl_bank_account_type = 1 (CorporateChecking) then CCD is required.
companyNamestringssl_companyCompany name on the customer's account (ACH Purchase).
orderInfo.PurchaseOrderNumberstringssl_customer_codeCustomer Code or Purchase Order Number
orderInfo.InvoiceNumberstringssl_invoice_numberInvoice/Ticket Number. Unique identifier of the invoice or ticket.
tax.Amountnumericssl_salestaxTax amount in cents. Example: $10.00 should be sent as 1000
tax.TaxIncludedInAmountbooleanssl_salestax_indicatorSales Tax Indicator. Whether tax is included on a transaction.
True = Sales Tax Included ("Y")
False = Tax Exempted Sale ("N")
shippingAddress.FirstNamestringssl_ship_to_first_nameFirst name associated with customer’s shipping address.
shippingAddress.LastNamestringssl_ship_to_last_nameLast name associated with customer’s shipping address.
shippingAddress.Address1stringssl_ship_to_address1First line of the shipping address
shippingAddress.Citystringssl_ship_to_cityCity of the shipping address
shippingAddress.Statestringssl_ship_to_stateState or province of the shipping address
shippingAddress.Zipstringssl_ship_to_zipPostal code for the shipping address
shippingAddress.Countrystringssl_ship_to_countryCountry Code. ISO country code.
billingAddress.FirstNamestringssl_first_nameFirst name associated with customer’s billing address.
billingAddress.LastNamestringssl_last_nameLast name associated with customer’s billing address.
billingAddress.Address1stringssl_avs_addressCustomer’s billing address.
billingAddress.Citystringssl_cityCity of customer’s billing address.
billingAddress.Statestringssl_stateState of customer’s billing address.
billingAddress.Zipstringssl_avs_zipThe postal code of customer’s billing address. Address Verification Service (AVS) data compared with the postal or ZIP code on the card issuer's file.
billingAddress.Countrystringssl_countryCountry Code. ISO country code.
billingAddress.Phonestringssl_phonePhone number associated with customer’s billing address.

Example Payloads:

{
    "merchantId": "<Your Elavon-assigned Converge account Id>",
    "username": "<Your Converge User Id>",
    "password": "<Your Terminal Id>",
    "tokenExTransactionCode": "<TokenExTransactionCode provided by Authorize/Purchase call>",
    "gateway": "Elavon",
    "testMode": true
}
{
    "merchantId": "<Your Elavon-assigned Converge account Id>",
    "username": "<Your Converge User Id>",
    "password": "<Your Terminal Id>",
    "tokenExTransactionCode": "<TokenExTransactionCode provided by Authorize/Purchase call>",
    "amount": 123,
    "gateway": "Elavon",
    "testMode": true
}
{
    "merchantId": "<Your Elavon-assigned Converge account Id>",
    "username": "<Your Converge User Id>",
    "password": "<Your Terminal Id>",
    "tokenExTransactionCode": "<TokenExTransactionCode provided by Authorize/Purchase/Capture call>",
    "gateway": "Elavon",
    "testMode": true
}
{
    "merchantId": "<Your Elavon-assigned Converge account Id>",
    "username": "<Your Converge User Id>",
    "password": "<Your Terminal Id>",   
    "agreementIndicator": "1",
    "processingOption": "PPD",
    "check": {
        "accountNumber": "987654321",
        "routingNumber": "021000021",
        "checkNumber": "123456789",
        "firstName": "John",
        "lastName": "Doe",
        "accountType": 1
    },
    "billingAddress": {
        "phone": "555-555-5555",
        "fax": "555-555-6666",
        "email": "[email protected]",
        "firstName": "John",
        "lastName": "Doe",
        "name": "John Doe",
        "company": "Test Co.",
        "address1": "123 Someplace Lane",
        "address2": null,
        "city": "Tulsa",
        "state": "OK",
        "zip": "74111",
        "country": "USA"
    },
    "amount": 1200,
    "gateway": "Elavon", 
    "testMode": true
}
Operation Not Supported By Elavon Gateway
{
    "merchantId": "<Your Elavon-assigned Converge account Id>",
    "username": "<Your Converge User Id>",
    "password": "<Your Terminal Id>",
    "tokenExTransactionCode": "<TokenExTransactionCode provided by Authorize/Purchase call>",
    "gateway": "Elavon",
    "testMode": true
}

Gateway Response Fields:

Field NameTypeTokenEx MappingNotes
approvalCodestringssl_approval_codeElavon approval code
approvedbooleanssl_resultTransaction Outcome
An ssl_result = 0 indicates an approved transaction.
An ssl_result not equal to 0 indicates a declined and unauthorized transaction.
providerTransactionCodestringssl_txn_idTransaction ID. Unique identifier of the transaction.