Completion - cccomplete

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

The cccomplete transaction places an approved Auth Only transaction into the open batch for settlement and converts the approved Auth Only transaction into a Sale transaction.

The supported completion types are as follows:

  • Full completion

    Send cccomplete with the Auth Only Transaction ID without any amount, if you wish to convert an existing Auth Only to Sale. The entire Auth Only transaction will move from the Auth Only batch to the Main batch for settlement.

  • Partial-completion

    Send cccomplete with the Auth Only Transaction ID with an amount that is less than the original Auth Only amount, if you wish to convert only a portion of the Auth Only to Sale. The Auth Only transaction will move from the Auth Only batch to the Main batch and the transaction will only be settled for smaller amount. The original Auth Only transaction cannot be used again.

  • Multi partial-completion

    Send cccomplete with the Auth Only Transaction ID with an amount that is less than the Auth Only amount and the Partial Shipment Indicator, this action will allow you to keep the unused portion of the Auth Only amount in the Auth Only batch, and convert only the desired portion to the Main batch. The Auth Only will remain in the Auth Only batch and multiple completions can be performed on the single Auth Only transaction until the total amount has been reached. Every completion will create a new fresh Sale.

note

  • Transaction status will not change. A pended Auth Only will be converted to a pended Sale. Users have to login to the application in order to unpend a transaction. Transactions set to pend will not settle until they are set to unpend.
  • A completion request for an amount higher than the original Auth Only is not allowed.
  • Users must have the Batches-Edit Transactions user right in order to complete a transaction.

In this section:

For the entire list of API endpoints, refer to API Endpoints.

Request

Field nameDescriptionRequiredLengthData type
ssl_merchant_idMerchant ID
Elavon-assigned Converge Account ID (AID).
Required6 or 7numeric
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:  cccomplete
Required20alphanumeric
ssl_txn_idTransaction ID
Unique identifier of the approved Auth Only (ccauthonly) transaction to be placed into the open batch for settlement.
Required46alphanumeric
ssl_amountTransaction Amount
The full, partial, or multi-partial Auth Only amount to convert.
Completion Types:
  • Full - Blank/Null
  • Partial - Less than the original Auth Only amount
  • Multi-partial - Less than the original Auth Only amount

Format: Number with 2 decimal places
Conditional11numeric
ssl_partial_shipment_flagPartial Shipment Indicator
Indicates whether the integrated application supports partial shipment.
Must be set to Y if performing a multi-partial completion.
Valid values:
  • Y - Partial shipment supported
  • N - Partial shipment not supported (default)
Conditional1alphanumeric
[Doing Business As]Use only on terminals that are set up with the DBA Name terminal option.
ssl_dynamic_dbaDoing Business As Name
Merchant-defined descriptors that replace the merchant’s business name on credit card statements.
Format: Prefix*Descriptor
Length: Prefix = 3, 7, or 12, Asterisk = 1,  Descriptor = 21 - (Prefix + Asterisk)
Important: DBA Prefix must be set using DBA Payment Fields Settings UI if ssl_dynamic_dba is used.
Example: MANYMAG*BAKERS MONTHLY
Conditional21alphanumeric
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.
Optional30alphanumeric
ssl_dynamic_dba_auth_typeMerchant ID
The dynamic doing business as authorization type.
Valid values:
  • F - Final
  • P - Pre-authorize
Optional1alphanumeric
ssl_dynamic_dba_cityDynamic City Name
This value allows a merchant use an alternate city as part of the address for this transaction
Optional13alphanumeric
ssl_dynamic_dba_countryDynamic Country ISO Code
This value allows a merchant specify an alternate country as part of the address for this transaction.
Optional3alphanumeric
ssl_dynamic_dba_emailDynamic Email Address
This value allows a merchant specify an alternate email address for this transaction.
Optional70alphanumeric
ssl_dynamic_dba_mccDynamic Merchant Category Code
This value allows a merchant specify an alternate merchant category for this transaction.
Optional22numeric
ssl_dynamic_dba_phoneDynamic Phone Number
This value allows a merchant specify an alternate phone number for this transaction.
Optional20alphanumeric
ssl_dynamic_dba_postalDynamic Postal or ZIP Code
This value allows a merchant set an alternate postal code for a transaction.
Optional9alphanumeric
ssl_dynamic_dba_stateDynamic State Code
This value allows a merchant set an alternate state code for a transaction.
Optional2alphanumeric
ssl_dynamic_dba_submidDynamic Sub-merchant ID
This value allows a merchant set an alternate sub-merchant ID for a transaction.
Optional22numeric
ssl_dynamic_dba_taxidDynamic Merchant Tax ID
This value allows a merchant set an alternate Tax ID for this transaction.
Optional14alphanumeric

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/2022 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_amountCompleted Transaction Amount
ssl_card_numberMasked Card Number
Converge only returns the first 2 or last 4 digits of the regular PAN, or the last 4 digits of the actual card number if it is an association token (example, ApplePay).
[Address Verification Service]
ssl_avs_responseAddress Verification Response Code
Refer to the AVS Response Codes section for a complete list of AVS response codes.
[Card Verification]
ssl_cvv2_responseCard Verification Response Code
Refer to the CVV2/CVC2 Response Codes section for a complete list of CVV/CVC2 response codes.
[Invoice Number]Returned based on merchant setup.
ssl_invoice_numberInvoice Number
The invoice number or ticket number sent in the original request.
[Dynamic Currency Conversion]Returned only if the terminal is set up with the Dynamic Currency credit card payment option.
Refer to the Dynamic Currency Conversion (DCC) section for more information on retrieving the following DCC transaction parameters.
ssl_conversion_rateConversion Rate
Exchange rate applied to the conversion of ssl_amount.
ssl_cardholder_amountCardholder Amount
Total amount in the cardholder’s billing currency.
[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.

Examples

important

  • In this example, 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.

Auth Only Transaction Response

    <txn>
        <ssl_result>0</ssl_result>
        <ssl_approval_code>N19032</ssl_approval_code>
        <ssl_result_message>APPROVAL</ssl_result_message>
        <ssl_txn_id>AA4843B-EEBFF0FE-0BDC-47A3-B4F6-5D752E2FBE42</ssl_txn_id>
        <ssl_txn_time>07/21/2021 05:27:42 PM</ssl_txn_time>
        <ssl_amount>3.00</ssl_amount>
        <ssl_salestax>0.01</ssl_salestax>
        <ssl_account_balance>0.00</ssl_account_balance>
        <ssl_card_number>00**********0000</ssl_card_number>
        <ssl_cvv2_response>M</ssl_cvv2_response>
        <ssl_avs_response>A</ssl_avs_response>
        <ssl_invoice_number>1234</ssl_invoice_number>
        <ssl_first_name>John</ssl_first_name>
        <ssl_last_name>Doe</ssl_last_name>
        <ssl_avs_address>123 Main</ssl_avs_address>
        <ssl_city>Atlanta</ssl_city>
        <ssl_avs_zip>30123</ssl_avs_zip>
        <ssl_state>GA</ssl_state>
        <ssl_country>USA</ssl_country>
        <ssl_dynamic_dba>123456789012*ABCCORP</ssl_dynamic_dba>
    </txn>

Full Completion Transaction

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_description>Keyed Sale API</ssl_description>
        <ssl_transaction_type>cccomplete</ssl_transaction_type>
        <ssl_txn_id>020522A40-6D2565B8-E78F-4D03-A4CB-E9B8A5F90D32</ssl_txn_id>
    </txn>

Response

<txn>
    <ssl_card_number>41**********1111</ssl_card_number>
    <ssl_oar_data>010012732105021524140000047554200000000000865365212215127321</ssl_oar_data>
    <ssl_result>0</ssl_result>
    <ssl_txn_id>020522A40-6D2565B8-E78F-4D03-A4CB-E9B8A5F90D32</ssl_txn_id>
    <ssl_avs_response></ssl_avs_response>
    <ssl_approval_code>865365</ssl_approval_code>
    <ssl_amount>5.00</ssl_amount>
    <customfeild2></customfeild2>
    <ssl_txn_time>05/02/2022 11:25:41 AM</ssl_txn_time>
    <ssl_exp_date>1222</ssl_exp_date>
    <ssl_base_amount></ssl_base_amount>
    <ssl_card_short_description>VISA</ssl_card_short_description>
    <ssl_credit_surcharge_amount></ssl_credit_surcharge_amount>
    <ssl_tip_amount></ssl_tip_amount>
    <ssl_customer_code></ssl_customer_code>
    <ssl_card_type>CREDITCARD</ssl_card_type>
    <ssl_transaction_type>COMPLETE</ssl_transaction_type>
    <ssl_salestax></ssl_salestax>
    <ssl_account_balance>0.00</ssl_account_balance>
    <ssl_ps2000_data>A000000000000000    A</ssl_ps2000_data>
    <ssl_result_message>APPROVAL</ssl_result_message>
    <ssl_server></ssl_server>
    <ssl_invoice_number></ssl_invoice_number>
    <ssl_cvv2_response></ssl_cvv2_response>
    <ssl_partner_app_id>01</ssl_partner_app_id>
</txn>

Partial Completion Transaction

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_description>Keyed Sale API</ssl_description>
    <ssl_transaction_type>cccomplete</ssl_transaction_type>
    <ssl_txn_id>200422A40-30D8BD75-B9A2-4774-A2A1-244552F1F3C0</ssl_txn_id>
    <ssl_amount>12.00</ssl_amount>
</txn>

Response

<txn>
    <ssl_card_number>41**********1111</ssl_card_number>
    <ssl_oar_data>010012963704202039190000047554200000000000410448211020129637</ssl_oar_data>
    <ssl_result>0</ssl_result>
    <ssl_txn_id>200422A40-30D8BD75-B9A2-4774-A2A1-244552F1F3C0</ssl_txn_id>
    <ssl_avs_response></ssl_avs_response>
    <ssl_approval_code>410448</ssl_approval_code>
    <ssl_amount>12.00</ssl_amount>
    <ssl_transaction_currency>USD</ssl_transaction_currency>
    <ssl_txn_time>04/20/2022 04:41:07 PM</ssl_txn_time>
    <ssl_exp_date>1222</ssl_exp_date>
    <ssl_card_short_description>VISA</ssl_card_short_description>
    <ssl_customer_code></ssl_customer_code>
    <ssl_card_type>CREDITCARD</ssl_card_type>
    <ssl_transaction_type>COMPLETE</ssl_transaction_type>
    <ssl_salestax>0.00</ssl_salestax>
    <ssl_account_balance>0.00</ssl_account_balance>
    <ssl_ps2000_data>A000000000000000 A</ssl_ps2000_data>
    <ssl_result_message>APPROVAL</ssl_result_message>
    <ssl_invoice_number></ssl_invoice_number>
    <ssl_cvv2_response></ssl_cvv2_response>
    <ssl_partner_app_id>01</ssl_partner_app_id>
</txn>

Multi Partial Completion Transaction

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_description>Keyed Sale API</ssl_description>
    <ssl_transaction_type>cccomplete</ssl_transaction_type>
    <ssl_txn_id>200422A40-60F5B885-2ECD-4FB4-B3C7-F8C6ADC6AC59</ssl_txn_id>
    <ssl_amount>4.00</ssl_amount>
    <ssl_partial_shipment_flag>Y</ssl_partial_shipment_flag>
</txn>

Response

<txn>
    <ssl_card_number>41**********1111</ssl_card_number>
    <ssl_result>0</ssl_result>
    <ssl_txn_id>200422E3A-35212378-8A64-42CD-86B1-F14DE4010582</ssl_txn_id>
    <ssl_avs_response></ssl_avs_response>
    <ssl_approval_code>410517</ssl_approval_code>
    <ssl_amount>4.00</ssl_amount>
    <ssl_transaction_currency>USD</ssl_transaction_currency>
    <ssl_txn_time>04/20/2022 04:48:03 PM</ssl_txn_time>
    <ssl_exp_date>1222</ssl_exp_date>
    <ssl_card_short_description>VISA</ssl_card_short_description>
    <ssl_customer_code></ssl_customer_code>
    <ssl_card_type>CREDITCARD</ssl_card_type>
    <ssl_transaction_type>COMPLETE</ssl_transaction_type>
    <ssl_salestax>0.00</ssl_salestax>
    <ssl_account_balance>0.00</ssl_account_balance>
    <ssl_ps2000_data>A000000000000000 A</ssl_ps2000_data>
    <ssl_result_message>APPROVAL</ssl_result_message>
    <ssl_invoice_number></ssl_invoice_number>
    <ssl_cvv2_response></ssl_cvv2_response>
    <ssl_partner_app_id>01</ssl_partner_app_id>
</txn>