CDS343

EVO CARD NOT PRESENT PROCESSING

Last Revised: 03/11/19

This document identifies fields used by CDS343 for processing EVO card-not-present transactions, such as mail order, phone order, and eCommerce payments. CDS343 can be called both by foreground and background tasks such as web applications.

S343 Arguments
Argument Passed To/From Variable Typical Length Required Default EVO Variable Description
S343$ To .ACTION$ 25 Y   action Function to perform. See additional TABS for defined functions and requirements for each
  To .MODE$ 1 Y     P=Production, T=Test
  To .MERCHANT_CODE$ 25 Y   code Merchant Code assigned by EVO to the Merchant. Note that this is not the Merchant ID.
  To .AUTHKEY$ 25 Y   authkey Authentication Key assigned by EVO to the Merchant.
  To/From .MERCH_ORDERID$ 20 Y   merchant_order_id This field must be unique for all new authorizations and charges. You can leave it blank and CDS343 will assign a unique numeric value. You can also include text as well as the CDS343 assigned value by passing a value such as "DW(CC20ID)". (CC220ID) will be replaced with the unique value resulting in a value such as DW1234.
  To .CUSTOMERID$ 8     merchant_customer_id Identifier of the customer making the purchase
  To .FIRSTNAME$ 20     first_name First Name of the customer making the purchase. Used on Snap generated receipt
  To .LASTNAME$ 20     last_name Last Name of the customer making the purchase. Used on Snap generated receipt
  To .PHONENO$ 12     phone Phone number of customer making purchase
  To .EMAIL$ 30 Y   email Email of customer making purchase. Used for emailing of receipt.
  To .TOT_SUBTOTAL 13 Y   total_subtotal Line Items Subtotal
  To .TOT_TAX 13     total_tax Total Tax. MUST balance to sum of Order_Item_Tax when set
  To .TOT_SHIPPING 13     total_shipping Total Shipping/Handling
  To .TOT_DISCOUNT 13     total_discount Total Discount
  To .AMT 13 Y   total Grand Total. MUST balance to DETAIL + TAX + SHIPPING + DISCOUNT. Used in 'order', 'subs', 'combo', 'token', 'credit', 'token': ALWAYS POSITIVE
  To .ITEM_SKU$[100] 20 Y   order_item[sku] Item number. Will print on Snap* Hosted Payment Receipt
  To .ITEM_NAME$[100] 20 Y   order_item[name] Item description. Will print on Snap* Hosted Payment Receipt
  To .ITEM_QTY[100] 9 Y   order_item[qty] Quantity of Item. Will print on Snap* Hosted Payment Receipt
  To .ITEM_PRICE[100] 8 Y   order_item[price] EA Price of Item. Will print on Snap* Hosted Payment Receipt
  To .ITEM_TAX[100] 9 Y   order_item[tax] Tax per EA of Item. If TOT_TAX is set, Sum MUST match TOT_TAX
  To/From .RETURNURL$ 25   HTTP referrer return_url After the user enters the cardholder information on the EVO payment page, the browser will return to this address. Note that you can include (CC20ID) anywhere in the RETURNURL which will be replaced with the CC20.CC20ID unique transaction identifier, i.e., "https://www.mysite.com/cgi-bin/ds.cgi?p=DW030&CC20ID=(CC20ID)"
  To .CANCELURL$ 25   HTTP referrer cancel_url URL to return the end user to when they 'Cancel' payment
  To .AUTORETURN 1     auto_return BOOLEAN: 1=Bypass Snap* Hosted Payments 'Thank You' page
  To .CHKOUTLAYOUT$ 6     checkout_layout "iframe" = optimizes Snap* Hosted Payments for use inside an embedded integration. Omitting this parameter redirects the browser to the merchant specific checkout URL
  To .CREATETOKEN 1     create_token BOOLEAN: 'order' or 'subscription' only. Stores payment account information for future use. TOKEN='MERCH_ORDERID' value + "-ODT-1". A TOKEN is NOT an authorization for any amount. It is possible to have a TOKEN and on subsequent use be declined for over credit limit, account closed etc...
  To .TOKEN$ 255     merchant_token_id MUST be unique. Used in 'token', 'process_token', 'get_token' functions. Merchant identifier for the payment account. If TOKEN created using 'CREATETOKEN" parameter the TOKEN will be 'MERCH_ORDERID' + "-ODT-1"
  To .CREATEDSTART$ 20     created[start] Used in 'get_orders' and 'get_callbacks' functions. Starting order/callback creation date/time. Format: MM/DD/YYYY HH:MM:SS. Date must have all digits represented. If TIME used, all digits must be represented using 24 hour Clock.
  To .CREATEDEND$ 20     created[end] Used in 'get_orders' and 'get_callbacks' functions. Ending order/callback creation date/time. Format: MM/DD/YYYY HH:MM:SS. Date must have all digits represented. If TIME used, all digits must be represented using 24 hour Clock.
  To .UPDATEDSTART$ 20     updated[start] Used in 'get_orders' function. Starting order update date/time. Format: MM/DD/YYYY HH:MM:SS. Date must have all digits represented. If TIME used, all digits must be represented using 24 hour Clock.
  To .UPDATEDEND$ 20     updated[end] Used in 'get_orders' function. Ending order update date/time. Format: MM/DD/YYYY HH:MM:SS. Date must have all digits represented. If TIME used, all digits must be represented using 24 hour Clock.
  To .LASTSENTSTART$ 20     lastsent[start] Used in 'get_callbacks' function. Starting callback last sent date/time. Format: MM/DD/YYYY HH:MM:SS. Date must have all digits represented. If TIME used, all digits must be represented using 24 hour Clock.
  To .LASTSENTEND$ 20     lastsent[end] Used in 'get_callbacks' function. Ending callback last sent date/time. Format: MM/DD/YYYY HH:MM:SS. Date must have all digits represented. If TIME used, all digits must be represented using 24 hour Clock.
  To .RESPONSE_CODE 3     response_code Used in 'get_callbacks' function. HTTP response code
  To .START 4   0 start Used in 'get_callbacks' function. Starting record number
  To .LIMIT 3   20 limit Used in 'get_callbacks' function. Number of rows to return from Starting record number
               
  To/From .ORDERID$ 32     transactions.txn_id Transaction ID of the last transaction processed against the 'MERCH_ORDERID'. In 'credit' function, this will be the payment transaction id of the original 'Sale'. This is the Snap TXN_ID. Unique transaction number generated by card processor.Pass to CDS343 when CREDITING a prior charge.
  To/From .STATUS 10     status Returned from Check Out processing for 'order', 'subs', 'combo', 'token'.
              Pending: Checkout/Payment has not completed. Possibly due to 1) Disconnect or TIMED OUT during Checkout,
              Paid: Checkout/Payment completed
              Canceled: User clicked CANCEL button during Checkout and CONFIRMED response.
              Refunded = Paid then CREDIT applied. Partial, full could be considered a VOID. EVO makes no differentiation betweek FULL CREDIT/REFUND and VOID.
              TIMED OUT: Checkout/Payment TIMED OUT. Status of 'order' transaction never progressed beyond "Pending". Waited for 5 minutes.
  From .PAYMENTURL$ 25     url This field is set by CDS343 and is used with web when calling CDS343 within a web application. After calling CDS343, the calling web application should open the broswer to the PAYMENTURL.
  From .ACCT_NUM$ 20     transactions.acct_num Account number of last card processed against the 'MERCH_ORDERID' Masked nnnn-nnxx-xxxx-nnnn where 'n' is a number and 'x' is the letter'x'
  From .ACCT_TYPE$ 10     transactions.scct_type Account type (VISA, M/C, DISCOVER, etc) of last card processed against the 'MERCH_ORDERID'
  From .APPROVALCODE$ 10     transactions.approval_code Approval Code of the last transactoin processed against the 'MERCH_ORDERID'
  From            
  From .ORIGIN$ 1       "E" if PROD, "T" if TEST
  From .GETORDERSLIST 50       Pipe delimited list of returned MERCH_ORDERID's
  From .ERROR 1       Identifies error source. 1=Gateway error, 2=Internal error, 3=Error on COMM open, 7=Missing Credentials, 8=Missing server command-openssl, 9=No response from processor for 30 seconds.
  From .GWRESPMESG$ 50       Any error message returned here. In concert with .ERROR
  From .CARDTYPE$ 1       C=Credit, D=Debit. See Line 11, ACCT_TYPE. If .ACCT_TYPE contains 'debit' .CARDTYPE is set to "D"
  From .JSONFROM$ 100+   Calculated   JSON formatted text received from Snap* Hosted Payments.Also useful for debugging purposes
               
               
  Rarely used variables          
  From .MAC$ 32   Calculated mac Calculated based on supplied values and automatically inserted into message sent to Snap* Hosted Payments
  From .RETURN$ 10   json return Forced to be 'json' . Fromat to return responses from EVO
  From .CREDIT_AMOUNT 13   Calculated amount Amount to CREDIT for 'credit' function. Partial amounts are allowed. Never reported as a negative..AMT isused for 'credit' function
  From .AUTH_AMOUNT 13   Calculated token[auth_amount] Amount to AUTHORIZE for 'token' function. Not used for 'order' function. .AMT is used for 'token' function
  From .CURRENCYCODE$ 3   USD currency_code  
  From .LANGUAGE 3   ENG language  
  From .CUSTOMERJSON$ 25   Calculated   Customer Information json structure submitted in message to Snap* Hosted Payments. Useful for debugging
  From .ORDERJSON$ 25   Calculated   Order Detail Information json structure submitted in message to Snap* Hosted Payments. Ueeful for debugging
  From .ITEMJSON$ 25   Calculated   Order Item Information json structure submitted in message to Snap* Hosted Payments. Useful for debugging
  From .TOKENJSON$ 25   Calculated   Used in 'token' function. Token Detail json structure sumbitted in message to Snap* Hosted Payments to create a TOKEN. Useful for debugging
  From .TOKENORDERJSON$ 25   Calculated   Used in 'process_token' function. Token Order Detail json structure submitted in message to Snap* Hosted Payments. Useful for debugging
  From .MSGTO$ 100+   Calculated   Message send to Snap* Hosted Payments. Useful only for debugging purposes. NOT URLENCODED
  From .JSONFROM$ 100+   Calculated   JSON formatted test received from Snap* Hosted Payments. Useful only for debugging purposes
  From .PROCESS 1     process Returned by 'get_order'. BOOLEAN: 1 = Processed by Snap* Hosted Payments, 0 = processed outside and inserted via web service
  To .ENABLE3D 1     enable_3d BOOLEAN: For use in EUROPE ONLY
  To .BILLTO_COMPANY$ 20     billto_company  
  To .BILLTO_FNAME$ 20   .FIRSTNAME billto_first_name  
  To .BILLTO_LNAME$ 20   .LASTNAME billto_last_name  
  To .BILLTO_POBOX$ 20     billto_po_box_number  
  To .BILLTO_HOUSENO$ 10     billto_house_number  
  To .BILLTO_ADDR1$ 20     billto_address1  
  To .BILLTO_ADDR2$ 20     billto_address2  
  To .BILLTO_CITY$ 20     billto_city  
  To .BILLTO_STATE$ 2     billto_state  
  To .BILLTO_COUNTRY$ 2     billto_country  
  To .BILLTO_ZIPCODE$ 10     billto_zipcode  
  To .SHIPTO_COMPANY$ 20     shipto_company  
  To .SHIPTO_FNAME$ 20     shipto_first_name  
  To .SHIPTO_LNAME$ 20     shipto_last_name  
  To .BILLTO_POBOX$ 20     shipto_po_box_number  
  To .SHIPTO_HOUSENO$ 10     shipto_house_number  
  To .SHIPTO_ADDR1$ 20     shipto_address1  
  To .SHIPTO_ADDR2$ 20     shipto_address2  
  To .SHIPTO_CITY$ 20     shipto_city  
  To .SHIPTO_STATE$ 2     shipto_state  
  To .SHIPTO_COUNTRY$ 2     shipto_country  
  To .SHIPTO_ZIPCODE$ 10     shipto_zipcode  
  To .SHIPMETHOD$ 20     ship_method  
Following fields are from original S347 template. Not needed fields have been removed  
  Line 40 .ORDERID$ 32       This is the Snap TXN_ID. Unique transaction number generated by card processor. Pass to CDS343 when CREDITING/VOIDING a prior charge.
  Line 19 .AMT 13       This is the Snap TOTAL.
  Line 45 .AUTHNO 8       Not returned by Snap*, Use APPROVALCODE in its place

 

Order
Argument Passed To/From Variable Typical
Length
Required Default Description
ERR= N/A         Takes error branch if any of the required gateway arguments are not provided, or if the openssl command is not found in the PATH, or if there is no reply from the processor within 30 seconds.
Y$ To   N/A Y   Session Control Variable
S343$ To .ACTION$ 25 Y   order
  To .MODE$ 1 Y   P=Production, T=Test
  To .MERCHANT_CODE$ 25 Y   Payment processor merchant ID.
  To .AUTHKEY$ 25 Y   Payment processor Autentication Key
  To .MERCH_ORDERID$ 20 Y   MUST be unique when used in 'order', 'subs', 'combo', 'token' functions that create a 'Checkout ID - Payment URL'. Dynamo will use Payment ID. Each "MERCH_ORDERID" order object contains applied 'transactions'. EX: split payments will have a transaction for each payment. The 'transaction' still needs to be parsed to determine ACCT_NUM, ACCT_TYPE, TXN_ID, APPROVALCODE, etc... Dynamo will have a single transaction for each "MERCH_ORDERID". A CREDIT will need to be applied to a specific "MERCH_ORDERID"/payment using the Payment .ORDERID$ (TXN_ID) of the original 'sale' stored in xxSO49
  To .CUSTOMERID$ 8     Identifier of the customer making the purchase. Testing without customer information did NOT create any exceptions
  To .FIRSTNAME$ 20     First Name of the customer making the purchase. Used on Snap generated receipt
  To .LASTNAME$ 20     Last Name of the customer making the purchase. Used on Snap generated receipt
  To .PHONENO$ 12     Phone number of customer making purchase
  To .EMAIL$ 30 Y   Email of customer making purchase. Used for emailing of receipt. Must be a valid email address per EVO. Dynamo defaults to CW11.SNAPEMAIL$
  To .TOT_SUBTOTAL 13.2 Y   Line Items Subtotal
  To .TOT_TAX 13.2     Total Tax. MUST balance to sum of Order_Item_Tax when set
  To .TOT_SHIPPING 13.2     Total Shipping/Handling
  To .TOT_DISCOUNT 13.2     Total Discount
  To .AMT 13.2 Y   Grand Total. MUST balance to DETAIL + TAX + SHIPPING + DISCOUNT. Used in 'order', 'subs', 'combo', 'token', 'credit', 'token': ALWAYS POSITIVE
  To .ITEM_SKU$[100] 20 Y   Item number. Will print on Snap* Hosted Payment Receipt
  To .ITEM_NAME$[100] 20 Y   Item description. Will print on Snap* Hosted Payment Receipt
  To .ITEM_QTY[100] 9.0 Y   Quantity of Item. Will print on Snap* Hosted Payment Receipt
  To .ITEM_PRICE[100] 8.2 Y   EA Price of Item. Will print on Snap* Hosted Payment Receipt
  To .ITEM_TAX[100] 8.2 Y   Tax per EA of Item. If TOT_TAX is set, Sum MUST match TOT_TAX
  To .RETURNURL$ 25   HTTP referrer URL to return the end user to after successful payment. Dynamo defaults to CW11.SNAPRETURNURL$
  To .CANCELURL$ 25   HTTP referrer URL to return the end user to when they 'Cancel' payment. Dynamo defaults to CW11.SNAPCANCELURL$
  To .AUTORETURN 1   0 BOOLEAN: 1=Bypass Snap* Hosted Payments 'Thank You' page. Dynamo default=1
  To .CHKOUTLAYOUT$ 6     "iframe" = optimizes Snap* Hosted Payments for use inside an embedded integration. Omitting this parameter redirects the browser to the merchant specific checkout URL. Dynamo default=iframe
  To .CREATETOKEN 1   0 BOOLEAN: 'order' or 'subscription' only. Stores payment account information for future use. TOKEN='MERCH_ORDERID' value + "-ODT-1". A TOKEN is NOT an authorization for any amount. It is possible to have a TOKEN and on subsequent use be declined for over credit limit, account closed etc... Dynamo default=1
  To/From .ORDERID$ 32     Transaction ID of the last transaction processed against the 'MERCH_ORDERID'. In 'credit' function, this will be the payment transaction id of the original 'Sale'. This is the Snap TXN_ID. Unique transaction number generated by card processor.Pass to CDS343 when CREDITING a prior charge. Dynamo stores in SO49.ORDERID$
  To/From .STATUS 10     Returned from Check Out processing for 'order', 'subs', 'combo', 'token'.
            Pending: Checkout/Payment has not completed. Possibly due to 1) Disconnect or TIMED OUT during Checkout,
            Paid: Checkout/Payment completed
            Canceled: User clicked CANCEL button during Checkout and CONFIRMED response.
            Refunded = Paid then CREDIT applied. Partial, full could be considered a VOID. EVO makes no differentiation betweek FULL CREDIT/REFUND and VOID.
            TIMED OUT: Checkout/Payment TIMED OUT. Status of 'order' transaction never progressed beyond "Pending". Waited for 5 minutes.
  From .ACCT_NUM$ 20     Account number of last card processed against the 'MERCH_ORDERID' Masked nnnn-nnxx-xxxx-nnnn where 'n' is a number and 'x' is the letter'x'
  From .ACCT_TYPE$ 10     Account type (VISA, M/C, DISCOVER, etc) of last card processed against the 'MERCH_ORDERID'
  From .APPROVALCODE$ 10     Approval Code of the last transactoin processed against the 'MERCH_ORDERID'
  From .ORIGIN$ 1     "E" if PROD, "T" if TEST
  From .ERROR 1     Identifies error source. 1=Gateway error, 2=Internal error, 3=Error on COMM open, 7=Missing Credentials, 8=Missing server command-openssl, 9=No response from processor for 30 seconds.
  From .GWRESPMESG$ 50     Any error message is returned here. In concert with .ERROR
  From .CARDTYPE$ 1     C=Credit, D=Debit. If .ACCT_TYPE contains 'debit' .CARDTYPE is set to "D"
  From .JSONFROM$ 100+     JSON formatted text received from Snap* Hosted Payments for last 'get_order' function. Useful for debugging purposes

 

Credit
Argument Passed To/From Variable Required Default Description
ERR= N/A       Takes error branch if any of the required gateway arguments are not provided, or if the openssl command is not found in the PATH, or if there is no reply from the processor within 30 seconds.
Y$ To   Y   Session Control Variable
S343$ To .ACTION$ Y   credit
  To .MODE$ Y   P=Production, T=Test
  To .MERCHANT_CODE$ Y   Payment processor merchant ID.
  To .AUTHKEY$ Y   Payment processor Autentication Key
  To .MERCH_ORDERID$ Y   Original Payment MERCH_ORDERID for applying CREDIT agains.
  To .AMT Y   Amount of CREDIT to apply. If ZERO, the entire amout of the original transaction will be credited. The transaction will fail if .AMT exceeds original transaction amount less any previous credits and will be reported in .ERROR and .GWRESPMESG$. .JSONFROM$ contains the full error message returned from the gateway including the maximum amout of CREDIT that can be applied.
  To/From .ORDERID$     Pass to CDS343 when CREDITING a prior charge. Dynamo should store in SO49.ORDERID$. A NEW ORDERID is returned If CREDIT approved. This NEW ORDERID SHOULD NOT REPLACE ORIGINAL ORDERID FROM INITIAL CHECKOUT otherwise additional credits will not be able to be applied to the initial checkout.
  From .STATUS     "Approved" returned if CREDIT processed. Otherwise the standard transaction failure message is returned in .ERROR and .GWRESPMESG$. .JSONFROM$ contains the full error message returned from the gateway.
  From .ERROR     Identifies error source. 1=Gateway error, 2=Internal error, 3=Error on COMM open, 7=Missing Credentials, 8=Missing server command-openssl, 9=No response from processor for 30 seconds.
  From .GWRESPMESG$     Any error message is returned here. In concert with .ERROR
  From .JSONFROM$   Calculated JSON formatted text received from Snap* Hosted Payments.Also useful for debugging purposes
           
          {"success":true,"status":"Approved","txn_id":"958432E379CD4A2689A2E7F1163839E7"}
Function:          
Apply CREDITS to a previous card not present payment transaction  
  Used for VOIDS,REFUNDS, CREDITS    
  VOID: Process CREDIT for full amount of original payment transaction
  REFUNDS Process CREDIT for full or partial amount of original payment transaction
  CREDIT Process CREDIT for full or partial amount of original payment transaction
    See Description for .ORDERID$ regarding replacing the original ORDERID in the SO49 payment record.

 

Get Orders
Argument Passed To/From Variable Required Default Description
ERR= N/A       Takes error branch if any of the required gateway arguments are not provided, or if the openssl command is not found in the PATH, or if there is no reply from the processor within 30 seconds.
Y$ To   Y   Session Control Variable
S343$ To .ACTION$ Y   get_orders
  To .MODE$ Y   P=Production, T=Test
  To .MERCHANT_CODE$ Y   Payment processor merchant ID.
  To .AUTHKEY$ Y   Payment processor Autentication Key
  To CREATEDSTART$     Starting order CREATION date/time
  To CREATEDEND$     Ending order CREATION date/tim
  To UPDATEDSTART$     Starting order UPDATE date/time
  To UPDATEDEND$     Ending order UPDATE date/time
  To .STATUS     1=pending, 2=paid, 3=canceled, 4=refunded
  From .GETORDERSLIST     Pipe delimited list of returned MERCH_ORDERID's. If S343.GETORDERSLIST$ not empty, Use CALL"CDS031",S343.GETORDERSLIST$,0,FLD$[ALL],FLDS to parse list of MERCH_ORDERID's into the FLD$[ALL] array that has FLDS indexes
  From .ERROR     Identifies error source. 1=Gateway error, 2=Internal error, 3=Error on COMM open, 7=Missing Credentials, 8=Missing server command-openssl, 9=No response from processor for 30 seconds.
  From .GWRESPMESG$     Any error message is returned here. In concert with .ERROR
  From .JSONFROM$     JSON formatted text received from Snap* Hosted Payments. Useful for debugging purposes
           
          Date/time format:
          MM/DD/YYYY HH:MM:SS
          Note that the dates must be formatted correctly:  they’re expected in the format “MM/DD/YYYY 2-digit-24-hour:2-digit-minute:2-digit-second
          TIME is not required. Not sure what time zone these are relative to.
Function:          
Return list of "MERCH_ORDERID" based on supplied selection criteria. ALL merchant's orders are returned if no parameters are provided.
           
        JSONFROM$ Example: {"success":true,"orders":["123456789","123456789A","123456789B","123456789C","35654","35654-a","order15278704013","order1532618748","order1532618925","order1532618987","order1532619202","order1532619204","order1532962144","order1532962522","order1532981084","order1533052879","refundable"]}

 

Get Order
Argument Passed To/From Variable Required Default Description
ERR= N/A       Takes error branch if any of the required gateway arguments are not provided, or if the openssl command is not found in the PATH, or if there is no reply from the processor within 30 seconds.
Y$ To   Y   Session Control Variable
S343$ To .ACTION$ Y   get_order
  To .MODE$ Y   P=Production, T=Test
  To .MERCHANT_CODE$ Y   Payment processor merchant ID.
  To .AUTHKEY$ Y   Payment processor Autentication Key
  To .MERCH_ORDERID$ Y   Original Payment MERCH_ORDERID for applying CREDIT agains.
  From .STATUS     Pending: Checkout/Payment has not completed. Possibly due to 1) Disconnect or TIMED OUT during Checkout,
          Paid: Checkout/Payment completed
          Canceled: User clicked CANCEL button during Checkout and CONFIRMED response.
          Refunded = Paid then CREDIT applied. Partial, full could be considered a VOID. EVO makes no differentiation betweek FULL CREDIT/REFUND and VOID.
  From .ACCT_NUM$     Masked CC number reported in LAST transaction
  From .ORDERID$     Transaction ID reported in LAST transaction
  From .APPROVALCODE     Approval Code reported in LAST transaction
  From .ACCT_TYPE     CC Type reported in LAST transaction.VISA, etc..
  From .ERROR     Identifies error source. 1=Gateway error, 2=Internal error, 3=Error on COMM open, 7=Missing Credentials, 8=Missing server command-openssl, 9=No response from processor for 30 seconds.
  From .GWRESPMESG$     Any error message is returned here. In concert with .ERROR
  From .JSONFROM$     JSON formatted text received from Snap* Hosted Payments. Contains FULL Order Object in JSON format
           
           
Function:          
Retrieve COMPLETE order object for requested MERCH_ORDERID.  
  There may be multiple transactions associated with the MERCH_ORDERID.
  The initial payment transaction should be first unless declined attempts at payment were made during the check out (payment) process
  Any applied CREDITS would follow the successful payment transaction. Failed CREDITS are not saved as a transaction
  Following fields are returned from the most recent/last transaction:
    .ACCT_NUM$ Masked CC number reported in LAST transaction
    .ORDERID$ Transaction ID reported in LAST transactin
    .APPROVALCODE Approval Code reported in LAST Transaction
    .ACCT_TYPE CC Type reported in LAST transaction

 

Get Orders by Transaction ID
Argument Passed To/From Variable Required Default Description
ERR= N/A       Takes error branch if any of the required gateway arguments are not provided, or if the openssl command is not found in the PATH, or if there is no reply from the processor within 30 seconds.
Y$ To   Y   Session Control Variable
S343$ To .ACTION$ Y   get_order_by_txn_id
  To .MODE$ Y   P=Production, T=Test
  To .MERCHANT_CODE$ Y   Payment processor merchant ID.
  To .AUTHKEY$ Y   Payment processor Autentication Key
  To .ORDERID$ Y   Original Payment ORDERID (txn_id) for applying CREDIT agains.
  From .STATUS     Pending: Checkout/Payment has not completed. Possibly due to 1) Disconnect or TIMED OUT during Checkout,
          Paid: Checkout/Payment completed
          Canceled: User clicked CANCEL button during Checkout and CONFIRMED response.
          Refunded = Paid then CREDIT applied. Partial, full could be considered a VOID. EVO makes no differentiation betweek FULL CREDIT/REFUND and VOID.
  From .ACCT_NUM$     Masked CC number reported in LAST transaction
  From .ORDERID$     Transaction ID reported in LAST transaction
  From .APPROVALCODE     Approval Code reported in LAST transaction
  From .ACCT_TYPE     CC Type reported in LAST transaction.VISA, etc..
  From .ERROR     Identifies error source. 1=Gateway error, 2=Internal error, 3=Error on COMM open, 7=Missing Credentials, 8=Missing server command-openssl, 9=No response from processor for 30 seconds.
  From .GWRESPMESG$     Any error message is returned here. In concert with .ERROR
  From .JSONFROM$     JSON formatted text received from Snap* Hosted Payments. Contains FULL Order Object in JSON format
           
          NEEDS TO BE TESTED, ALL ATTEMPTS HAVE FAILED. EVO SUPPORT HAS BEEN NOTIFIED. WAITING FOR RESOLUTION
Function:          
Retrieve COMPLETE order object for requested MERCH_ORDERID.  
  There may be multiple transactions associated with the MERCH_ORDERID.
  The initial payment transaction should be first unless declined attempts at payment were made during the check out (payment) process
  Any applied CREDITS would follow the successful payment transaction. Failed CREDITS are not saved as a transaction
  Following fields are returned from the most recent/last transaction:
    .ACCT_NUM$ Masked CC number reported in LAST transaction
    .ORDERID$ Transaction ID reported in LAST transactin
    .APPROVALCODE Approval Code reported in LAST Transaction
    .ACCT_TYPE CC Type reported in LAST transaction