YOU MUST HAVE A SECURENET DEMO ACCOUNT ESTABLISHED PRIOR TO WORKING WITH THIS API.

Size: px
Start display at page:

Download "YOU MUST HAVE A SECURENET DEMO ACCOUNT ESTABLISHED PRIOR TO WORKING WITH THIS API."

Transcription

1 SecureNet Gateway API Implementation Guide Version NOTE YOU MUST HAVE A SECURENET DEMO ACCOUNT ESTABLISHED PRIOR TO WORKING WITH THIS API. Wells Fargo is providing the enclosed SecureNet API (the "API") that includes technical information to assist you with your development efforts for the purpose of connecting to the SecureNet gateway. The enclosed API was prepared and is provided by SecureNet, and Wells Fargo assumes no responsibility for the content. In addition, please note that the API may address certain features of functionality of the SecureNet gateway services that Wells Fargo is not authorized or able to provide to you. Again, Wells Fargo assumes no responsibility for the API, including with respect to functionality and services that Wells Fargo is not authorized or able to provide to you. If you have questions, we recommend that you contact Wells Fargo Merchant Services Implementation Manager Chris Civitello at [email protected] before you begin your development efforts.

2 Table of Contents 2. Gateway What is the Gateway? Service Based Authorization Process How does the Gateway work? What is required to implement the Gateway? Gateway Implementation Service and SOAP Overview Authorization Components Request Response Gateway Service Request Definition Gateway Request Standard Payment Transactions Transaction Request Object Summary Transaction Request Object Specification TRANSACTION MERCHANT_KEY REQUIRED FOR ALL TRANSACTIONS

3 CARD CHECK CUSTOMER_BILL CUSTOMER_SHIP ENCRYPTION LEVEL LEVEL LEVEL3PRODUCT MPI AUTO PETROLEUM HOTEL PRODUCT RESTAURANT SERVICE USERDEFINED Transaction Request Message Format Credit Card, Debit Card, EBT, and Stored Value Card Transactions Electronic Check Transactions

4 4.2. SecureNet Vault/Tokenization Transactions Transaction Vault Object Summary Transaction Vault Object Specification TRANSACTION_VAULT ACCOUNT_VAULT CUSTOMER_VAULT OPERATIONPARAMETERS AutoBill Transactions PLAN_AB Object Summary PLAN_AB Object Specification PLAN_AB OPTIONS INSTALLMENT RECURRING PAYMENT_AB PLAN_AB Message Format Settlement Transactions Reporting API Services

5 5. Gateway Response GATEWAYRESPONSE GATEWAYRESPONSE Object Summary GATEWAYRESPONSE Object Specification ABRESPONSE TRANSACTIONRESPONSE VAULTACCOUNTRESPONSE VAULTCUSTOMERRESPONSE Response objects for Settlement Transactions BATCHDATA Object Summary BATCHDATA Object Specification BATCHDATA BATCHDETAIL BATCHDATA Message format Overview of Gateway Methods Methods available through or Methods for Standard Payment Transactions

6 Methods for Vault Transactions Methods for AutoBill Transactions Methods for Settlement Transactions Reporting API methods for Batch and Transaction Services, available through: or Reporting API methods for SecureNet Vault and AutoBill Services, available through: or or Appendix ACDI AVS_RESULT_CODE CARD_CODE_RESPONSE_CODE CARDLEVEL_RESULTS CAVV_RESPONSE_CODE CARDTYPE Codes DCI INDUSTRYSPECIFICDATA METHOD

7 7.10. ORDERID REF_TRANSID RESPONSE_CODE SECCODE Transaction Type Table SOFTDESCRIPTOR TRACKDATA TRANSACTION_SERVICE Product Codes for Petroleum Industry Transactions Developer Notes Sample Code Standard Payment Transaction - C# SecureNet Vault Transactions - C# Some best practices for SecureNet API implementation Test Data Fault exceptions API Error Codes How to Contact Technical Support

8 8

9 1. Introduction Payment Gateways facilitate electronic commerce by enabling merchants to accept credit cards and electronic checks as methods of payment for goods and services sold. The Gateway acts as a bridge between the merchant's website/terminal and the financial institutions that process payment transactions. Payment data is collected from the shopper and submitted to the Gateway for real-time authorization. Authorization is the process of checking the validity and available balance of a customer's credit card before the transaction can be accepted. To authorize a given credit card transaction, the Gateway transmits the transaction information to the appropriate financial institutions for validation, then returns the response (approved or declined) from the institution to the merchant or customer. The payment Gateway supports real-time and offline requests for credit card authorization. The Gateway also supports electronic check transactions. Merchants can collect customer bank account numbers and routing numbers to pay for purchases. This document describes how transactions can be submitted to the Gateway for real-time processing. The Gateway is the recommended integration method for merchants who have the capability to initiate both client and server-side SSL connections. This method offers the merchant a high degree of security and control because transaction data is submitted to the Gateway over a secure server-to-server connection, initiated by the merchant server. Since the merchant server will receive a response directly from the Gateway, the merchant has more control over the response to the end customer. 9

10 2. Gateway 2.1. What is the Gateway? The Gateway is the recommended method of submitting transactions. This method allows merchant s server to securely connect directly to the payment Gateway to submit transaction data. The merchant retains full control of the payment data collection and the user experience. This method requires merchants to be able to initiate and manage secure Internet connections Service Based Authorization Process Payment authorization utilizes a standards-based Simple Object Access Protocol (SOAP) interface over a Hyper Text Transfer Protocol (HTTP) connection to exchange information How does the Gateway work? When using the Gateway, transactions flow in the following way: 1. The customer s program has a reference to the Gateway Service and connects securely to the merchant s server to transmit payment information. 2. The merchant s server initiates a secure connection to the Gateway and creates the objects as described. It then initiates a ProcessTransaction function by passing the TRANSACTION object along with required data to the Gateway server. 3. The payment Gateway receives and processes the TRANSACTION object. 4. The payment Gateway generates the GATEWAYRESPONSE object and submits it to the merchant s server. 5. The merchant s server receives and processes the GATEWAYRESPONSE object. 6. Finally, the merchant s server communicates the success (or failure) of the authorization to the customer s web browser or program What is required to implement the Gateway? Merchants must be able to perform the following functions in order to submit transactions to the Gateway: 1. Establish a secure socket connection. 2. Provide both server and client-side encryption. 3. Develop code on a web server for the integration to the Gateway utilizing the Gateway service (e.g., for submitting transaction data object and receiving and translating system response object). 4. Securely store a transaction key to be accessed by the script that submits the transaction to the Gateway. 10

11 3. Gateway Implementation This guide explains how to integrate SecureNet into your website or application to process credit card or electronic check transactions over SecureNet s payment gateway. Transactions could be submitted to the Gateway for processing through an https POST, as an XML request, as a web-service SOAP message, and using a WCF service Service and SOAP Overview The Gateway has implemented WCF (Windows Communication Foundation) as an underlying technology to support server-to-server authorization capabilities. WCF Services are applications with logic and functions, which are accessible and reusable by means of standard Internet protocols and XML data formats. The WCF service interface is defined in terms of the XML messages that the service accepts and generates. Applications consuming WCF Services can be implemented on any platform in any programming language, as long as they can create and consume messages defined for the service interface. The Gateway has adopted Simple Object Access Protocol (SOAP) as the solution for initiating RPC-based authorization requests. SOAP is a lightweight protocol intended for exchanging structured information in a distributed environment. The protocol uses XML technologies to define an extensible messaging framework to provide a message construct that can be exchanged over a variety of underlying protocols. The framework has been designed to be independent of any particular programming model or language, platform, and other implementation-specific semantics. To implement the Gateway service, a developer would design a script that performs the following: 1. Securely obtain all the information needed to process a transaction. 2. Create a program to consume the Gateway service. URL for Live merchant accounts: URL for Test merchant accounts: Note: The SecureNet Gateway will only accept transactions on port 443. This request object will include all system variables mentioned in the tables below. 3. Receive and process the response from the Gateway to display the appropriate result to the end-user. 11

12 3.2. Authorization Components An authorization consists of the following: Request Authorization Request Objects sent to Gateway for processing. One authorization can be sent per request to Gateway. Batch authorizations are not supported Response Authorization Response Objects sent to the Merchant as a response to each Authorization Request Gateway Service Request Definition The following is the method signature for the ProcessTransaction service: [ServiceNamespace].GatewayClient Client = new [ServiceNamespace].GatewayClient( [ServiceBinding] ) og = Client.ProcessTransaction(oT); Client.Close(); Client: WCF service object ot: TRANSACTION object og: GATEWAYRESPONSE object ProcessTransaction is initiating Authorization Process. 12

13 4. Gateway Request The objects submitted to the Gateway are shown below. Parameters for each object are described in this document. Standard Payment Transactions Object Name Description Restrictions TRANSACTION The parameters defined in the tables below are assigned to the instance of this serialized object and passed to the web method ProcessTransaction to complete an authorization. All restrictions as defined in the Request Object Specs apply. SecureNet Vault/Tokenization Transactions Object Name Description Restrictions ACCOUNT_VAULT Contains account information for a specific customer within the SecureNet Vault. Must be enabled to use the SecureNet Vault. CUSTOMER_VAULT Contains customer information for a specific customer within the SecureNet Vault. Must be enabled to use the SecureNet Vault. OPERATIONPARAMETE RS This object is used to specify operation type (Add, Update, or Delete). Must be enabled to use the SecureNet Vault. TRANSACTION_VAULT Used to process a SecureNet Vault transaction. Must be enabled to use the SecureNet Vault. AutoBill Transactions Object Name Description Restrictions PLAN_AB This object defines the information that can be submitted to Must be enabled to use AutoBill. the Gateway for AutoBill transaction processing. INSTALLMENT This object contains information on Customer s Must be enabled to use AutoBill. installment plan. RECURRING This object contains information on Customer s recurring Must be enabled to use AutoBill. payment plan. PAYMENT_AB This object contains individual payment information, like amount, payment id, installment date, etc. Must be enabled to use AutoBill. Settlement Transactions Object Name Description Restrictions MERCHANT_KEY This object is used to verify merchant before processing Required for CloseBatch method. any transaction and is required for any operation. Reporting API Services Object Name Description Restrictions MERCHANT_KEY This object is used to verify merchant before processing any transaction and is required for any operation. Required for all Reporting API methods except GetABAccount. PLAN_AB This object defines the information that can be submitted to the Gateway for AutoBill transaction processing. Required for GetABAccount method. 13

14 4.1. Standard Payment Transactions Transaction Request Object Summary This section outlines the various high level sections within the Transaction Request Object. TRANSACTION MERCHANT_KEY CARD CHECK CUSTOMER_BILL CUSTOMER_SHIP ENCRYPTION LEVEL2 LEVEL3 MPI AUTO PETROLEUM HOTEL PRODUCTS SERVICE USERDEFINED SECONDARY_MER- CHANT KEY TRANSACTION MERCHANT_KEY CARD CHECK CUSTOMER_BILL CUSTOMER_SHIP ENCRYPTION LEVEL2 LEVEL3 MPI AUTO PETROLEUM HOTEL PRODUCTS SERVICE USERDEFINED SECONDARY_MER- CHANT_KEY This object defines the information that can be submitted to the Gateway for real-time transaction processing. This object is used to verify merchant before processing any transaction and is required for any operation. Card payment object contains card information, like card number, expiration date, and can be any of the following: Credit Card, Check Card, Debit Card, Stored Value Card. Check payment object is required for electronic check transactions and contains information on corresponding checking or savings account. This object contains customer s billing information, like billing address and telephone number, and is required for all E-Commerce transactions. This object contains customer s shipping information, like name and address. For later use. Object used for Level 2 data. Level 2 transactions normally involve corporate cards issued from a U.S. bank. Transactions that qualify for Level 2 processing cost the merchant less than Level 1 transactions. To qualify for Level 2, a transaction must be passed with: merchant name, transaction amount, date, tax amount, customer code, merchant postal code, tax identification, merchant minority code, and merchant state code. Object used for Level 3 data. Of the 3 different levels of credit card processing, Level 3 provides the lowest transaction processing rate. But, in order to qualify for the lowest rate, Level 3 transactions must be passed through the processing system with much more detailed transaction information than Level 1 or 2 transactions. Because so much information must be transmitted, not all terminals are equipped to process Level 3 transactions. Purchases that qualify as Level 3 transactions generally are made with government credit card or corporate cards. Merchant Plug-in Indicator for 3D Secure Transactions. This object is used for Rental industry only and includes rental-related information, like city rented and returned in, rental and return times, etc. This object is used for Petroleum industry only and includes information, like number of gallons, unit price, etc. This object is used for Hotel industry only and includes information, like check-in, check-out times, room rate, etc. Array of PRODUCT objects containing individual product information, like product description, amount, quantity, etc. This object is used for the Restaurant industry and contains gratuity amount and server number. Object containing 50 user defined fields. Allows merchants to store additional data along with transaction information and to view/manage it through the Virtual Terminal. For example, instead of storing shipping information in merchant s system, a merchant may prefer to send it to the gateway along with transaction and do reports on it later. Object used to verify secondary merchant. 14

15 Transaction Request Object Specification This section details high-level Transaction Request Object specification. Descriptions, rules, and notes for each object of the Transaction Request are detailed below TRANSACTION This object defines information that can be submitted to the Gateway for real-time transaction processing. XML Tag Data Type / Max Length Required Notes <TRANSACTION> Object / 1 <MERCHANT_KEY> <CARD> <CHECK> <CUSTOMER_BILL> <CUSTOMER_SHIP> <ENCRYPTION> <LEVEL2> <LEVEL3> <AUTO> <PETROLEUM> <HOTEL> <PRODUCTS> <SERVICE> <USERDEFINED> <SECONDARY_MERCHANT_KEY > </TRANSACTION> Object / 1 True Please see Transaction Request Object Summary Object / 1 Required if METHOD = CC, PD, DB, SV, or EBT Please see Transaction Request Object Summary Object / 1 Required if METHOD = Please see Transaction Request Object Summary ECHECK or CHECK21 Object / 1 Required for E- Please see Transaction Request Object Summary Commerce transactions Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 Specific to Industry Please see Transaction Request Object Summary Object / 1 Specific to Industry Please see Transaction Request Object Summary Object / 1 Specific to Industry Please see Transaction Request Object Summary Object Array False Please see Transaction Request Object Summary Object / 1 Specific to Industry Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary 15

16 MERCHANT_KEY REQUIRED FOR ALL TRANSACTIONS This object is used to verify merchant before processing any transaction and is required for any operation. XML Tag Data Type/ Max Length Required Notes <MERCHANT_KEY> <GROUP_ID> Integer / 15 False SecureNet Group ID. Not applicable to all merchants, should be provided by SecureNet. Please contact us for more information. <SECURENETID> Integer / 8 True 7-digit unique SecureNet ID provided by SecureNet to identify the merchant and is required for each submitted transaction. If you don t have your SecureNet ID please contact us. <SECUREKEY> String / 50 True Case-sensitive unique SecureKey is associated with corresponding SecureNet ID, used to authenticate the merchant and is required for each submitted transaction. <ADDITIONALINFO> String / 250 Required if For EBT transactions only. String format: 11 (EBT indicator) followed by a 7- digit FNS number (left-justified, space-filled, if FNS is less than 7 digits). METHOD=EB T </MERCHANT_KEY> CARD Card payment object contains card information, like card number, expiration date, and can be any of the following: Credit Card, Check Card, Debit Card, or Stored Value Card. XML Tag Data Type / Required Notes Max Length <CARD> <CARDCODE> String / 4 Required for all E-commerce and MOTO transactions. May also be manually keyed-in for Retail transactions for added security and lower interchange rate. <CARDNUMBER> String / 24 Required for Card-Not-Present transactions and manually keyed-in transactions, when TACKDATA is not present. Full card number is required for AUTH_ONLY, PARTIAL_AUTH_ONLY, AUTH_CAPTURE, PARTIAL_AUTH_CAPTURE, CAPTURE_ONLY, CREDIT_AUTHONLY, FORCE_CREDIT, FORCE_CREDIT_AUTHONLY, VERIFICATION, AUTH_INCREMENT, ISSUE, ACTIVATE, REDEEM, REDEEM_PARTIAL, DEACTIVATE, REACTIVATE, and INQUIRY_BALANCE transactions. A code that is printed on the back of a card. Used as partial assurance that the card is in the buyer s possession. This code is 3 digits long for Visa, MasterCard, and Discover, and 4 digits long for American Express. Not required but could be used for securing credit card transactions by means of card security code validation. If card security code data is submitted, the issuer verifies whether the number matches the number assigned to the card. Card number, 16 digits long for Visa, MasterCard and Discover, 15 digits long for American Express. This value may not contain spaces, nonnumeric characters, or dashes. 16

17 Last 4 digits of the card number are required for PRIOR_AUTH_CAPTURE, VOID, PARTIAL_VOID, CREDIT, CREDIT_PRIORAUTHCAPTURE, and FORCE_CREDIT_PRIORAUTHCAPTURE transactions. Not required when processing transactions for stored customer records. <EXPDATE> String / 4 Required for Card-Not-Present transactions and manually keyed-in transactions, when TACKDATA is not present. A valid card expiration date, which is not in the past. Format: MMYY Example: 1012 represents November <KSN> String / 19 Required if METHOD = DB Debit Only Unaltered KSN Number from PIN pad. <PINBLOCK> String / 16 Required if METHOD = DB Debit Only PinBlock from PIN pad. <TRACKDATA> String / 200 Required for Card-Present Credit Card transactions, Pin Debit transactions, and EBT (Not Voucher Clear) transactions. <ADDITIONALINFO> String / 250 Required if METHOD= EBT and Transaction Type Code=0300 (CAPTURE_ONLY) for Voucher Clear Transactions. </CARD> This field contains information encoded from a valid magnetic stripe. It includes information such as Primary Account Number and Expiration Date. Please see Appendix for more information. 00 Future use. No credit card account verification, default* 01 Future use. Credit card account verification* 11 followed by a 15-character long left-justified space-filled EBT Voucher number.** 02 Updates the EXPDATE of credit card during ProcessTransaction by Customer ID, if expiration date supplied is a future date for the PaymentID. * - Applicable only when adding a new Account to the SecureNet Vault. ** - For EBT Voucher Clear transactions only CHECK Check payment object is required for electronic check transactions and contains information on corresponding checking or savings account. XML Tag Data Type / Required Notes Max Length <CHECK> <ABACODE> String / 9 True A 9-digit value representing Bank Routing/ABA Number to identify the Bank. 17

18 <ACCOUNTNAME> String / 50 True Account Holder Name. If left blank will default to Customer Name from CUSTOMER_BILL object. If Customer Name is blank an error will be returned. <ACCOUNTNUM> String / 17 True Indicated the Account Number to be charged for the transaction, an all-numeric value. <ACCOUNTTYPE> String / 8 True Type of Bank Account, i.e. Savings, Checking, Business (for corporate accounts). <BANKNAME> String / 50 True Name of Account Holders Bank. <CHECKNUM> String / 20 Required if SECCODE Check Number is BOC, POS, or ARC <MICRDATA> String / 400 False MICR Data Read from Check reader <SECCODE> String / 3 True ACH Transaction Classification. The Standard Entry Class (SEC) code is a three letter code that identifies the nature of the ACH entry, like: PPD, WEB, TEL, etc. Please see Appendix. <ADDITIONALINFO> String / 250 Used only for METHOD = ECHECK 00 No check verification, default 01 Check verification with Certegy* 02 Pre-Note with ACH Provider.** * - Merchant should be enabled with Certegy, please contact SecureNet for more information. For Transaction Type Code 0000 (AUTH_ONLY), or 0100 (AUTH_CAPTURE) data will be sent for processing only if check verification returns an APPROVED status from Certegy. If Transaction Type Code is 0700 (VERIFICATION) data will be sent to Certegy for check verification ONLY, no transaction will be sent for processing. ** - Set transaction type code to 0700 (VERIFICATION). Data will be sent to ACH Provider for Pre-Noting ONLY, no transaction will be sent for processing. Pre-Note CANNOT be used in conjunction with Transaction Type Codes 0000 (AUTH_ONLY) or 0100 (AUTH_CAPTURE). </CHECK> CUSTOMER_BILL This object contains customer s billing information, like billing address and telephone number, and is required for all E-Commerce transactions. XML Tag Data Type/ Required Notes Max Length <CUSTOMER_BILL> <ADDRESS> String / 60 True for E-Commerce transactions <CITY> String / 40 True for E-Commerce transactions Billing street address. Together with Zip Code can be used for securing credit card transactions by means of the Address Verification System (AVS), result of AVS check will be coming back in AVS_RESULT_CODE variable of the TRANSACTIONRESPONSE object. Billing City 18

19 <ZIP> String / 20 True for E-Commerce transactions Billing Zip Code. If full address is not provided, it is advised to provide at least the ZIP for more security. <STATE> String / 40 False Billing State <COMPANY> String / 50 False Billing Company <COUNTRY> String / 60 False Billing Country < > String / 255 False Cardholder s address. Has to be specified if receipt is to be sent to the Cardholder for successful transaction. < RECEIPT> String / 5 False Merchants can choose to send a Gateway generated receipt to customers, who provide an address with their transaction. The receipt includes a summary and results of the transaction. Possible values: TRUE / FALSE. If no is provided value is considered FALSE. <FIRSTNAME> String / 50 False Contains the first name of the customer associated with the billing address for the transaction. <LASTNAME> String / 50 False Contains the last name of the customer associated with the billing address for the transaction. <PHONE> String / 25 False Contains the phone number of the customer associated with the billing address for the transaction. </CUSTOMER_BILL> CUSTOMER_SHIP This object contains customer s shipping information, like name and address. XML Tag Data Type/ Max Length Required <CUSTOMER_SHIP> Notes <ADDRESS> String / 60 False Customer s shipping Street Address <CITY> String / 40 False Customer s shipping City <COMPANY> String / 50 False Customer s shipping Company <COUNTRY> String / 60 False Customer s shipping Country <FIRSTNAME> String / 50 False Shipping First Name <LASTNAME> String / 50 False Shipping Last Name <STATE> String / 40 False Shipping State <ZIP> String / 20 False Shipping Zip Code </ CUSTOMER_ SHIP > 19

20 ENCRYPTION XML Tag Data Type/ Max Length <ENCRYPTION> Required Notes <ENCRYPTIONMODE> Integer For later use. For later use. <KSI> String For later use. For later use. <KEYID> String For later use. For later use. </ ENCRYPTION > LEVEL2 This object is used for Level 2 data. Level 2 transactions normally involve corporate cards issued from a U.S. bank. XML Tag Data Type / Max Length Required Notes <LEVEL2> <DUTY> Decimal / 15 False* Duty Amount <FREIGHT> Decimal / 15 False* Freight Amount <PONUM> String / 50 False* Purchase Order Number <TAX> Decimal / 15 False* Tax Amount. This amount must be submitted separately from the total transaction amount. <TAXFLAG> Integer / 1 False* 0 = No Tax 1 = Tax Included 2 = Tax Exempt </ LEVEL2> * - Required for Level 2 processing, if this data is not provided transaction will still be processed, but as Level 1. 20

21 LEVEL3 This object is used for Level 3 data. Purchases that qualify as Level 3 transactions generally are made with government credit card or corporate cards. Please note: Level 3 is only available to merchants on First Data Nashville platform and only for E-Commerce, Retail, and MOTO transactions. XML Tag Data Type / Required Notes Max Length <LEVEL3> <ALTTAX_AMT> Decimal / 15 False Alternate tax Amount <ALTTAX_AMT_INDICATOR> String / 1 False Alternate tax indicator, Y/N <COUNTRYCODETO> String / 3 False Country code shipped to <MERCHANT_VAT_REGISTRATION_NUM> String / 20 False Merchant VAT Registration Number <ORDER_DISCOUNT_AMT> Decimal / 15 False Order Discount Amount <PURCHASER_ORDER_DATE> String / 10 False Purchase Order Date <PURCHASER_VAT_REGISTRATION_NUM > String / 20 False Purchaser VAT Registration Number <SUMMARY_COMMODITY_CODE> String / 4 False Summary Commodity Code <VATTAX_AMT> Decimal / 15 False VAT Tax Amount <VATTAX_RATE> Decimal / 15 False VAT Tax Rate <VAT_INVOICE_REFNUM> String / 15 False VAT invoice Reference Number <ZIPFROM> String / 20 False Zip Code Shipped From <ZIPTO> String / 20 False Zip Code Shipped To <LEVEL3PRODUCTS> Object Array False Array of LEVEL3PRODUCT </ LEVEL3> 21

22 LEVEL3PRODUCT This object contains individual level3 product information, like item name, description, tax amount, unit price, quantity, etc. XML Tag Data Type / Required Notes Max Length <LEVEL3PRODUCT> <ALTTAXID> String / 15 False Alternate tax Amount <COMMODITYCODE> String / 12 False Commodity Code <DISCOUNTAMT> Decimal / 15 False Discount Amount <DISCOUNTRATE> Decimal / 15 False Discount Rate <DISCOUNT_INDICATOR> String / 1 False Discount Indicator <GROSSNET_INDICATOR> String / 1 False Gross Net Indicator <ITEMCODE> String / 12 False Item Code <ITEMNAME> String / 35 False Item Name <ITEMTOTALAMT> Decimal / 15 False Item Total Amount <QUANTITY> Decimal / 15 False Item Quantity <TAXAMT> Decimal / 15 False Tax Amount <TAXRATE> Decimal / 15 False Tax Rate <TAXTYPEIDENTIFIER> String / 2 False 00 - Unknown 01 - Federal/National sales tax 02 - State Sales tax 03 - City Sales tax 04 - Local Sales Tax 05 - Municipal Sales Tax 06 - Other Tax 10 - Value Added Tax (VAT) 11 - Goods and Services Tax (GST) 12 - Provincial Sales Tax 20 - Room Tax 21 - Occupancy Tax 22 - Energy Tax <TAXTYPE_APPLIED> String / 4 False Tax Type that was Applied <UNIT> String / 12 False Unit of Measure <UNITPRICE> Decimal / 15 False Unit Price 22

23 </LEVEL3PRODUCT> MPI This object describes Merchant Plug-in Indicator for 3D Secure Transactions. XML Tag Data Type / Max Length Required <MPI> Notes <AUTHINDICATOR> String / 50 False The electronic commerce indicator (ECI) value for a Visa transaction; or the universal cardholder authentication field (UCAF) indicator for MasterCard transaction. <AUTHVALUE> String / 50 False The cardholder authentication verification value (CAVV) for Visa transactions; or accountholder authentication value (AVV)/ universal cardholder authentication field (UCAF) for MasterCard transactions. </MPI> AUTO This object is used for Rental industry only and includes rental-related information, like city rented and returned in, rental and return times, etc. XML Tag Data Type / Required Notes Max Length <AUTO> <EXTRA_CHARGEAMOUNT> Decimal / 15 True Additional Charge Amount <EXTRA_CHARGECODE> String / 10 True Additional Charge Code <PREFERRED_CUSTOMER> String / 1 True Preferred Customer, Y/N <RENTALCITY> String / 50 True City Rented in <RENTALDATETIME> String / 14 True mmddyyyyhhmmss <RENTALSTATE> String / 2 True State Rented in <RETURNCITY> String / 59 True City Returned In <RETURNDATETIME> String / 14 True mmddyyyyhhmmss <RETURNSTATE> String / 2 True State Returned in <SALECODE> String / 2 False Sale Code </AUTO> 23

24 PETROLEUM This object is used for Petroleum industry only and includes information, like number of gallons, unit price, etc. XML Tag Data Type / Max Length Required Notes <PETROLEUM> <DRIVEJOBNUM> String / 6 False Driver Job Number <FLEET_REFERENCENUM> String / 10 False Fleet Reference Number <FULLSERV_INDICATOR> String / 3 False Full Service indicator <GALLONS> Integer / 15 False Number of Gallons <ODOMETER> String / 6 False Odometer reading <PIN> String / 10 False <PRODUCTS> Array of True Product Listing. Please see Appendix for Petroleum Product Codes. PRODUCT Objects <TAXAMOUNT> Decimal / 15 False Tax Amount <UNITPRICE> Decimal / 15 False Price per unit <VEHICLENUM> String / 6 False Vehicle Number </PETROLEUM> HOTEL This object is used for Hotel industry only and includes information, like check-in, check-out times, room rate, etc. XML Tag Data Type / Max Length Required Notes <HOTEL> <CHARGETYPE> String / 1 True Type of Charge <CHECKIN_DATE> String / 10 True mmddyyyy <CHECKOUT_DATE> String / 10 True mmddyyyy <EXTRA_CHARGEAMOUNT> Decimal / 15 True Additional Charge Amount <EXTRA_CHARGECODE> String / 10 True Additional Charge Code <PREFERRED_CUSTOMER> String / 1 True Preferred Customer, Y/N <ROOMRATE> Decimal / 15 True Rate of room <SALECODE> String / 2 True Sale Code 24

25 </HOTEL> PRODUCT This object contains individual product information, like product description, amount, quantity, etc. XML Tag Data Type/ Max Length Required Notes <PRODUCT> <AMOUNT> Decimal / 15 False Product Amount <CODE> String / 9 False Product Code <DESCRIPTION> String / 50 False Product Description <NAME> String / 30 False Product Name <QUANTITY> String / 10 False Product Quantity <TAX> Decimal / 15 False Product Tax Amount <TAXABLE> String / 1 False 0 = No 1 = Yes <UNIT> String / 9 False Unit of Measure <UNITPRICE> Decimal / 15 False Price per Unit </PRODUCT> RESTAURANT SERVICE This object is used for the Restaurant industry and contains gratuity amount and server number. XML Tag Data Type/ Required Notes Max Length <SERVICE> <GRATUITY> Decimal / 15 False Gratuity Amount <SERVERNUM> String / 6 False Server Number </SERVICE> 25

26 USERDEFINED This object contains 50 user defined fields and allows merchants to store additional data along with transaction information. Please note that user defined fields are not intended to and must not be used to capture personally identifying information, like name, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers. XML Tag Data Type/ Required Notes Max Length <USERDEFINED> <UD1> String / 50 False Additional Data Field <UD2> String / 50 False Additional Data Field. String / 50 False Additional Data Field <UD50> String / 50 False Additional Data Field </USERDEFINED> Transaction Request Message Format All gateway transactions include a common set of required parameters (listed first). Additional parameters are required depending on the transaction type. You can also provide many optional parameters, depending on the results you want returned. A sample Transaction Request has been included in the Appendix Credit Card, Debit Card, EBT, and Stored Value Card Transactions XML Tag Data Type / Max Length Required Notes <TRANSACTION> Object / 1 True Please see Transaction Request Object Summary Decimal / 15 True Total amount to be charged or credited. <AMOUNT> Include decimal point followed by decimal amount. <MERCHANT_KEY> Object / 1 True Please see Transaction Request Object Summary <CODE> String / 4 True Transaction Type Code indicated the type of processing required for Transaction Request. <METHOD> String / 7 True Transaction method, set to CC, DB, or SV accordingly. See Appendix <CARD> Object / 1 True Please see Transaction Request Object Summary <ORDERID> String / 25 True Unique Transaction Order ID. String A-Z, 0-9 only. See Appendix. 26

27 <DCI> Integer / 1 True Duplicate Check Indicator. Please see Appendix for more information. <TEST> String / 5 True TRUE = Test Transaction, FALSE = Live Transaction. Default is FALSE. <TRANSACTION_SERVICE> Integer / 1 True Indicates Transaction Handling when Vault is enabled. See Appendix. <REF_TRANSID> String / 15 Required for VOID, PARTIAL_VOID, CREDIT, PRIOR_AUTH_CAPTURE Transaction ID of a previously approved transaction, used in VOID, PARTIAL_VOID, CREDIT, PRIOR_AUTH_CAPTURE. Please see Appendix for more uses of REF_TRANSID. <INDUSTRYSPECIFICDATA> String / 1 Required for E-commerce and MOTO transactions. Leave blank for retail transactions. <INSTALLMENT_SEQUENCENUM > Integer / 2 Required if INDUSTRYSPECIFICDAT A=3 <TOTAL_INSTALLMENTCOUNT> Integer / 2 Required if INDUSTRYSPECIFICDAT A = 3 <AUTHCODE> String / 6 Required for CAPTURE_ONLY transactions <CUSTOMERID> String / 25 Required for Vault transactions <PAYMENTID> String / 25 Required for Vault transactions <AUTO> <PETROLEUM> <HOTEL> <SERVICE> Industry Specific Data Required to send the right indicator for transaction. Accepted values: P, D, 1, 2, 3. Please see Appendix for more information. Installment number for installment payment plan Number of total installments for installment plans Valid authorization code for Offline Transaction 0300 (CAPTURE_ONLY). Voice Authorization Code. Valid authorization code for EBT Voucher transaction (CAPTURE_ONLY). Contains the customer ID associated with the Authorization Code for EBT Voucher transaction. Must be enabled on your account. SecureNet Vault Payment ID. Must be enabled on your account. Object / 1 Specific to Industry Please see Transaction Request Object Summary Object / 1 Specific to Industry Please see Transaction Request Object Summary Object / 1 Specific to Industry Please see Transaction Request Object Summary Object / 1 Specific to Industry Please see Transaction Request Object Summary <CUSTOMERIP> String / 15 False Customer IP address. Include Customer s IP that needs to be associated with the transaction. Recommended for ecommerce merchants. <DEVICECODE> String / 2 False Code for payment device. Blank, unless specified/provided by SecureNet. 27

28 <ENTRYSOURCE> String / 2 False Transaction Source. Blank, unless specified/provided by SecureNet. <INVOICEDESC> String / 50 False Description of the transaction for which invoice is being issued. <INVOICENUM> String / 50 False Invoice number associated with the transaction. <MARKETSPECIFICDATA> String / 2 False For bill payment transactions, applicable for Visa only. B Bill payment D Debt indicator (contact SecureNet for more info) Don't include if you won't send a value. <NOTE> String / 500 False Additional Transaction Notes. <OVERRIDE_FROM> Integer / 1 False Set to override Customer Billing information and User Defined fields from information provided in: 0 Transaction Request 1 Customer Vault Object 2 Account Vault Object 3 PRIOR_AUTH_CAPTURE transaction request, Level 2 information will be overwritten with the new Level 2 values. Use for PRIOR_AUTH_CAPTURE or SecureNet Vault transactions. <RETAIL_LANENUM> String / 6 False Lane Number for Retail stores. <SOFTDESCRIPTOR> String / 25 False Additional DBA descriptor. See Appendix. <CUSTOMER_BILL> <CUSTOMER_SHIP> <ENCRYPTION> <LEVEL2> <LEVEL3> <PRODUCTS> <USERDEFINED> <MPI> <SECONDARY_MERCHANT_KEY> </TRANSACTION> Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object Array False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary 28

29 Electronic Check Transactions XML Tag Data Type / Max Length Required Notes <TRANSACTION> Object / 1 True Please see Transaction Request Object Summary <AMOUNT> Decimal / 15 True Total amount to be charged or credited. Include decimal point followed by decimal amount. <MERCHANT_KEY> Object / 1 True Please see Transaction Request Object Summary <CODE> String / 4 True Transaction Type Code indicated the type of processing required for Transaction Request. <METHOD> String / 7 True Set Transaction Method to ECHECK. See Appendix <CHECK> Object / 1 True Please see Transaction Request Object Summary <ORDERID> String / 25 True Unique Transaction Order ID. String A-Z, 0-9 only. See Appendix. <DCI> Integer / 1 True Duplicate Check Indicator. Please see Appendix for more information. <TEST> String / 5 True TRUE = Test Transaction, FALSE = Live Transaction. Default is FALSE. <TRANSACTION_SERVICE> Integer / 1 True Indicates Transaction Handling when Vault is enabled. See Appendix. <REF_TRANSID> String / 15 Required for VOID, PARTIAL_VOID, CREDIT, PRIOR_AUTH_CAPTUR E Transaction ID of a previously approved transaction, used in VOID, PARTIAL_VOID, CREDIT, PRIOR_AUTH_CAPTURE. Please see Appendix for more uses of REF_TRANSID. <PAYMENTID> String / 25 Required for Vault SecureNet Vault Payment ID. Must be enabled on your account. transactions <CUSTOMERID> String / 25 Required for Vault Contains the customer ID associated with the transaction. Must be enabled on your account. transactions <CUSTOMERIP> String / 15 False Customer IP address. Include Customer s IP that needs to be associated with the transaction. Recommended for e-commerce merchants. <ENTRYSOURCE> String / 2 False Transaction Source. Blank, unless specified/provided by SecureNet. <INVOICEDESC> String / 50 False Description of the transaction for which invoice is being issued. <INVOICENUM> String / 50 False Invoice number associated with the transaction. 29

30 <NOTE> String / 500 False Additional Transaction Notes. <OVERRIDE_FROM> Integer / 1 False Set to override Customer Billing information and User Defined fields from information provided in: 0 Transaction Request 1 Customer Vault Object 2 Account Vault Object 3 PRIOR_AUTH_CAPTURE transaction request, Level 2 information will be overwritten with the new Level 2 values. Use for PRIOR_AUTH_CAPTURE or SecureNet Vault transactions. <RETAIL_LANENUM> String / 6 False Lane Number for Retail stores. <SOFTDESCRIPTOR> String / 25 False Additional DBA descriptor. See Appendix. <CUSTOMER_BILL> <CUSTOMER_SHIP> <ENCRYPTION> <USERDEFINED> <MPI> <SECONDARY_MERCHANT_KEY > </TRANSACTION> Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary Object / 1 False Please see Transaction Request Object Summary 30

31 4.2. SecureNet Vault/Tokenization Transactions SecureNet Vault is SecureNet s PCI-DSS compliant solution for storing information for credit cards, electronic checks, and Pin-less debit cards. It is a virtual database hosted by and at SecureNet on secure servers. Through tokenization, SecureNet Vault allows tokens to be created for credit card numbers. These tokens are then used for transactions instead of the actual credit card number. Multiple credit card information can be stored for a single individual in the form of tokens. Only the credit card number and expiry date will be stored in SecureNet Vault. The security code cannot be stored as it is against PCI compliance to do so. This means that track data cannot be stored either. In addition, debit cards are excluded, since it is against PCI compliance to store the pin and payments cannot be processed without the pin. TRANSACTION_VAULT This object defines information that can be submitted to the Gateway for Vault transaction processing. ACCOUNT_VAULT CUSTOMER_VAULT MERCHANT_KEY OPERATIONPARAMETERS This object contains account information to add, update or delete, like payment method and corresponding card/account information. This object contains customer information to add, update or delete, like customer name, address, , telephone number, etc. This object is used to verify merchant before processing any transaction and is required for any operation. This object is used to specify operation type (Add, Update, or Delete) and to specify whether Vault information is to be added even when transaction is declined in ProcessVaultTransaction method. 31

32 Transaction Vault Object Summary TRANSACTION Transaction information for ProcessVaultTransaction method. TRANSACTION_VAULT ACCOUNT_VAULT CUSTOMER_VAULT MERCHANT_KEY OPERATIONPARAMETE RS TRANSACTION Transaction Vault Object Specification TRANSACTION_VAULT This object defines information that can be submitted to the Gateway for Vault transactions processing. XML Tag Data Type/ Max Length Required Notes <TRANSACTION_VAULT> <ACCOUNT_VAULT> Object / 1 True Please see Transaction Vault Object Summary <CUSTOMER_VAULT> Object / 1 True Please see Transaction Vault Object Summary 32

33 <MERCHANT_KEY> Object / 1 True Please see Transaction Request Object Summary <OPERATIONPARAMETERS> Object / 1 True Please see Transaction Vault Object Summary <TRANSACTION> Object / 1 True Please see Transaction Vault Object Summary </TRANSACTION_VAULT> ACCOUNT_VAULT This object contains account information to add, update or delete, like payment method and corresponding card/account information. XML Tag Data Type/ Required Notes Max Length <ACCOUNT_VAULT> <ACDI> Integer / 1 False Account Duplicate Indicator. Values: 0, 1, 2. See Appendix for more information. <CUSTOMERID> String / 25 True Contains customer ID associated with transaction or record. Can be any string or AUTO. If AUTO is specified a unique CUSTOMERID is generated and returned in the response object. <METHOD> String / 7 True Indicates method of payment for the transaction being sent to the system. See Appendix for more information. <NOTES> String / 250 False Additional Notes field. <PAYMENTID> String / 25 True Contains the Payment ID associated with the customer record. Can be any string or AUTO. If AUTO is specified, a unique PAYMENTID is generated and returned in the response object. <PRIMARY> String / 5 False Specifies if the account is Primary or not. Values: TRUE or FALSE. Set to FALSE by default. Multiple accounts (payment methods) can be stored for a single customer and only one account can be set as primary. The system will automatically default to another payment method for the customer if the primary payment is declined. <CARD> OBJECT / 1 Required if Please see Transaction Request Object Summary METHOD = CC or PD <CHECK> OBJECT / 1 Required if Please see Transaction Request Object Summary METHOD = ECHECK or CHECK21 <CUSTOMER_BILL> OBJECT / 1 Required for Please see Transaction Request Object Summary E-Commerce transactions <USERDEFINED> OBJECT / 1 False Please see Transaction Request Object Summary </ACCOUNT_VAULT> CUSTOMER_VAULT 33

34 This object contains customer information to add, update or delete, like customer name, address, , phone number, etc. XML Tag Data Type/ Max Length Required Notes <CUSTOMER_VAULT> <CSDI> Integer / 1 True Customer Duplicate Check Indicator 0 If Customer ID exists - return an Error 1 If Customer ID exists - do not add and continue with transaction. <CUSTOMERID> String / 25 True Contains the customer ID associated with the transaction or record. Can be any string or AUTO. If AUTO is specified a unique CUSTOMERID is generated and returned in the response object. <NOTES> String / 200 False Additional Notes field. <CUSTOMER_BILL> Object / 1 False Object containing Billing Customer information. <USERDEFINED> Object / 1 False Object Containing 50 user defined fields. </CUSTOMER_VAULT> OPERATIONPARAMETERS This object is used to specify operation type (Add, Update, or Delete) and to specify whether Vault information is to be added even when transaction is declined in ProcessVaultTransaction method. XML Tag Data Type/ Required Notes Max Length <OPERATIONPARAMETERS> <ACTIONCODE> Integer / 1 False 1 = ADD 2 = Update 3 = Delete <ADD_IF_DECLINED> Integer / 1 False Add Customer/Account if transaction is declined: 0 False 1 True </OPERATIONPARAMETERS> 4.3. AutoBill Transactions The AutoBill feature allows merchants to set up automatic scheduled and recurring credit card and ACH transactions. Payments can be scheduled for automatic daily, weekly, monthly, quarterly, and yearly recurrence, as well as any interval in between. In addition, merchants can set up one or more single scheduled future payments for any date. The automatic installment generator can take a total amount due and evenly split the payment dates and payment amounts across a designated time frame PLAN_AB Object Summary 34

35 PLAN_AB PLAN_AB This object defines the information that can be submitted to the Gateway for AutoBill transaction processing. MERCHANT_KEY INSTALLMENT RECURRING SCHEDULE MERCHANT_KEY INSTALLMENT RECURRING SCHEDULE This object is used to verify merchant before processing any transaction and is required for any operation. Installment payment plans consist of a single purchase of goods or services that is billed to an account in multiple segments, over a period of time, with payments occurring on a schedule agreed by a cardholder and merchant. This object contains information on Customer s installment plan. Recurring payment plans exist when multiple transactions are processed at pre-determined intervals, as a result of an agreement for the purchase of products or services that are provided over time. This object contains information on Customer s recurring payment plan. Array of PAYMENT_AB objects, containing individual payment information, like amount, payment id, installment date, etc PLAN_AB Object Specification PLAN_AB This object defines the information that can be submitted to the Gateway for AutoBill transaction processing. XML Tag Data Type/ Max Length Required Notes <PLAN_AB> <MERCHANT_KEY> Object / 1 True Merchant Key is required to process any operation. <INSTALLMENT> Object / 1 True Please see PLAN_AB Object Summary <RECURRING> Object / 1 True Please see PLAN_AB Object Summary <SCHEDULE> Array of True Please see PLAN_AB Object Summary PAYMENT_AB </PLAN_AB> OPTIONS Please note that OPTIONS is a parent class of INSTALLMENT and RECURRING, so all parameters of OPTIONS are inherited by the two subclasses and are include in INSTALLMENT and RECURRING tables below. <OPTIONS> XML Tag Data Type/ Max Length Required <CYCLE> String / 1 True W weekly M monthly Q quarterly Notes 35

36 B semiannual Y yearly <DAY> Integer / 2 Required if CYCLE=M, 1-28 Q, B, or Y. <FREQUENCY> Integer / 2 True Once every week/month/quarter/six months/year, as following: If CYCLE=M: 1-11 if CYCLE=W: 1-51 if CYCLE=Q: 1-3 for CYCLE=Y or CYCLE=B frequency is set automatically. <MONTH> Integer / 2 Required if CYCLE=Q, 1-12 B, or Y <WEEKDAY> Integer / 1 Required if CYCLE=W 1-7, where 1 is Sunday </OPTIONS> INSTALLMENT Installment payment plans consist of a single purchase of goods or services that is billed to an account in multiple segments, over a period of time, with payments occurring on a schedule agreed by a cardholder and merchant. The INSTALLMENT object below contains information on Customer s Installment plan. XML Tag Data Type/ Required Notes Max Length <INSTALLMENT> <CYCLE> String / 1 True W weekly M monthly Q quarterly B semiannual Y yearly <DAY> Integer / 2 Required if 1-28 CYCLE=M, Q, B, or Y. <FREQUENCY> Integer / 2 True Once every week/month/quarter/six months/year, as following: <MONTH> Integer / 2 Required if 1-12 CYCLE=Q, B, or Y <WEEKDAY> Integer / 1 Required if 1-7, where 1 is Sunday CYCLE=W <AMOUNT> Decimal / 15 True Installment amount If CYCLE=M: 1-11 if CYCLE=W: 1-51 if CYCLE=Q: 1-3 for CYCLE=Y or CYCLE=B frequency is set automatically. 36

37 <AUTOCALC_OPTION> String / 1 True A automatic M manual <BALLOON_AMOUNT> Decimal / 15 True Balloon amount <BALLOON_OPTION> Integer / 1 True AutoBill offers the capability of the balloon payment to be applied to the first or last payment, as following: 0 add balloon amount to first payment 1 add balloon amount to last payment <COUNT> Integer / 2 True Number of total installments for installment plan <REMAINDER_OPTION> Integer / 1 True AutoBill offers the ability to choose first or last payment if installments are not equally divided, as following: </INSTALLMENT> 0 add remainder to first payment 1 add remainder to last payment RECURRING Recurring payment plans exist when multiple transactions are processed at pre-determined intervals, as a result of an agreement for the purchase of products or services that are provided over time. Recurring payment plans help simplify the process of billing a cardholder for a product or a service that is being provided on a continuous basis. XML Tag Data Type/ Required Notes Max Length <RECURRING> <CYCLE> String / 1 True W weekly M monthly Q quarterly B semiannual Y yearly <DAY> Integer / 2 Required if CYCLE=M, Q, B, or 1-28 Y. <FREQUENCY> Integer / 2 True Once every week/month/quarter/six months/year, as following: If CYCLE=M: 1-11 if CYCLE=W: 1-51 if CYCLE=Q: 1-3 for CYCLE=Y or CYCLE=B frequency is set automatically. <MONTH> Integer / 2 Required if CYCLE=Q, B, or Y 1-12 <WEEKDAY> Integer / 1 Required if CYCLE=W 1-7, where 1 is Sunday <AMOUNT> Decimal / 15 True Total value to be charged to the payment method specified. Include decimal point followed by decimal amount. <NOEND_FLAG> Integer / 1 True 0 - recurring bill has no end date 1 - recurring bill has an end date 37

38 </RECURRING> PAYMENT_AB This object contains individual payment information, like amount, payment id, installment date, etc. XML Tag Data Type/ Max Length Required Notes <PAYMENT_AB> <AMOUNT> Decimal / 15 True Total amount to be charged to the payment method specified. Include decimal point followed by decimal amount. <INSTALLMENTDATE String / 6 True Installment date. MMDDYY. > <INSTALLMENTNUM Integer / 2 True Number of installments > <NUMOFRETRIES> Integer / 1 True AutoBill offers the ability to reattempt a declined transaction every day for up to five consecutive days. Enter number of retries, between 1-5. <PAID> Integer False Available in response. Will contain an array of all records for Installment and Variable billing, so that the merchant can see which has already been paid or not. <PAYMENTDATE> String False Available in response. Will contain payment date of that Schedule ID for Installment and Variable billing, for Recurring billing - represents next billing date. <PAYMENTID> String / 25 True Contains the Payment ID associated with the customer record. Can be any string or AUTO. If AUTO is specified, a unique PAYMENTID is generated and returned in the response object. <PLANID> Integer Required for Update only Payment plan ID, auto-generated by the system and given to the merchant at the time Plan is added. <PROCESSED> Integer / 1 False 0 not yet processed, still in the queue 1 processed <SCHEDULEID> Integer Required for Update only AutoBill allows multiple billing schedules per Customer ID. Schedule ID, auto-generated by the system and given to the merchant at the time Schedule is added. <TRANSACTIONID> Integer / 15 False System Generated Unique ID for corresponding transaction, returned by the Gateway. </PAYMENT_AB> PLAN_AB Message Format XML Tag <PLAN_AB> Data Type/ Max Length Required Notes <ACTIVE> Integer False Available in response. Shows whether recurring billing on this record is enabled or disabled. 38

39 0 Active 1 Inactive <CUSTOMERID> String / 25 True Contains customer ID associated with payment plan. <ENDDATE> String / 6 Required if NOEND_FLAG = 1 Plan end date. MMDDYY. (recurring bill has an end date) <INSTALLMENT> Object / 1 True Please see PLAN_AB Object Summary <MAXRETRIES> Integer / 1 False AutoBill offers the ability to reattempt a declined transaction every day for up to five consecutive days. Enter maximum number of retries, default is 0, maximum is 5. <MERCHANT_KEY> Object / 1 True This object is used to verify merchant before processing any transaction and is required for any operation. <NEXTPAYMENT_DATE> String / 6 False Available in response. Next payment date. MMDDYY. <PAYMENTID> String / 25 True SecureNet Vault Payment ID. Must be enabled on your account. <PAYMENTID2> String / 25 False Process through Payment ID 2 if there is a problem with Payment ID. <PLANID> Integer Required for Update only Payment plan ID, auto-generated by the system and given to the merchant at the time Plan is added. <RECURRING> Object / 1 True Please see PLAN_AB Object Summary <SCHEDULE> Array of True Please see PLAN_AB Object Summary PAYMENT_AB <STARTDATE> String / 6 True Plan start date. MMDDYY. Please make sure the date is on or after current date. <TYPE> String / 3 True Billing types offered include Recurring Billing, Installment Billing and Variable Billing. Set TYPE to one of the following: REC for recurring INS for installment VAR for variable </PLAN_AB> 4.4. Settlement Transactions Request Object used for Settlement Transactions has been described above and is the following: Object Name Description MERCHANT_KEY Required for CloseBatch method Reporting API Services 39

40 Reporting API Services allow merchants to perform additional functionalities to their processing systems. Please note that data in the reporting services database is not updated in real-time, there is a 30-minute delay. The following services are available through the Reporting API: Transactions Services Retrieve Transactions Info by Batch ID Retrieve Current Transaction Info by Order ID. Retrieve Current Transaction Info by Transaction ID. Vault Services Allow to lookup Customer and Account information AutoBill Services: Allow to lookup AutoBill Account information Batch Services Allow the system to initiate a batch close on demand. To implement any of the above functionalities - create a program to consume one of the following Gateway services: For Batch and Transaction Services: URL for Production: URL for Certification and Test: For SecureNet Vault and AutoBill Services: URL for Production: URL for Certification and Test: Request Objects used for Reporting API Services have been described above and are the following: Object Name Description MERCHANT_KEY Required for all Reporting API methods except GetABAccount. PLAN_AB Required for GetABAccount method. 5. Gateway Response This section describes the response returned by the Gateway when a merchant server submits a transaction for processing. The response is an object that contains properties and response values showing the status of a transaction. The merchant server retrieves this data and determines the message to display to the end-user. GATEWAYRESPONSE Property Name Type Description 40

41 ABRESPONSE Object Response for AutoBill Transactions TRANSACTIONRESPONSE Object Response for Standard Payment Transactions and Reporting API Transactions VAULTACCOUNTRESPONSE Object Response for SecureNet Vault Account Transactions VAULTCUSTOMERRESPONSE Object Response for SecureNet Vault Customer Transactions Response objects for Settlement Transactions Property Name Type Description BATCHDATA Object Superset and Response object for Batches created. BATCHDETAIL Object Subset of Batch data with Individual Batch Details. Object is returned only if Batches are created and transactions exist to create a batch GATEWAYRESPONSE GATEWAYRESPONSE Object Summary GATEWAYRESPONSE ABRESPONSE SCHEDULE TRANSACTIONRESPONSE CUSTOMER_BILL GATEWAYRESPONSE ABRESPONSE SCHEDULE TRANSACTIONRESPONSE CUSTOMER_BILL This object defines the information that will be sent by the Gateway as a response for all transactions. This object defines the information that will be sent by the Gateway as a response for AutoBill transactions. Array of PAYMENT_AB objects, containing individual payment information, like amount, payment id, installment date, etc. This object defines the information that will be sent by the Gateway as a response for all standard payment transactions, as well as transactions submitted through Reporting API Services. This object contains customer s billing information, like billing address and telephone number, and is required for all E-Commerce transactions. VAULTACCOUNTRESPON VAULTCUSTOMERRESPO GATEWAYRESPONSE Object Specification XML Tag Data Type / Max Length <GATEWAYRESPONSE> VAULTACCOUNTRESPONS E VAULTCUSTOMERRESPON SE This object defines the information that will be sent by the Gateway as a response for all SecureNet Vault Account transactions. This object defines the information that will be sent by the Gateway as a response for all SecureNet Vault Customer transactions. Notes <ABRESPONSE> Object / 1 Please see Gateway Response Object Summary 41

42 <TRANSACTIONRESPONSE> Object / 1 Please see Gateway Response Object Summary <VAULTACCOUNTRESPONSE> Object / 1 Please see Gateway Response Object Summary <VAULTCUSTOMERRESPONS E> </GATEWAYRESPONSE> Object / 1 Please see Gateway Response Object Summary ABRESPONSE This object defines the information that will be sent by the Gateway as a response for AutoBill transactions. Please note that all fields in the ABRESPONSE object are returned in a left-justified, space-filled format. <ABRESPONSE> XML Tag Data Type / Max Length Notes <RESPONSE_CODE> String / 10 Transaction Response Code. See Appendix <RESPONSE_REASON_CODE> String / 10 Code for providing more details about the result of the transaction. <RESPONSE_REASON_TEXT> String / 200 Brief description of the result, which corresponds with the Response Reason Code. <RESPONSE_SUBCODE> String / 10 Code used by the system for internal transaction tracking. <CUSTOMERID> String / 25 Contains the customer ID associated with the transaction or record. <PAYMENTID> String / 25 Contains the Payment ID associated with the customer record. <PLANID> Integer Echoed from PLAN_AB <SCHEDULE> Object / 1 Echoed from PLAN_AB </ABRESPONSE> TRANSACTIONRESPONSE This object defines the information that will be sent by the Gateway as a response for all standard payment transactions, as well as transactions submitted through Reporting API Services. Please note that all fields in the TRANSACTIONRESPONSE object are returned in a left-justified, space-filled format. XML Tag Data Type / Notes 42

43 <TRANSACTIONRESPONSE> <ADDITIONALAMOUNT> Max Length Decimal / 15 For Debit cards it will contain the surcharge for the transaction, if one has been setup on the Host. (If surcharge applies, it must be printed on the customer receipt). Applicable to Paymentech only. For EBT and Stored Value cards it will contain the remaining balance on the card. <ADDITIONALDATA1> String / 100 For Stored Value cards includes Previous Balance (15 characters long zero filled decimal number with explicit decimal point) followed by Cash Out Amount (15 characters long zero filled decimal number with explicit decimal point). <ADDITIONALDATA2> String / 100 Paymentech specific data -for Debit Transactions it will contain the Trace Number for the transaction. Optional data returned by the Host for Fleet Cards. (If data exists, it must be printed on the customer receipt as reference data). For EBT transactions it will contain the FNS # echoed from the ADDITIONALINFO field of the MERCHANT_KEY object. <ADDITIONALDATA3> String / 100 For EBT transactions it will contain the Voucher # echoed from the ADDITIONALINFO field of the CARD object. <ADDITIONALDATA4> String / 100 Future Use <ADDITIONALDATA5> String / 100 Future Use <AUTHCODE> String / 6 The six-digit alphanumeric authorization or approval code. <AUTHORIZEDAMOUNT> Decimal / 15 Authorized Transaction Amount. <AVS_RESULT_CODE> String / 2 Address Verification System Result Code. See Appendix <BANK_ACCOUNTNAME> String / 50 Name of Account holder <BANK_ACCOUNTTYPE> String / 8 Echoed from TRANSACTION <BATCHID> String / 15 Default = 0, otherwise the Batch number of the transaction <CARD_CODE_RESPONSE_CODE String / 2 Response code from Credit Card Identification Code verification. See > Appendix <CARDHOLDER_FIRSTNAME> String / 50 First Name of Card Holder(Track Data required) <CARDHOLDER_LASTNAME> String / 50 Last Name of Card Holder (Track Data required) <CARDLEVEL_RESULTS> String / 10 Additional information about the credit card type. See Appendix 43

44 <CARDTYPE> String / 10 Card Type Code is returned. See Appendix <CASHBACK_AMOUNT> Decimal / 15 Cash Back Amount echoed from TRANSACTION <CAVV_RESPONSE_CODE> String / 2 Indicates the results of Cardholder Authentication Verification Value (CAVV) verification. See Appendix <CHECKNUM> String / 20 Echoed from TRANSACTION <CODE> String / 4 Echoed from TRANSACTION <CUSTOMERID> String / 25 Echoed from TRANSACTION <EXPIRYDATE> String / 4 Echoed from TRANSACTION <GRATUITY> Decimal / 15 Echoed from TRANSACTION <INDUSTRYSPECIFICDATA> String / 1 Echoed from TRANSACTION <LAST4DIGITS> String / 4 Last 4 digits of card or bank account number <LEVEL2_VALID> String / 5 Is Level 2 valid <LEVEL3_VALID> String / 5 Is Level 3 valid <MARKETSPECIFICDATA> String / 1 Echoed from TRANSACTION <METHOD> String / 7 Echoed from TRANSACTION <NETWORKCODE> String / 10 Network Code for DB transactions <NETWORKID> String / 10 Transaction Identifier for Authorization Network. <ORDERID> String / 25 Echoed from TRANSACTION <PAYMENTID> String / 25 Echoed from TRANSACTION <RESPONSE_CODE> String / 3 Transaction Response Code. See Appendix <RESPONSE_REASON_CODE> String / 6 Code for providing more details about the result of the transaction. <RESPONSE_REASON_TEXT> String / 200 Brief description of the result, which corresponds to the Response Reason Code. <RESPONSE_SUBCODE> String / 6 Code used by the system for internal transaction tracking. <RETREFERENCENUM> String / 50 Bank authorization reference # <SECURENETID> Integer / 8 Echoed from TRANSACTION 44

45 <SETTLEMENTAMOUNT> Decimal / 15 Settlement amount of Transaction <SETTLEMENTDATETIME> String / 14 Settlement date of transaction (MMDDYYYYHHMM00). <SYSTEM_TRACENUM> String / 50 System Trace # for Authorization Network <TRACKTYPE> String / 1 Track Type used for transaction, 0 if no track data is present <TRANSACTIONAMOUNT> Decimal / 15 Echoed from TRANSACTION. For INQUIRY_BALANCE transactions this field indicates the available balance on the gift card. <TRANSACTIONDATETIME> String / 14 Transaction date and time as recorded in the Gateway according to merchant time zone. (MMDDYYYYHHMMSS) <TRANSACTIONID> Integer / 15 System Generated Unique ID for transaction. Used to submit a modification of this transaction at a later time, such as voiding, crediting or capturing the transaction. <CUSTOMER_BILL> Object / 1 Echoed from TRANSACTION </ TRANSACTIONRESPONSE> VAULTACCOUNTRESPONSE This object defines the information that will be sent by the Gateway as a response for all SecureNet Vault Account transactions. Please note that all fields in the VAULTACCOUNTRESPONSE object are returned in a leftjustified, space-filled format. XML Tag Data Type / Max Length Notes <VAULTACCOUNTRESPONSE> Object / 1 Response for SecureNet Vault Account Transactions. <RESPONSE_CODE> String / 10 Transaction Response Code. See Appendix. <RESPONSE_REASON_CODE> String / 10 Code for providing more details about the result of the transaction. <RESPONSE_REASON_TEXT> String / 200 Brief description of the result, which corresponds with the Response Reason Code. <RESPONSE_SUBCODE> String / 10 Code used by the system for internal transaction tracking. <ACCOUNTTYPE> String / 8 Echoed from ACCOUNT_VAULT <ADDITIONALDATA1> String / 100 Contains TRANSACTIONID, which is generated while verifying an account before adding/updating a Vault account information. <ADDITIONALDATA2> String / 100 Future Use <CARDTYPE> String / 10 Card Type Code is returned. See Appendix <COMPANY> String / 50 Echoed from ACCOUNT_VAULT 45

46 <CUSTOMERID> String / 25 Contains the customer ID associated with the transaction or record <FIRSTNAME> String / 50 Echoed from ACCOUNT_VAULT <LAST4DIGITS> String / 4 Last 4 digits of card or bank account. <LASTNAME> String / 50 Echoed from ACCOUNT_VAULT <METHOD> String / 7 Echoed from ACCOUNT_VAULT <PAYMENTID> String / 25 Contains the Payment ID associated with the customer record. <TRANSACTIONDATETIME> String / 14 Transaction date and time as recorded in the Gateway according to merchant time zone. (MMDDYYYYHHMMSS). </VAULTACCOUNTRESPONSE> VAULTCUSTOMERRESPONSE Please note that all fields in the VAULTCUSTOMERRESPONSE object are returned in a left-justified, space-filled format. XML Tag Data Type / Max Length <VAULTCUSTOMERRESPONSE> Notes <COMPANY> String / 50 Echoed from CUSTOMER_VAULT <CUSTOMERID> String / 25 Contains the customer ID associated with the transaction or record. <FIRSTNAME> String / 50 Echoed from CUSTOMER_VAULT <LASTNAME> String / 50 Echoed from CUSTOMER_VAULT <RESPONSE_CODE> String / 10 Transaction Response Code. See Appendix <RESPONSE_REASON_CODE> String / 10 Code for providing more details about the result of the transaction. <RESPONSE_REASON_TEXT> String / 200 Brief description of the result, which corresponds with the Response Reason Code. <RESPONSE_SUBCODE> String / 10 Code used by the system for internal transaction tracking. <TRANSACTIONDATETIME> String / 14 Transaction date and time as recorded in the Gateway according to merchant time zone. (MMDDYYYYHHMMSS) </VAULTCUSTOMERRESPONSE> 46

47 5.2. Response objects for Settlement Transactions BATCHDATA Object Summary BATCHDATA BATCHDATA This object defines the information that can be submitted to the Gateway for Settlement Transactions. BATCHDETAILS BATCHDETAILS Array of BATCHDETAIL objects, containing individual batch information, like Batch ID created on Batch Close, number of transactions in a batch, etc BATCHDATA Object Specification This section details high-level BATCHDATA Object specification. Descriptions, rules and notes for each object of BATCHDATA are detailed below BATCHDATA This object defines the information that can be submitted to the Gateway for Settlement Transactions. XML Tag Data Type/ Max Length Notes <BATCHDATA> <BATCHDETAILS> </BATCHDATA> Array of BATCHDETAIL Please see BATCHDETAIL Object Summary BATCHDETAIL This object containing individual batch information, like Batch ID created on Batch Close, number of transactions in a batch, etc. XML Tag Data Type / Max Length Notes 47

48 <BATCHDETAIL> <BATCHID> String / 20 Batch ID created on Batch Close. Should be the value returned by the Gateway. <SECURENETID> String / 20 7-digit unique SecureNet ID provided by SecureNet to identify the merchant and is required for each submitted transaction. If you don t have your SecureNet ID please contact us. <TOTALBATCHAMOUNT String / 20 Total Amount of Sale and Credits. > <TOTALCREDITAMOUNT String / 20 Total Amount of Sale. > <TOTALSALEAMOUNT> String / 20 Total Amount of Sale. <TOTALTRANSACTIONS> String / 20 Number of transactions. </BATCHDETAIL> BATCHDATA Message format <BATCHDATA> XML Tag Data Type / Max Length Notes <BATCHCOUNT> String Number of batches. <BATCHDETAILS> Object Array Array of BATCHDETAIL objects. <SECURENETID> Integer / 8 </BATCHDATA> 7-digit unique SecureNet ID provided by SecureNet to identify the merchant and is required for each submitted transaction. 48

49 6. Overview of Gateway Methods Once you create and populate a data object (ex. TRANSACTION, TRANSACTION_VAULT, PLAN_AB) pass it into the desired Gateway Method Methods available through or Methods for Standard Payment Transactions Method Name Operation Description ProcessTransaction Process a non-vault Transaction This method accepts TRANSACTION as input parameter and processes non Vault Transactions. Set TRANSACTION_SERVICE value to 0. Input parameter: TRANSACTION Output parameter: GATEWAYRESPONSE ProcessTransaction Process Transaction by Customer ID This is a method to process transaction on-demand for the stored Customer Record. TRANSACTION_SERVICE property value inside TRANSACTION object should be set to 1. MERCHANT_KEY should be supplied within TRANSACTION object. No card/check information should be provided in the CARD/CHECK object. Input parameter: TRANSACTION Output parameter: GATEWAYRESPONSE ProcessTransaction Process Transaction by Secondary ID (SECONDARY_MERCHANT_KEY) This is a method to process transaction on-demand for the stored Customer Record. TRANSACTION_SERVICE property value inside TRANSACTION object should be set to 2. MERCHANT_KEY should be supplied within TRANSACTION object and secondary merchant key should be supplied inside SECONDARY_MERCHANT_KEY property of TRANSACTION object. No card/check information should be provided in the CARD/CHECK object. Input parameter: TRANSACTION Output parameter: GATEWAYRESPONSE 49

50 Methods for Vault Transactions Method Name Operation Description ProcessAccount Add Vault Account This method accepts TRANSACTION_VAULT as input parameter. The ACTIONCODE inside OPERATIONPARAMETERS object should be set to 1 for Add operation. All account information to be added should be passed inside ACCOUNT_VAULT object and MERCHANT_KEY inside TRANSACTION_VAULT object. Input parameter: TRANSACTION_VAULT Output parameter: GATEWAYRESPONSE ProcessAccount Update Vault Account This Method accepts TRANSACTION_VAULT as input parameter. The ACTIONCODE inside OPERATIONPARAMETERS object should be set to 2 for Update operation. PAYMENTID and CUSTOMERID should be passed inside ACCOUNT_VAULT object and MERCHANT_KEY inside TRANSACTION_VAULT object. Input parameter: TRANSACTION_VAULT Output parameter: GATEWAYRESPONSE ProcessAccount Delete Vault Account This method accepts TRANSACTION_VAULT as input parameter. The ACTIONCODE inside OPERATIONPARAMETERS object should be set to 3 for Delete operation. PAYMENTID and CUSTOMERID should be passed inside ACCOUNT_VAULT object and MERCHANT_KEY inside TRANSACTION_VAULT object. Note: if you are deleting last account of the customer - the customer will be deleted as well. Input parameter: TRANSACTION_VAULT Output parameter: GATEWAYRESPONSE ProcessCustomer Add Vault Customer This method accepts TRANSACTION_VAULT as input parameter. The ACTIONCODE inside OPERATIONPARAMETERS object should be set to 1 for Add operation. All customer information to be added should be passed inside CUSTOMER_VAULT object and MERCHANT_KEY inside TRANSACTION_VAULT object. Input parameter: TRANSACTION_VAULT Output parameter: GATEWAYRESPONSE 50

51 Method Name Operation Description ProcessCustomer Update Vault Customer This method accepts TRANSACTION_VAULT as input parameter. The ACTIONCODE inside OPERATIONPARAMETERS object should be set to 2 for Update operation. CUSTOMERID should be passed inside ACCOUNT_VAULT and MERCHANT_KEY inside TRANSACTION_VAULT object. Input parameter: TRANSACTION_VAULT Output parameter: GATEWAYRESPONSE ProcessCustomer Delete Vault Customer This method accepts TRANSACTION_VAULT as input parameter. The ACTIONCODE inside OPERATIONPARAMETERS object should be set to 3 for Delete operation. CUSTOMERID should be passed inside CUSTOMER_VAULT object and MERCHANT_KEY inside TRANSACTION_VAULT object. Input parameter: TRANSACTION_VAULT Output parameter: GATEWAYRESPONSE ProcessCustomerAndAccount Add Vault Customer And Account This method accepts TRANSACTION_VAULT as input parameter. The ACTIONCODE inside OPERATIONPARAMETERS object should be set to 1 for Add operation. All customer information to be added should be passed inside CUSTOMER_VAULT object, account information inside ACCOUNT_VAULT object and MERCHANT_KEY inside TRANSACTION_VAULT object. Input parameter: TRANSACTION_VAULT Output parameter: GATEWAYRESPONSE ProcessCustomerAndAccount Update Vault Customer And Account This method accepts TRANSACTION_VAULT as input parameter. The ACTIONCODE inside OPERATIONPARAMETERS object should be set to 2 for Update operation. All customer information to be added should be passed inside CUSTOMER_VAULT object, account information inside ACCOUNT_VAULT object and MERCHANT_KEY inside TRANSACTION_VAULT object. Input parameter: TRANSACTION_VAULT Output parameter: GATEWAYRESPONSE 51

52 Method Name Operation Description ProcessVaultTransaction Process Transaction This is a method to process transaction on-demand and to store Add Customer and a new Customer and account in Vault. TRANSACTION_SERVICE Account property value inside TRANSACTION object should be set to 3. MERCHANT_KEY should be supplied within TRANSACTION_VAULT object, customer information to be added should be supplied inside CUSTOMER_VAULT, account information to be added should be supplied inside ACCOUNT_VAULT and transaction information except MERCHANT_KEY should be supplied inside TRANSACTION object. Input parameter: TRANSACTION_VAULT Output parameter: GATEWAYRESPONSE CopyVaultAccount Copy Vault Account This method allows to copy an existing Vault account from one customer to another and from one SecureNet ID to another. Input parameters: SOURCE_MERCHANT_KEY (MERCHANT_KEY), SOURCE_ACCOUNT_VAULT (ACCOUNT_VAULT), TARGET_MERCHANT_KEY (MERCHANT_KEY), TARGET_ACCOUNT_VAULT (ACCOUNT_VAULT), CREATE_CUSTOMER (integer, 0 do not create, 1 - create), CHANGE_ACCOUNT_INFO_TO_TARGET (integer, 0 do not change target account, 1 change target account). Output parameter: GATEWAYRESPONSE Methods for AutoBill Transactions Method Name Operation Description AddABAAccount Add AutoBill Account Use this method to add an AutoBill Account. Input parameter: PLAN_AB Output parameter: GATEWAYRESPONSE UpdateABAccount Update AutoBill Account Use this method to update an AutoBill Account. Input parameter: PLAN_AB Output parameter: GATEWAYRESPONSE UpdateABSchedule Update AutoBill Schedule Use this method to update an AutoBill Schedule. Input parameter: PLAN_AB Output parameter: GATEWAYRESPONSE 52

53 Methods for Settlement Transactions Method Name Operation Description CloseBatch Close Batch This method is for closing a batch. Input parameter: MERCHANT_KEY Output parameter: BATCHDATA 6.2. Reporting API methods for Batch and Transaction Services, available through: or Method Name GetBatchTransactions Description Method to retrieve the TRANSACTIONRESPONSE data for a particular Batch. Input parameters: MERCHANT_KEY and BATCHID. Output parameter: Array of TRANSACTIONRESPONSE objects. a. If BATCHID =0 approved transactions from the unclosed batch will be returned b. If BATCHID = 1 transactions for the last closed batch along with original batch id will be returned c. For all other values in BATCHID, transactions specific to that particular batch will be returned GetTransactionByOrderID Method to retrieve the TRANSACTIONRESPONSE data by Order ID when Transaction ID is not available. Transactions with basic validation errors are not stored and returned in this method. Input parameters: MERCHANT_KEY and ORDERID. Output parameter: TRANSACTIONRESPONSE GetTransactionByTransactionID Method to retrieve the TRANSACTIONRESPONSE data by Transaction ID. Input parameters: MERCHANT_KEY and TRANSACTIONID. Output parameter: TRANSACTIONRESPONSE GetCurrentBatchID This method will return the last closed batch id. Input parameter: MERCHANT_KEY Output parameter: BATCHID GetTransactions Method to retrieve transaction data for transactions processed during a specific period of time. 53

54 Input parameters: MERCHANT_KEY, StartDate, EndDate, ExcludeDate, CustomerID, Amount, AmountSpecified, RBOnly. Output parameter: Array of TRANSACTIONRESPONSE objects Reporting API methods for SecureNet Vault and AutoBill Services, available through: or or GetABAccount Method Name Method to retrieve an AutoBill account. Description Input parameters: PLAN_AB Output parameter: PLAN_AB GetABAccounts Method to retrieve an AutoBill account. Input parameters: MERCHANT_KEY and CustomerID Output parameter: PLAN_AB GetVaultCustomers Method to retrieve a Vault Customer. Input parameters: MERCHANT_KEY and CustomerID Output parameter: CUSTOMER_VAULT GetVaultAccountByCustomer GetVaultAccount GetVaultRecordByCardNo Method to retrieve Vault Accounts by Merchant Key and Customer ID. Input parameters: MERCHANT_KEY and CustomerID Output parameter: Array of ACCOUNT_VAULT objects Method to retrieve a Vault Account Input parameters: MERCHANT_KEY, CustomerID, and PaymentID Output parameter: ACCOUNT_VAULT Method to retrieve Vault Accounts by Merchant Key and Card Number. Input parameters: MERCHANT_KEY and CardNumber Output parameter: Array of ACCOUNT_VAULT objects 54

55 7. Appendix 7.1. ACDI Account Duplicate Check Indicator: Indicates whether duplicate account exists. 0 Checks for Duplicate Card Number for specified Customer ID 1 Checks for Duplicate Card Number and Expiration Date for specified Customer ID 2 Checks for Duplicate Card Number for All Customer IDs for specified SecureNet ID 3 Checks for Duplicate Card Number for All Customer IDs for specified Group ID Note: For ACCOUNT_VAULT only. Set to 0 by default AVS_RESULT_CODE Indicates the result of Address Verification System (AVS) checks. The Address Verification System (AVS) helps merchants detect suspicious transaction activity. To use this system, the merchant must submit the customer s credit card billing address (numeric value only) to the Gateway for validation. This information is submitted by the Gateway to the financial institutions. The financial institutions compare the submitted address with the billing address on file for that particular credit card and return an AVS response code to the Gateway. The Gateway includes this code in the response back to the merchant. AVS Code Description 0 AVS data not provided A Street address matches, Zip Code does not B Postal code not verified due to incompatible formats C Street address and postal code not verified due to incompatible formats D Street address and postal code match E AVS data is invalid G Non-U.S. issuing bank does not support AVS I Address information not verified by international issuer Customer Name, Billing Address and Zip match M 55

56 N P R S T U W X Y Z Neither street address nor Zip code match Street address not verified due to incompatible format Retry: issuer's system unavailable or timed-out U.S. issuing bank does not support AVS Street address does not match, but 9-digit Zip code matches Address information is unavailable 9-digit Zip matches, street address does not Street address and 9-digit Zip match Street address and 5-digit Zip match 5-digit Zip matches, street address does not Note: It is recommended that merchants enable some level of Address Verification to avoid non-qualified transaction surcharges that can be levied by merchant banks and merchant service providers CARD_CODE_RESPONSE_CODE (CVV2/CVC2/CID) The Credit Card Identification Code, or Card Code, is a three- or four-digit security code that is printed on the back of credit cards in reverse italics in the card s signature panel (or on the front for American Express cards). The merchant can collect this information from the customer and submit the data to the Gateway. The Gateway will pass this information to the financial institution along with the credit card number. The financial institution will determine if the value matches the value on file for that credit card and return a code indicating whether the comparison failed or succeeded. The Gateway passes back this response code to the merchant. Code M N P S U Y Description Match No match Not processed Data not present Issuer unable to process request Card Code Matches (Amex Only) 7.4. CARDLEVEL_RESULTS Provides additional information on card type: Code A B C D G I K M Q R S Description Visa Traditional Visa Traditional Rewards Visa Signature Visa Infinite Visa Business Card Visa Commerce Visa Corporate Card MasterCard/EuroCard and Diners Private Label Proprietary Card Visa Purchasing Card 56

57 U G1 S1 AX1 DI1 H N P G2 J1 J2 J3 Visa Travel Money Visa Signature Business Visa Fleet American Express Discover Classic Visa Check Card or Prepaid Platinum Visa Check Card Gold Visa Check Card Visa Business Check Card General Prepaid Prepaid Gift Card Prepaid Healthcare 7.5. CAVV_RESPONSE_CODE Indicates the results of Cardholder Authentication Verification Value (CAVV) verification. Code Blank CAVV not validated Description 0 CAVV not validated because erroneous data was submitted 1 CAVV failed validation 2 CAVV passed validation 3 CAVV validation could not be performed; issuer attempt incomplete 4 CAVV validation could not be performed; issuer system error 5 Reserved for future use 6 Reserved for future use 7 CAVV attempt failed validation issuer available (U.S.-issued card/non-u.s acquirer) 8 CAVV attempt passed validation issuer available (U.S.-issued card/non-u.s. acquirer) 9 CAVV attempt failed validation issuer unavailable (U.S.-issued card/non-u.s. acquirer) 57

58 A B CAVV attempt passed validation issuer unavailable (U.S.-issued card/non-u.s. acquirer) CAVV passed validation, information only, no liability shift 7.6. CARDTYPE Codes The CARDTPYE Code is a system-specific code for different types of cards as identified by the Gateway DCI CARDTYPE Code Response Description ACH e-check AX American Express DB Debit Card DC Diners Club DS Discover EBT Electronic Benefits Transfer GC Gas Card (Fuelman) JC JCB MC MasterCard MCF MasterCard Fleet PD PIN-less Debit SV Stored Value Card VI Visa VIF Visa Fleet VY Voyager WX Wright Express (WEX) Card CHECK21 Check 21 58

59 Duplicate Transaction Indicator must be activated in Tools tab of the Virtual Terminal: "Duplicate Transaction Lockout Settings". Duplicates are evaluated against AMOUNT, CARDNUMBER, and, optionally, a user defined field (like Customer ID, Invoice Number or one of the UDFs), and within a specified time frame of only APPROVED transactions, unless otherwise noted. If a duplicate transaction is found the new transaction is not reprocessed. 0 No duplicate checking will be done. 1 If evaluation of the above conditions results in a duplicate transaction an exception code will be returned. 2 If evaluation of the above conditions results in a duplicate transaction the original transaction response is returned with RESPONSE_REASON_TEXT = Approved. 3 Identical to 1 however ORDERID is not evaluated. Note: ORDERID will be evaluated and responses sent accordingly AFTER Duplicate check is evaluated and no duplicate is found INDUSTRYSPECIFICDATA For E-commerce transactions: P Physical goods D Digital goods For MO/TO transactions: 1 Single purchase transaction (AVS is required) 2 Recurring billing transaction (do not submit AVS) 3 Installment transaction For Retail transactions leave blank. Note: If TRANSACTION_SERVICE = 1 or 2, INDUSTRYSPECIFICDATA will be set to 1 by default, unless transaction request specifies otherwise METHOD Method indicates the method of payment for the transaction being sent to the system and can be one of the following: ORDERID Code CC DB ECHECK CHECK21 PD SV EBT Description Credit Card Debit Electronic Check Electronic Check PIN-less Debit Stored Value Electronic Benefits Transfer 59

60 A client generated unique ID for each transaction submitted to the Gateway. ORDERID must be unique to the SecureNet ID, however the uniqueness is only evaluated for APPROVED transactions and only for the last 30 days. If a transaction results in a decline that ORDERID may be used again. The ORDERID is used as a default method to avoid processing duplicate transactions. The ORDERID is not verified for transaction types such as VOID and PRIOR_AUTH_CAPTURE. ORDERID is limited to 25 characters; for example CUSTOMERID MMddyyyyHHmmss REF_TRANSID It is possible to re-run a transaction, i.e. retrieve credit card information from a previously approved or declined transaction and use this information to submit another transaction. If you set REF_TRANSID to TRANSACTIONID of the previously approved or declined transaction, you are not required to send a credit card number, the number from the transaction referenced by REF_TRANSID will be used. When re-running a transaction, please follow the instructions below: 1. REF_TRANSID should be present. CARDNUMBER, ACCOUNTNUM, TRACKDATA, or MICRDATA should not be present. 2. REF_TRANSID can be from a previously approved or declined transaction. 3. REF_TRANSID should not be older than 90 days for the same SecureNet ID. 4. Re-running a transaction is available for the following transaction codes: AUTH_CAPTURE, AUTH_ONLY, CAPTURE_ONLY, FORCE_CREDIT, PARTIAL_AUTH_ONLY, PARTIAL_AUTH_CAPTURE, and VERIFICATION. 5. Re-running a transaction cannot be done for a Card-Present transaction, i.e. INDUSTRYSPECIFICDATA in TRANSACTION object should not be empty or null, it should be set to 1, 2, 3, P, or D RESPONSE_CODE Indicates the result of the transaction: 1 Approved 2 Declined 3 Error / Invalid Data SECCODE The Standard Entry Class (SEC) code is a three letter code that identifies the nature of the ACH entry. Here are some common SEC codes: Code ARC BOC Description Accounts Receivable Entries. A check received by a merchant through mail or drop box and presented as an ACH entry. Back Office Conversion. A check that is converted from paper to an electronic debit at a centralized location and presented as an ACH entry. 60

61 CCD POS PPD TEL WEB Corporate Cash Disbursement. Primarily used for business to business transactions. Point-of-Sale. A debit at electronic terminal initiated by use of a plastic card. An example is using your Debit card to purchase gas. Prearranged Payment and Deposits. Used to credit or debit a consumer account. Popularly used for payroll direct deposits and preauthorized bill payments. Telephone Initiated-Entry. Verbal authorization by telephone to issue an ACH entry such as checks by phone. (TEL code allowed for inbound telephone orders only. NACHA disallows the use of this code for outbound telephone solicitations calls). Web Initiated-Entry. Electronic authorization through the Internet to create an ACH entry Transaction Type Table CODE: Transaction Type Code. The following table describes the Codes of transactions that can be submitted to the Gateway and how the Gateway will process them. CODE Transaction Type Description 0000 AUTH_ONLY Used to validate a credit/debit card for the amount of goods sold. The Gateway will send this type of transaction to the financial institution for approval. However this transaction will not be sent for settlement. If the merchant does not act on the transaction within 30 days, the transaction will no longer be available for capture. Available for: E-checks*, Credit Cards, Check Cards, and Prepaid Cards. * Future use 0001 PARTIAL_AUTH_ONLY Used to validate a prepaid card for the amount of goods sold and may return an amount less than the requested amount if the total amount cannot be fully authorized. The Gateway will send this type of transaction to the financial institution for approval. However this transaction will not be sent for settlement. If the merchant does not act on the transaction within 30 days, the transaction will no longer be available for capture. Available for: Prepaid Cards Nashville platform only 61

62 CODE Transaction Type Description 0100 AUTH_CAPTURE Identical to AUTH_ONLY, however on approval the transaction will be picked up for settlement. Available for: E-checks, Credit Cards, Check Cards, PIN Debit, PIN-less Debit, and Prepaid Cards PARTIAL_AUTH_CAPTURE Identical to PARTIAL_AUTH_ONLY, however on approval the transaction will be picked up for settlement. Available for: Prepaid Cards PRIOR_AUTH_CAPTURE This transaction is used to request settlement for a transaction that was previously submitted as an AUTH_ONLY. The Gateway will accept this transaction and initiate settlement if the following conditions are met: - The transaction is submitted with the ID of the original authorization-only transaction to be settled. - The transaction ID is valid and the system has a record of the original authorization-only transaction. - The original transaction referred to is not already settled, expired, or voided. - The amount being requested for settlement is less than or equal to the original authorized amount. If no amount is submitted in this transaction, the Gateway will initiate settlement for the amount originally authorized. Note: If extended line item, tax, freight, and/or duty information was submitted with the original transaction, adjusted information may be submitted in the event that the transaction amount changed. If no adjusted line item, tax, freight, and/or duty information is submitted, the information submitted with the original transaction will apply. Available for: E-checks*, Credit Cards, Check Cards, and Prepaid Cards. * Future use 0300 CAPTURE_ONLY This is a request to settle a transaction that was not submitted for authorization through the payment Gateway. The Gateway will accept this transaction if an authorization code is submitted. AUTHCODE is a required field for CAPTURE_ONLY transactions. Available for: Credit Cards, Check Cards, and Prepaid Cards. 62

63 CODE Transaction Type Description 0400 VOID This action cancels a previous transaction such that it is not sent for settlement. It can be performed on the following transaction types: CREDIT, AUTH_CAPTURE, CAPTURE_ONLY, and AUTH_ONLY. The transaction will be accepted by the Gateway if the following conditions are met: - The transaction is submitted with the ID of the original transaction to be voided (REF_TRANSID). - The Gateway has a record of the transaction referenced by the ID. - The transaction has not been sent for settlement. Available for: E-checks, Credit Cards, Check Cards, and Prepaid Cards All platforms 0401 PARTIAL_VOID This action will reduce the amount of a previous unsettled transaction. - The transaction is submitted with the ID of the original transaction to be voided (in REF_TRANSID field). - The Gateway has a record of the transaction referenced by REF_TRANSID. - The transaction has not been sent for settlement. Available for: E-checks, Credit Cards, Check Cards, and Prepaid Cards. MOTO and E-Commerce merchants only Nashville platform only, TSYS in pipeline VOID_BY_ORDERID This action cancels a previous transaction such that it is not sent for settlement. It can be performed on unsettled transactions of the following types: AUTH_ONLY, AUTH_CAPTURE, PRIOR_AUTH_CAPTURE, CREDIT_AUTHONLY, and FORCE_CREDIT. The transaction will be accepted by the Gateway if the following conditions are met: - The transaction is submitted with the ORDERID of the original transaction to be voided (in ORDERID field). - The Gateway has a record of the transaction referenced by the ORDERID. - The transaction has not been sent for settlement. Available for: E-checks, Credit Cards, Check Cards, and Prepaid Cards All platforms 63

64 CODE Transaction Type Description 0500 CREDIT This transaction is also referred to as a Refund and indicates to the Gateway that money should flow from the merchant to the customer. The Gateway will accept a credit (refund) request if the transaction submitted meets the following conditions: - The transaction is submitted with the ID of the original transaction against which the credit is being issued (REF_TRANSID). - The transaction ID is valid and the system has a record of the original transaction. - The original transaction has been settled. - The sum submitted in the credit transaction and all credits submitted against the original transaction is less than or equal to the original transaction amount. - The card number (or the last four digits thereof) submitted with the credit transaction matches the card number of the original transaction. - The credit transaction is submitted within 120 days of the settlement date and time of the original transaction. Available for: E-checks, Credit Cards, Check Cards, and Prepaid Cards CREDIT_AUTHONLY Similar to CREDIT but the transaction is not eligible to be captured until it is marked by Capture using CREDIT_PRIORAUTHCAPTURE Available for: Credit Cards, Check Cards, and Prepaid Cards CREDIT_PRIORAUTHCAPTURE Capture CREDIT_AUTHONLY transaction and mark for Capture and Settlement Available for: Credit Cards, Check Cards, and Prepaid Cards FORCE_CREDIT Similar to CREDIT used for Unlinked credits when previous Authorized Transaction is not Available. This feature has to be enabled by Merchant Service Provider on the Gateway Available for: E-checks, Credit Cards, Check Cards, and Prepaid Cards FORCE_CREDIT_AUTHONLY Similar to FORCE_CREDIT but the transaction is not eligible to be captured until it is marked by Capture using FORCE_CREDIT_PRIORAUTHCAPTURE Available for: Credit Cards, Check Cards, and Prepaid Cards FORCE_CREDIT_PRIORAUTHCAPTURE Capture FORCE_CREDIT_AUTHONLY transaction and mark for Capture and Settlement Available for: Credit Cards, Check Cards, and Prepaid Cards VERIFICATION Run Transaction Verification on Credit Card or Bank Account with zero dollar amount. Available for: Nashville, TSYS, and SecureNet FrontEnd platforms. Credit Cards and E-checks. 64

65 CODE Transaction Type Description 0800 AUTH_INCREMENT This action performs an incremental authorization on a previously authorized transaction (i.e., AUTH_ONLY). Only applicable to Visa transactions and only if the terminal has been set up as LODGING or AUTO RENTAL industry type. The transaction will be accepted by the Gateway if the following conditions are met: - The transaction is submitted with the ID of the transaction. - The Gateway has a record of the transaction referenced by the ID. - The transaction has not been sent for settlement. AUTH_INCREMENT can be submitted multiple times before submitting PRIOR_AUTH_CAPTURE ISSUE This action issues a new card or adds funds to an already activated stored value card; also used for refunds to a stored value card. Will be treated as credit to the card holder. Available for: Pre-paid Cards only Paymentech platform only 0901 ACTIVATE This action activates a new card; only necessary if the stored value card is set to require activation. Available for: Pre-paid Cards only Paymentech platform only 0902 REDEEM This action charges a card; the amount has to be within the available balance. Available for: Pre-paid Cards only Paymentech platform only 0903 REDEEM_PARTIAL This action charges a card; the card will be approved only for the available balance on the card if the transaction is approved. Available for: Pre-paid Cards only Paymentech platform only 0904 DEACTIVATE This action de-activates an activated card; amount should be specified as zero. Available for: Pre-paid Cards only Paymentech platform only 0905 REACTIVATE This action re-activates a de-activated card. Available for: Pre-paid Cards only Paymentech platform only 65

66 CODE Transaction Type Description 0906 INQUIRY_BALANCE This action checks the available balance on the stored value card; amount should be specified as zero. The available balance on the gift card will be returned in the TRANSACTIONAMOUNT field in the TRANSACTIONRESPONSE object. Available for: Pre-paid Cards only Paymentech platform only SOFTDESCRIPTOR Displays a description in addition to the merchant s DBA. This is currently restricted to credit card transactions only. Contact Support to use this field. Maximum length is 25 characters. The SOFTDESCRIPTOR field should contain the Doing Business As (DBA) name of the merchant and be the name most recognizable to the cardholder. The SOFTDESCRIPTOR field must not be used as a description field in lieu of the required, recognizable name. In addition, the SOFTDESCRIPTOR field may contain a merchandise description, order number, reference number, or other information that will further identify the transaction and assist cardholder recognition. If additional information is used, the SOFTDESCRIPTOR field must conform to one of the following formats: Field Position Data Option 1: Pos. 1 3: Merchant name or abbreviation Pos. 4: Asterisk (*) Pos. 5 25: Descriptive Information Option 2: Pos. 1 7: Merchant name or abbreviation Pos. 8: Asterisk (*) Pos. 9 25: Descriptive Information Option 3: Pos. 1 12: Merchant name or abbreviation Pos. 13: Asterisk (*) Pos : Descriptive Information 66

67 7.16. TRACKDATA This field contains information encoded from a valid magnetic stripe and includes data such as Primary Account Number and Expiration Date. Unaltered Track Data must be forwarded intact. On Debit Card and EBT (Not Voucher Clear) transactions, this field is mandatory (with the exception of Debit Card PIN-Less transactions, which are entered manually). Track Data may contain Track 1 and/or Track 2 data. Track 2 data is required for Pin Debit transactions. Accurate Track 1 or Track 2 data is required to receive Card Present rates. Authorization requests containing altered Track 1 or Track 2 data will be flagged as NOT COMPLIANT by Visa and MasterCard, resulting in the merchant paying the highest transaction rate and forfeiture of chargeback protection. Both associations monitor noncompliant transactions and will assess fines and penalties to merchants that are not in compliance. The POS device or software must perform the following operations on Track read data before it can be used in an authorization request message: The longitudinal redundancy checks (LRC) must be calculated for the data read from the Track and compared to the LRC read from the Track. The Track data is assumed to be read without errors when no character parity errors are detected and the calculated and read LRCs match. The starting sentinel, ending sentinel, and LRC are discarded. The character codes read from the magnetic stripe must be converted from the encoded character set to the set used for the authorization request message. The characters encoded on Track 1 are six bit plus parity codes and the characters encoded on Track 2 are four bit plus parity codes, with the character set used for the request message defined as seven bit plus parity code. All characters read from a Track must be converted to the request message character set and transmitted as part of the request. The converted Track data cannot be modified by adding or deleting non-framing characters and must be a one for one representation of the characters read from the Track. Note: You only need to submit Track 1 or Track 2 data. If both tracks are sent by the POS application, the Gateway will use the Track 1 information. If neither Track 1 nor Track 2 data is submitted, but x_card_num and x_exp_date are submitted, the Card Present transaction rate might be downgraded. Track 1 Data This is a variable length field with a maximum data length of 76 characters. The Track 1 data read from the cardholder s card is checked for parity and LRC errors and then converted from the six-bit characters encoded on the card to seven bit characters as defined in ANSI X3.4. As part of the conversion, the terminal must remove the framing characters (start sentinel, end sentinel, and LRC characters). The separators must be converted to either an ASCII ^ (HEX 5E) or ASCII <US> (HEX 1F) characters. The entire unaltered Track, excluding framing characters, must be provided in the authorization request message or an error condition will result. 67

68 Track 1 can be encoded with up to 79 characters as shown below: SS FC PAN FS NAME FS DATE SVC CD DISCRETIONARY DATA ES LRC LEGEND: Field Description Length Format SS Start Sentinel 1 % FC Format Code 1 Alphanumeric ( B for credit cards) PAN Primary Account Number 19 max Numeric FS Field Separator 1 ^ NAME Card Holder Name 2-25 max Alphanumeric FS Field Separator 1 ^ DATE Expiration Date (YYMM) 4 Numeric SVC CD Service Code 3 Numeric DISCRETIONARY DATA Optional Issuer Data Variable Alphanumeric ES End Sentinel 1? LRC Longitudinal Redundancy Check 1 Total Cannot exceed 79 bytes 79 Track 2 Data This is a variable length field with a maximum data length of 37 characters. The Track 2 data read from the cardholder s card is checked for parity and LRC errors and then converted from the four-bit characters encoded on the card to seven bit characters as defined in ANSI X3.4. As part of the conversion, the terminal must remove the start sentinel, end sentinel, and LRC characters. The separators must be converted to either an ASCII = (HEX 3D) or ASCII D (HEX 44) characters. The entire UNALTERED Track (excluding framing characters) must be provided in the authorization request message or an error message will be generated. Track 2 Data can be encoded with up to 40 characters as shown below: SS PAN FS DATE SVC CD DISCRETIONARY DATA ES LRC LEGEND: Field Description Length Format SS Start Sentinel 1 ; PAN Primary Account Number 19 max Numeric FS Field Separator 1 = DATE Expiration Date (YYMM) 4 Numeric SVC CD Service Code 3 Numeric DISCRETIONARY DATA Optional Issuer Data Variable Alphanumeric ES End Sentinel 1 0F Hex LRC Longitudinal Redundancy Check 1 Total Cannot exceed 40 bytes 40 68

69 7.17. TRANSACTION_SERVICE [Default] 0 Regular Transaction [SecureNet Vault Transactions] 1 Process Transaction using Customer ID 2 Process Transaction using SECONDARY_MERCHANT_KEY 3 Process Transaction Add Customer and Account Product Codes for Petroleum Industry Transactions Paymentech Petroleum Product Codes/Paymentech Generic Codes Ethan1 (Regular) 001 Wipers 023 Diesel 002 Battery 024 Unleaded 003 Fluids/Coolants 025 Super Unleaded 004 Tires 026 Other Fuel 005 Hoses 027 Unleaded Plus 006 Filters 028 Gas/Alcohol 007 Repairs 030 Gas/Alcohol Oil Change 031 Diesel Tune Up 032 Propane 010 Inspection 033 CNG 011 Car Wash 034 Unleaded 10% blend 012 Tires/Batteries/Access 035 Unleaded Plus 10% blend 013 Other 040 Super Unleaded 10% 014 Accessories 041 Unleaded 7% blend 015 Food 042 Unleaded Plus 7% 016 Service 043 Super Unleaded 7% blend 017 Parts 044 Refer Fuel 018 Labor 045 Farm Fuel 019 Reserved 046 Multi-fuel 020 Discount* 051 Motor Oil 021 Sales Tax** 056 Lamps 022 *Product Code 051: Discount is a negative amount **If tax is submitted as a Product Code, it must ALSO be submitted in the purchasing card data fields. Product Amounts can be treated as negative values if they have been setup as such with the host. When submitted, the total of the positive product amounts minus the negative product amounts must equal the transaction amount. Transaction amounts must cross foot: a) Sum of all Product Amounts must equal Transaction Amount. 69

70 b) If provided: Unit Price * Quantity = Product Amount (Quantity multiplied by Unit Price is rounded using 4/5 rounding to derive the extended amount.) Developer Notes Sample Code Standard Payment Transaction - C# Assuming the developer has service reference to the Gateway named GatewayService using ProjectNamespace.GatewayService; private void ProcessGatewayTransaction() { //First define the primary objects that will be needed GatewayClient Client = new GatewayClient("BasicHttpBinding_IGateway"); TRANSACTION ot = new TRANSACTION(); GATEWAYRESPONSE ogr = new GATEWAYRESPONSE(); //All Gateway Transactions require a MERCHANT_KEY ot.merchant_key = new MERCHANT_KEY(); //Create an instance of a payment object ot.card = new CARD(); //OR ot.check = new CHECK(); //Add some additional objects to the transaction ot.customer_bill = new CUSTOMER_BILL(); ot.userdefined = new USERDEFINED(); //Assign some values ot.merchant_key.securenetid = ; ot.merchant_key.securekey = "OurSecureKey"; ot.card.cardnumber = " "; ot.card.cardcode = "123"; ot.card.expdate = "1212"; //MMYY ot.customer_bill.firstname = "Customer"; ot.customer_bill.lastname = "Last Name"; ot.userdefined.ud1 = "Userdefined Value"; ot.userdefined.ud2 = "There are 50 of these to use"; ot.amount = 1; ot.test = "FALSE"; // When testing, use TRUE ot.method = "CC"; // We'll use a credit card ot.orderid = DateTime.Now.ToString("MMddyyhhmmss"); // Define a unique id for each transaction ot.code = "0000"; // An Auth only transaction //Process the Transaction ogr = Client.ProcessTransaction(oT); //Close the Client 70

71 } Client.Close(); if (ogr.transactionresponse.response_code == "1") { //Handle approved transaction } else if (ogr.transactionresponse.response_code == "2") { //Handle declined transaction } else { //Handle transaction error } SecureNet Vault Transactions - C# using System; using VaultCodeSample.GatewayService; namespace VaultCodeSample { class Program { GatewayService.GatewayClient gsclient = new GatewayService.GatewayClient("BasicHttpBinding_IGateway"); // please use basichttpbinding for SOAP for performance reason string customerid = "Test" + DateTime.Now.ToString("MMddyyhhmm"); static void Main(string[] args) { Console.WriteLine(" Type and Enter for Vault Transaction\n 1. ProcessVaultTransactionAndAddCustomerAccount \n 2." + "ProcessVaultTransactionByCustomerID \n 3. ProcessVaultAccount\n 4. ProcessTransactionbySecondarySecurenetID"); int s = Convert.ToInt32(Console.ReadLine()); Program p = new Program(); switch (s) { case 1: p.processvaulttransactionandaddcustomeraccount(); Console.WriteLine(" Request Successful"); break; case 2: p.processvaulttransactionbycustomerid(); Console.WriteLine(" Request Successful"); break; case 3: p.processvaultaccount(); Console.WriteLine(" Request Successful"); break; case 4: p.processvaulttransactionbysecondarysecurenetid(); Console.WriteLine(" Request Successful"); break; default: Console.WriteLine(" Selected item is not valid"); break; } Console.Read(); 71

72 } public void ProcessVaultTransactionAndAddCustomerAccount() { try { Console.WriteLine(" Running ProcessVaultTransactionAndAddCustomerAccount \n"); OPERATIONPARAMETERS operationparameters = new OPERATIONPARAMETERS(); operationparameters.actioncode = 1; operationparameters.add_if_declined = 0; var transaction = GetTransactionObject(); var transactionvault = new TRANSACTION_VAULT(); transactionvault.transaction = transaction; transactionvault.transaction.transaction_service = 3; transactionvault.account_vault = GetAccountVault(); transactionvault.customer_vault = GetCustomerVault(); transactionvault.merchant_key = new MERCHANT_KEY(); transactionvault.operationparameters = operationparameters; transactionvault.merchant_key.securekey = "cwpqupz0li3p"; transactionvault.merchant_key.securenetid = ; var gatewayresponse = gsclient.processvaulttransaction(transactionvault); Console.WriteLine(" Method Payment ID Customer ID Response \n"); Console.WriteLine(" {0} {1} {2} {3} \n", gatewayresponse.vaultaccountresponse.method, gatewayresponse.vaultaccountresponse.paymentid, gatewayresponse.vaultcustomerresponse.customerid, gatewayresponse.vaultaccountresponse.response_reason_text); } catch (Exception ex) { Console.WriteLine(ex.Message); } } private void ProcessVaultTransactionByCustomerID() { try { var transactionvault = new TRANSACTION_VAULT(); TRANSACTION transaction = GetTransactionObject(); transaction.transaction_service = 1; transaction.customerid = "CID1"; // Please increase this number to the next one (e.g. CID2) or provide a unique number each time you run to get an approval transaction.customer_bill = GetVaultCustomerCustomerBill(); GatewayService.GatewayClient gatewayclient = new GatewayClient("wsBinding"); var gatewayresponse = gatewayclient.processtransaction(transaction); 72

73 Console.WriteLine(" Method Customer ID Card Type, Response \n"); Console.WriteLine(" {0} {1} {2} {3} \n", gatewayresponse.transactionresponse.method, gatewayresponse.transactionresponse.customerid, gatewayresponse.transactionresponse.cardtype, gatewayresponse.transactionresponse.response_reason_text); } catch (Exception ex) { Console.WriteLine(ex.Message); } } private void ProcessVaultTransactionBySecondarySecurenetId() { try { GatewayClient gatewayclient = new GatewayClient("wsBinding"); MERCHANT_KEY merchantsecondarykey = new MERCHANT_KEY(); merchantsecondarykey.securenetid = ; merchantsecondarykey.securekey = "cwpqupz0li3p"; var transactionvault = new TRANSACTION_VAULT(); var transaction = GetTransactionObject(); transaction.customerid = "CID1"; // Please increase this number to the next one (e.g. CID2) or provide a unique number each time you run to get an approval transaction.paymentid = "PID1"; // Please increase this number to the next one (e.g. PID2) or provide a unique number each time you run to get an approval transaction.transaction_service = 2; transaction.secondary_merchant_key = merchantsecondarykey; var gatewayresponse = gatewayclient.processtransaction(transaction); Console.WriteLine(" Method Customer ID Card Type, Response \n"); Console.WriteLine(" {0} {1} {2} {3} \n", gatewayresponse.transactionresponse.method, gatewayresponse.transactionresponse.customerid, gatewayresponse.transactionresponse.cardtype, gatewayresponse.transactionresponse.response_reason_text); } catch (Exception ex) { Console.WriteLine(ex.Message); } } private void ProcessVaultAccount() { try { GatewayClient gatewayclient = new GatewayClient("wsBinding"); var transactionvault = new TRANSACTION_VAULT(); transactionvault.account_vault = GetAccountVault(); transactionvault.operationparameters = new OPERATIONPARAMETERS { ACTIONCODE = 1 }; //1 - add, 2- update, 3- delete transactionvault.merchant_key = new MERCHANT_KEY(); 73

74 transactionvault.merchant_key.securekey = "cwpqupz0li3p"; transactionvault.merchant_key.securenetid = ; var gatewayresponse = gatewayclient.processaccount(transactionvault); Console.WriteLine(" Method Response \n"); Console.WriteLine(" {0} {1} \n", gatewayresponse.vaultaccountresponse.method, gatewayresponse.vaultaccountresponse.response_reason_text); } catch (Exception ex) { } } private void ProcessVaultCustomer(object sender, EventArgs e) { try { var transactionvault = new TRANSACTION_VAULT(); transactionvault.customer_vault = GetCustomerVault(); transactionvault.operationparameters = new OPERATIONPARAMETERS { ACTIONCODE = 1 }; //1 - add, 2- update, 3- delete transactionvault.merchant_key = new MERCHANT_KEY(); transactionvault.merchant_key.securekey = "cwpqupz0li3p"; transactionvault.merchant_key.securenetid = ; gsclient.processcustomer(transactionvault); } catch (Exception ex) { } } private void ProcessVaultAccountAndCustomer(object sender, EventArgs e) { try { var transactionvault = new TRANSACTION_VAULT(); transactionvault.customer_vault = GetCustomerVault(); transactionvault.account_vault = GetAccountVault(); transactionvault.operationparameters = new OPERATIONPARAMETERS { ACTIONCODE = 1 }; //1 - add, 2- update, 3- delete transactionvault.merchant_key = new MERCHANT_KEY(); transactionvault.merchant_key.securekey = "cwpqupz0li3p"; transactionvault.merchant_key.securenetid = ; gsclient.processcustomerandaccount(transactionvault); } catch (Exception ex) { Console.WriteLine(ex.Message); } } 74

75 private GatewayService.CUSTOMER_VAULT GetCustomerVault() { var customervault = new CUSTOMER_VAULT(); customervault.csdi = 0; customervault.customerid = "CID1"; // Please increase this number to the next one (e.g. CID2) or provide a unique number each time you run to get an approval customervault.notes = "Notes"; customervault.customer_bill = GetVaultCustomerCustomerBill(); } return customervault; private GatewayService.CUSTOMER_BILL GetVaultCustomerCustomerBill() { GatewayService.CUSTOMER_BILL customerbill = new GatewayService.CUSTOMER_BILL(); customerbill.address = "tbcvaddress"; customerbill.city = "CVCity"; customerbill.company = "CVCompany"; customerbill.country = "CVCountry"; customerbill. = " @securenet.com"; customerbill. receipt = "TRUE"; customerbill.firstname = "FirstName"; customerbill.lastname = "LastName"; customerbill.phone = " "; customerbill.state = "MD"; customerbill.zip = "20850"; } return customerbill; private TRANSACTION_VAULT GetTransactionVault() { TRANSACTION_VAULT transactionvault = new TRANSACTION_VAULT(); transactionvault.account_vault = GetAccountVault(); transactionvault.customer_vault = GetCustomerVault(); transactionvault.transaction = GetTransactionObject(); return transactionvault; } private GatewayService.ACCOUNT_VAULT GetAccountVault() { ACCOUNT_VAULT accountvault = new ACCOUNT_VAULT(); GatewayService.CARD card = new CARD(); card.cardnumber = " "; card.expdate = "1212"; accountvault.acdi = 0; // other values 1,2 0r 3 accountvault.customerid = "CID1"; 75

76 // Please increase this number to the next one (e.g. CID2) or provide a unique number each time you run to get an approval accountvault.card = card; accountvault.paymentid = "PID1"; // Please increase this number to the next one (e.g. PID2) or provide a unique number each time you run to get an approval accountvault.primary = "TRUE"; accountvault.method = "CC"; // Possible values DB, ECHECK, CHECK21 return accountvault; } private GatewayService.TRANSACTION GetTransactionObject() { MERCHANT_KEY merchantkey = new MERCHANT_KEY(); merchantkey.securekey = "cwpqupz0li3p"; merchantkey.securenetid = ; GatewayService.CARD card = new GatewayService.CARD(); GatewayService.TRANSACTION transaction = new GatewayService.TRANSACTION(); card.cardnumber = " "; card.expdate = "1212"; transaction.card = card; transaction.code = "0100"; transaction.amount = 1.00m; transaction.test = "FALSE"; transaction.orderid = DateTime.Now.ToString().Replace("/", "").Replace(":", "").Replace(" ", ""); transaction.method = "CC"; transaction.transaction_service = 1; transaction.merchant_key = merchantkey; return transaction; } private GatewayService.CUSTOMER_BILL GetVaultAccountCustomerBill() { GatewayService.CUSTOMER_BILL CustomerBill = new GatewayService.CUSTOMER_BILL(); CustomerBill.ADDRESS = " Test ASddress"; CustomerBill.CITY = " Test City"; CustomerBill.COMPANY = "US"; CustomerBill. = "[email protected]"; CustomerBill. RECEIPT = "FALSE"; CustomerBill.FIRSTNAME = "First Name"; CustomerBill.LASTNAME = "Phone"; CustomerBill.STATE = "MD"; CustomerBill.ZIP = "20878"; } return CustomerBill; } } 76

77 Some best practices for SecureNet API implementation Gateway URL, SecureNet ID, SecureKey and test mode should be designed to be configurable by the developer who is integrating to the API Test Data To perform tests in our test environment make sure to set Virtual Terminal to LIVE MODE, the TEST parameter as FALSE, and send the transactions to To request a test account, please contact your sales agent, or send a request to [email protected]. Credit Cards: Test Credit Card Numbers for Approved Transactions American Express Discover MasterCard Visa Fraud Prevention Settings AVS Match CVV/CID Approval 568 CVV/CID Visa 999 CVV/CID MasterCard 998 Test Credit Card Numbers for Declined Transactions MasterCard MasterCard Visa Visa American Express American Express Checks: For checking account number - use any 6-digit number. Valid Routing Numbers:

78 Fault exceptions When you are submitting an incorrect request, which is not validated by our XSD, we will send an HTTP 400 Bad Request response. Please look at the RESPONSE_REASON_TEXT for description of the error and modify your request accordingly. When submitting an HTTP POST (REST) request: 1. Please make sure that all the request elements are present in the order that is defined in XSD. 2. Fields, which are of value type, i.e. Integer, Decimal, etc., must be present in the request even if not needed, if their parent object is present. For example: If TRANSACTION object is sent as request xml then OVERRIDE_FROM, TOTAL_INSTALLMENTCOUNT, INSTALLMENT_SEQUENCENUM, TRANSACTION_SERVICE, RETAIL_LANENUM, DCI, AMOUNT, CASHBACK_AMOUNT elements should be present in proper order (as defined in XSD) even if the values are API Error Codes Gateway API can return multiple errors for different operations. Here are some examples and suggested solutions: Error Code Message 0102 ORDER ID PROVIDED MUST BE UNIQUE FOR YOUR ACCOUNT 0104 SECURE KEY IS INVALID FOR SECURENET ID PROVIDED Correcting this error A client generated unique ID is required for each transaction submitted to the Gateway. Please note that if submitting a refund on a previously settled transaction, ORDERID for a refund still needs to be unique (do not use the one from the settled transaction), while TRANSACTIONID remains the same. Please make sure the SecureNet ID and Secure Key are correct. If they are - this error message is most likely caused by using production SecureNet ID/Key with a demo URL or vice versa. Make sure you are referencing the correct URL: - Certification Environment (test/demo environment) - Production Environment (live environment) 01C0 MERCHANT ACCOUNT IS NOT SET FOR CARD PRESENT Please provide credit card number for the transaction. Full card number is required for: AUTH_ONLY, PARTIAL_AUTH_ONLY, AUTH_CAPTURE, PARTIAL_AUTH_CAPTURE, CAPTURE_ONLY, CREDIT_AUTHONLY, FORCE_CREDIT, FORCE_CREDIT_AUTHONLY, VERIFICATION, AUTH_INCREMENT, ISSUE, ACTIVATE, REDEEM, REDEEM_PARTIAL, DEACTIVATE, 78

79 REACTIVATE, and INQUIRY_BALANCE transactions. Last 4 digits of the card number are required for PRIOR_AUTH_CAPTURE, VOID, PARTIAL_VOID, CREDIT, CREDIT_PRIORAUTHCAPTURE, and FORCE_CREDIT_PRIORAUTHCAPTURE transactions. 01C9 MERCHANT DOES NOT ACCEPT Merchant does not accept card type submitted with the transaction. Here is a complete list of API error codes and descriptions: Response Code Response Sub Code Reason Text ERROR GATEWAY CONNECTION PROBLEM.RETRY NetConnect Error 0101 SECURENET ID IS REQUIRED 0102 SECURENET KEY IS REQUIRED 01O3 ORDERID PROVIDED MUST BE EQUAL OR LESS THAN 25 CHARACTERS 0103 SECURENET ID IS INVALID 0104 SECURE KEY IS INVALID FOR SECURENET ID PROVIDED 0105 TEST VALUE SHOULD BE TRUE OR FALSE 0106 ORDERID PER TRANSACTION IS REQUIRED 0107 TRANSACTION AMOUNT IS REQUIRED 0108 METHOD VALUE SHOULD BE SPECIFIED 0109 TRANSACTION TYPE IS INVALID 0110 RECORDTYPE SHOULD BE SPECIFIED SAVE OR RECURRING OR PROCESS 0111 MERCHANT ACCOUNT IS INACTIVE 0112 DEBIT KEY SERIAL NUMBER(KSN) IS REQUIRED 0113 <VARIABLE> IS NOT ALLOWED ON CHECK21 TRANSACTION 0114 DEBIT PIN IS REQUIRED 0115 DEBIT PIN IS INVALID 0116 <VARIABLE> IS NOT ALLOWED ON DEBIT TRANSACTION 0117 <VARIABLE> IS NOT VALID STORED VALUE TRANSACTION 0118 CUSTOMER ID IS REQUIRED 0119 CUSTOMER ID MUST EXIST TO ADD/UPDATE ACCOUNT 0120 PAYMENT ID CANNOT BE NULL 0121 PAYMENT ID SHOULD BE UNIQUE FOR EXISTING CUSTOMER ID 0122 PAYMENT ID DOES NOT EXIST FOR THE CUSTOMER ID 0123 CUSTOMER ID MUST BE UNIQUE FOR EACH CUSTOMER RECORD 0124 CUSTOMER ID DOES NOT EXIST 0125 SECURENET ID SHOULD BE NUMBER ONLY 79

80 0126 TRANSACTION ID SHOULD BE NUMBER ONLY 0127 TRANSACTION TYPE SHOULD BE AUTH_CAPTURE, AUTH_ONLY, CAPTURE_ONLY, CREDIT, FORCE_CREDIT, VOID, PRIOR_AUTH_CAPTURE 0128 CUSTOMER ID OR PAYMENT ID DOES NOT EXIST OR INVALID 0129 NO MATCH FOUND AS PER CUSTOMER ID AND PAYMENT ID 0130 MERCHANT ACCOUNT IS NOT VALID 0131 MERCHANT ACCOUNT IS NOT ENABLED FOR MOTO TRANSACTION 0132 MERCHANT ACCOUNT IS NOT ENABLED FOR ECOM TRANSACTION 0133 ECO(FORCE CREDIT) NOT ENABLED FOR THE MERCHANT 0134 NO APPROVED TRANSACTION EXISTS TO VOID FOR THE ORDER ID PROVIDED 0135 CAN NOT RERUN A TRANSACTION FOR A CARD-PRESENT TYPE TRANSACTION 0136 REFERENCE TRANSACTION MUST BE SUBMITTED WITHIN 90 DAYS 0137 INDUSTRY TYPE IS NOT SUPPORTED FOR ASSIGNED PROCESSOR 0138 SETTLED TRANSACTIONS CANNOT BE MODIFIED 0139 APPROVED TRANSACTION IS REQUIRED FOR CHANGING IT TO AUTH_ONLY 0140 <VARIABLE> NUMBER IS INVALID. ACCURACY OF THE CARD CANNOT BE VALIDATED 0141 <VARIABLE> NUMBERS ARE INVALID 0142 CARD TYPE COULDN'T BE IDENTIFIED 0143 BILL PAYMENT TRANSACTION IS NOT ALLOWED FOR RECURRING OR INSTALLMENT 0144 MERCHANT IS NOT ENABLED TO SEND LEVEL 3 TRANSACTION 0145 ADDRESS INFORMATION WITH ZIPCODE SHOULD BE PROVIDED FOR AVS_VERIFICATION CHECK 0146 NO MOTO/ECOM TRANSACTION FOR RETAIL MERCHANT IN NASHVILLE 0147 NO MOTO TRANSACTIONS FOR ECOM MERCHANT OTHER THAN RECURRING TRANSACTION 0148 CardType is invalid MERCHANT IS NOT ENABLED FOR BILL PAYMENT 0151 MERCHANT IS NOT ENABLED FOR DEBT PAYMENT 0152 INVALID MARKET SPECIFIC DATA 0153 INSTALLMENT_SEQUENCENUM AND TOTAL_INSTALLMENTCOUNT RANGE INSTALLMENT SEQUENCE NUMBER CANNOT BE GREATER THAN TOTAL INSTALLMENT COUNT 0156 <VARIABLE> TRANSACTION IS NOT ALLOWED 0157 PAYMENTID HAS TO BE ALPHANUMERIC 0158 CUSTOMERID HAS TO BE ALPHANUMERIC 0159 CREDIT CARD LAST 4 DIGITS DOES NOT MATCH DURING UPDATE 0170 MerchantID Not Found 0181 Merchant not enabled for BuyPass 01A1 AMOUNT IS INVALID 01A2 AMOUNT CANNOT BE GREATER THAN $999, A3 VALID AMOUNT IS REQUIRED 01A4 CASH BACK AMOUNT IS INVALID 01A5 VALID CASH BACK AMOUNT IS REQUIRED 01A6 GRATUITY AMOUNT IS INVALID 80

81 01A7 VALID GRATUITY AMOUNT IS REQUIRED 01A8 ROOM RATE AMOUNT IS INVALID 01A9 VALID ROOM RATE AMOUNT IS REQUIRED 01A11 VALID HOTEL EXTRA CHARGE AMOUNT IS REQUIRED 01ACH0 MERCHANT IS NOT ENABLED FOR ACH TRANSACTIONS 01ACH1 9 DIGIT ABA ROUTING NUMBER OF THE BANK IS REQUIRED 01ACH2 ACCOUNT NUMBER IS REQUIRED 01ACH3 BANK NAME IS REQUIRED 01ACH4 INVALID BANK ACCOUNT NUMBER 01ACH7 BANK ACCOUNT NUMBER HAS TO BE NUMERIC 01ACH8 THIS BANK ACCOUNT IS BLOCKED DUE TO PREVIOUS RETURN 01ACH9 NOC RECEIVED, INVALID BANK INFORMATION 01ACH10 MICRDATA NOT RECEIVED FOR CHECK21 TRANSACTIONS 1ACH ACH SEC CODE IS NOT SUPPORTED 1ACH INVALID ROUTING NUMBER 1ACH ACH AMOUNT LIMIT IS EXCEED FOR SEC CODE 1ACH INVALID CHECK NO 01B7 BANK ACCOUNT DOES NOT MATCH FOR 01B8 ACCOUNT TYPE DOES NOT MATCH FOR 01C0 MERCHANT ACCOUNT IS NOT SET FOR CARD PRESENT TRANSACTIONS 01C1 CREDIT CARD NUMBER IS REQUIRED 01C2 CREDIT CARD EXPIRY MONTH AND YEAR IS REQUIRED 01C CARD NUMBER IS NOT SPECIFIED 01C NOT A VALID CARD NUMBER 01C THE CARD CODE(CVV2/CVC2/CID) IS INVALID 01C EXPIRY DATE HAS TO BE IN MMYY FORMAT 01C EXPIRY DATE IS NOT A VALID DATE 01C CREDIT CARD HAS EXPIRED 01C DEBIT CARD IS NOT VALID 01C THE CARD CODE IS INVALID 01C STORED VALUE CARD IS NOT VALID 01C4 CARD EXPIRY MONTH AND YEAR MUST BE IN MMYY FORMAT 01C6 INVALID TRACK DATA 01C7 TRACK DATA SHOULD NOT BE PRESENT FOR CARD-NOT-PRESENT TRANSACTION 01C8 CARD NUMBER HAS TO BE NUMERIC 01C9 MERCHANT DOES NOT ACCEPT 01D1 DEBIT CARD NEEDS TO BE SWIPED 01E1 RECEIPT VALUE SHOULD BE TRUE OR FALSE 01F1 SERVER NO CANNOT BE GREATER THAN 8 CHARACTERS 01H5 NAME ON THE CUSTOMERS BANK ACCOUNT IS REQUIRED 01H6 BANK ACCOUNT TYPE CHECKING OR SAVINGS IS REQUIRED 01H7 BANK ACCOUNT TYPE SHOULD BE SPECIFIED AS CHECKING OR SAVINGS 01H8 NOC RECIEVED, INVALID BANK INFORMATION 81

82 01O1 PREVIOUS TRANSACTION ID IS REQUIRED 01O2 ORDERID PROVIDED MUST BE UNIQUE FOR YOUR ACCOUNT 01R1 TRANSACTION ID DOES NOT EXIST FOR 01R2 CREDIT AMOUNT CANNOT BE GREATER THAN THE AUTHORIZED AMOUNT 01R3 CREDIT CANNOT BE COMPLETED ON A UNSETTLED TRANSACTION 01R4 CREDIT CANNOT BE COMPLETED ON A <VARIABLE >TRANSACTION 01R5 INVALID TRANSACTION ID FOR 01R6 CREDIT OR VOID HAS TO BE DONE IN THE SAME TEST MODE 01R7 CREDIT CARD DOES NOT MATCH FOR 01R8 CREDIT CANNOT BE PERFORMED ON TRANSACTIONS MORE THAN 180 DAYS OLD 01R9 PRIOR_AUTH_CAPTURE CANNOT BE PERFORMED ON 30 DAYS OR OLD TRANSACTION 01R10 TRANSACTION CANNOT BE REVERSED AS ITS ALREADY SETTLED 01R11 CREDIT TRANSACTION CANNOT BE REVERSED AS ITS ALREADY 01V1 SETTLED TRANSACTIONS CANNOT BE VOIDED 01V2 TRANSACTION HAS ALREADY BEEN VOIDED 01V3 CREDIT SETTLED TRANSACTIONS CANNOT BE VOIDED 01V4 AMOUNT CANNOT BE GREATER THAN THE AUTHORIZED AMOUNT 0O01 PARAMETERS MISSING IN PETROLEUM ITEMIZED PRODUCTS 0O02 NO OF PETROLEUM ITEMIZED PRODUCTS CANNOT EXCEED 9 0O03 PETROLEUM PRODUCT CODE IS INVALID 0O04 UNIT PRICE IS NOT IN VALID FORMAT 0O05 INVALID UNIT PRICE 0O06 PRODUCT QUANTITY IS NOT IN VALID FORMAT 0O07 INVALID PRODUCT QUANTITY 0O08 INVALID PRODUCT CODE FOR FUEL ONLY CARD 0O09 INVALID PRODUCT QUANTITY 0O10 PRODUCT AMOUNT IS INVALID FOR UNIT PRICE AND QUANTITY PROVIDED 0O11 LEVEL 2 TAX AMOUNT IS REQUIRED 0O12 TOTAL PRODUCT AMOUNT IS NOT EQUAL TO TRANSACTION AMOUNT 0O14 PRODUCT QUANTITY IS NOT IN VALID FORMAT 0O15 ITEMIZED PRODUCTS ARE REQUIRED 1A10 HOTEL EXTRA CHARGE AMOUNT IS INVALID 1A11 VALID HOTEL EXTRA CHARGE AMOUNT IS REQUIRED 1A12 AUTO EXTRA CHARGE AMOUNT IS INVALID 1A13 VALID AUTO EXTRA CHARGE AMOUNT IS REQUIRED 1A14 AMOUNT CANNOT BE GREATER THAN $99,9999 1A15 CASH BACK AMOUNT CANNOT BE GREATER THAN $100 1A16 CASH BACK AMOUNT CANNOT BE GREATER OR EQUAL TO TRANSACTION AMOUNT 1ACH10 VALID 9 DIGIT ABA ROUTING NUMBER OF THE BANK IS REQUIRED 1DB0 MERCHANT IS NOT ENABLED FOR DEBIT TRANSACTIONS 1SV0 MERCHANT IS NOT ENABLED FOR STORED VALUE TRANSACTIONS 1SV1 STORED VALUE NUMBER IS REQUIRED 1SV2 STORED VALUE MONTH AND YEAR IS REQUIRED IN MMYY FORMAT 82

83 1SV5 PARTIAL REVERSAL IS NOT ALLOWED FOR RETAIL INDUSRTY ACD3 DUPLICATE ACCOUNT ACD4 EXISTING ACCT NO/TOKEN COMBINATION AO01 PREFERRED CUSTOMER VALUE IS INVALID AO04 AUTORENTAL SALE CODE IS INVALID AO05 AUTO EXTRA CHARGE INDICATOR IS INVALID AO06 RENTAL DATE IS REQUIRED AO07 RETURN DATE IS REQUIRED AO08 RENTAL DATETIME IS INVALID AO09 RETURN DATETIME IS INVALID AO RENTAL TIME IS REQUIRED AO INVALID RENTAL AND RETURN DATES AO11 VALID AUTO EXTRA CHARGE AMOUNT IS REQUIRED AO12 RENTAL TIME SHOULD BE VALID TIME AO14 RETURN TIME SHOULD BE VALID TIME AO15 RENTAL STATE IS INVALID AO16 RETURN STATE IS INVALID AO17 RENTAL STATE MUST BE VALID 2 CHARACTER ABBREVIATION AO18 RETURN STATE MUST BE VALID 2 CHARACTER ABBREVIATION AB01 CUSTOMER ID IS REQUIRED AB02 PAYMENT ID IS REQUIRED AB03 AB TYPE IS REQUIRED AB04 MAX RETRIES MUST BE BETWEEN 0 AND 5 AB05 START DATE IS REQUIRED AB06 INVALID START DATE AB08 INVALID CUSTOMERID AB09 NO RECURRING INFORMATION PROVIDED AB11 NO INSTALLMENT INFORMATION PROVIDED AB10 NO VARIABLE INFORMATION PROVIDED AB11 NO INSTALLMENT INFORMATION PROVIDED AB12 INVALID AMOUNT AB13 AB CYCLE IS REQUIRED AB14 INVALID AB CYCLE (W,M,B,Q,Y) AB15 INVALID FREQUENCY AB16 INVALID AB DAY (0-28) AB17 INVALID AB MONTH (0-12) AB18 INVALID AB WEEKDAY (0-7) AB19 INVALID NO END DATE FLAG (0, 1) AB20 VALID END DATE IS REQUIRED AB21 END DATE MUST BE AFTER START DATE AB22 AB AUTO CALC OPTION IS REQUIRED AB23 INVALID AB AUTO CALC OPTION (A, M) AB24 INVALID AB REMAINDER OPTION (0, 1) 83

84 AB25 INVALID AB INSTALLMENT COUNT (1-99) AB26 INSTALLMENT AMOUNT MINIMUM IS 1.00 AB27 INVALID BALLOON AMOUNT AB28 INVALID AB BALLOON OPTION (0, 1) AB29 AB PLAN NOT FOUND AB30 END DATE CANNOT BE BEFORE CURRENT DATE. AB31 END DATE IS REQUIRED WHEN NO END FLAG = 0 AB32 INVALID END DATE AB33 START DATE CANNOT BE CHANGED ONCE PLAN IT HAS STARTED AB34 START DATE CANNOT BE BEFORE TOMORROW AB35 PLAN ID IS REQUIRED AB36 AB TYPE CANNOT BE CHANGED AB37 AB SCHEDULE IS REQUIRED AB38 INVALID SCHEDULE AB39 SCHEDULED PAYMENT COUNLD NOT BE FOUND AB40 INVALID PAYMENT AMOUNT AB41 INSTALLMENT DATE IS REQUIRED AB42 INVALID INSTALLMENT DATE AB43 INVALID INSTALLMENT NUMBER AB44 INVALID NUMBER OF RETRIES AB45 PAID STATUS CANNOT BE UPDATED AB46 INSTALLMENT NUMBER CANNOT BE UPDATED AB47 NUMBER OF RETRIES CANNOT BE UPDATED AB48 PAYMENT DATE CANNOT BE UPDATED AB49 PLAN ID CANNOT BE UPDATED AB50 PROCESSED CANNOT BE UPDATED AB51 VARIABLE SCHEDULE IS REQUIRED AB52 TRANSACTIONID CANNOT BE UPDATED AB53 PAID TRANSACTIONS CANNOT BE UPDATED AB54 PROCESSED TRANSACTIONS CANNOT BE UPDATED AB55 INSTALLMENT DATE CANNOT BE BEFORE TOMORROW AB54 INSTALLMENT DATE CANNOT BE BEFORE PREVIOUS INSTALLMENT DATE AB57 INSTALLMENT DATE CANNOT BE AFTER NEXT INSTALLMENT DATE AB58 INVALID AB TYPE AB59 ERROR SAVING AB PLAN AB60 ERROR SAVING AB SCHEDULE AB61 CUSTOMER ID NOT FOUND IN VAULT AB62 PAYMENT ID NOT FOUND IN VAULT AB63 SCHEDULED PAYMENT CANNOT BE NULL AB64 ONLY NEXT SCHEDULED PAYMENT CAN BE ADJUSTED FOR RECURRING TYPES AB65 SCHEDULED PAYMENT CANNOT BE UPDATED DUE TO PROCESS STATUS AB66 ONLY AMOUNT CAN BE UPDATED FOR RECURRING SCHEDULE CHANGE AB67 INVALID SCHEDULE ID (ONLY NEXT PAYMENT CAN BE ADJUSTED FOR RECURRING TYPE) 84

85 AB68 ONLY ONE SCHEDULED PAYMENT CAN BE UPDATED AT A TIME AB69 SCHEDULE ID IS REQUIRED AB70 CANNOT EXCEED 99 INSTALLMENTS AB71 INSTALLMENT NUMBER IS REQUIRED AB72 BALLOON SCHEDULED PAYMENT AMOUNT CANNOT BE CHANGED AB73 LAST SCHEDULED PAYMENT AMOUNT CANNOT BE CHANGED AB74 NO PLANS FOUND AB75 AB IS NOT ENABLED FOR THIS SECURENET ID AB00 CALCULATION ERROR PR01 PRODUCT COLLECTION CANNOT CONTAIN NULL PRODUCT PR02 LEVEL3PRODUCT COLLECTION CANNOT CONTAIN NULL LEVEL3PRODUCT CA01 AUTHORIZATION CODE IS REQUIRED CA02 AUTHORIZATION CODE LENGTH HAS TO BE 6 HO01 PREFERRED CUSTOMER VALUE IS INVALID HO02 HOTEL CHARGE TYPE IS REQUIRED HO03 HOTEL CHARGE TYPE IS INVALID HO04 HOTEL SALE CODE IS INVALID HO05 HOTEL EXTRACHARGEINDICATOR IS INVALID HO06 HOTEL CHECK IN DATE IS REQUIRED HO07 HOTEL CHECK OUT DATE IS REQUIRED HO08 HOTEL CHECK IN DATE SHOULD BE VALID DATE HO09 HOTEL CHECK IN DATE SHOULD BE VALID DATE HO10 INVALID CHECKIN AND CHECK OUT DATES L201 TAX FLAG VALUE IS INVALID L TAX AMOUNT IS REQUIRED IF TAX IS INCLUDED L PURCHASE ORDER NUMBER IS REQUIRED L2A1 TAX AMOUNT IS INVALID L2A2 TAX AMOUNT HAS TO BE BETWEEN 0.01% AND 22% OF THE AUTHORIZED AMOUNT L2A3 VALID TAX AMOUNT IS REQUIRED L2A4 TAX AMOUNT CANNOT BE GREATER THAN $99,9999 L2D1 DUTY AMOUNT IS INVALID L2D2 DUTY AMOUNT CANNOT BE GREATER THAN $99,9999 L2D3 VALID DUTY AMOUNT IS REQUIRED L2D4 DUTY AMOUNT CANNOT BE GREATER THAN $99,9999 L301 MERCHANT VAT REGISTRATION NUMBER IS REQUIRED L302 PURCHASER VAT REGISTRATION NUMBER IS REQUIRED L303 VAT INVOICE REF NUMBER IS REQUIRED L304 VAT TAX AMOUNT IS REQUIRED L305 VAT TAX AMOUNT IS INVALID L306 VAT TAX RATE IS REQUIRED L307 ALTERNATE TAX AMOUNT INDICATOR IS INVALID L308 ALTERNATE TAX AMOUNT IS INVALID L309 NATIONAL TAX AMOUNT INDICATOR IS INVALID 85

86 L310 NATIONAL TAX AMOUNT IS INVALID L311 ORDER DISCOUNT AMOUNT IS INVALID L312 ORDER DUTY AMOUNT IS INVALID L313 ORDER FREIGHT AMOUNT IS INVALID L314 PURCHASER ORDER DATE IS INVALID L315 PARAMETERS MISSING IN LEVEL 3 ITEMIZED PRODUCTS L316 PRODUCT ITEM CODE IS REQUIRED L317 PRODUCT ITEM NAME IS REQUIRED L318 PRODUCT UNIT PRICE IS REQUIRED L319 PRODUCT UNIT PRICE IS INVALID L320 PRODUCT QUANTITY IS REQUIRED L321 PRODUCT QUANTITY IS INVALID L322 PRODUCT DISCOUNT INDICATOR IS INVALID L323 PRODUCT DISCOUNT RATE IS INVALID L324 PRODUCT DISCOUNT AMOUNT IS INVALID L325 PRODUCT TAX RATE IS INVALID L326 PRODUCT TAX AMOUNT IS INVALID L327 PRODUCT TOTAL AMOUNT IS INVALID L329 PRODUCT GROSS NET INDICATOR IS INVALID L330 TRANSACTION AMOUNT AND LEVEL 3 PRODUCTS TOTAL AMOUNT DOES NOT MATCH L331 LEVEL 3 TAX AMOUNT DOES NOT MATCH WITH LEVEL 2 TAX AMOUNT P VEHICLE NUMBER FOR SHELL SHOULD BE 6 CHARACTERS P VEHICLE NUMBER SHOULD NOT BE MORE THAN 6 CHARACTERS P VEHICLE NUMBER SHOULD NOT BE MORE THAN 5 CHARACTERS P005 ODOMETER SHOULD NOT BE MORE THAN 6 CHARACTERS P006 DRIVER/JOBNUMBER SHOULD NOT BE MORE THAN 6 CHARACTERS P100 TRANSACTION IS NOT ALLOWED PA10 TRANSACTION AMOUNT CANNOT BE REVERSED MORE THAN THE TOTAL AUTHORIZED AMOUNT PA11 TRANSACTION HAS BEEN ALREADY VOIDED PA12 CAPTURE AMOUNT CANNOT BE GREATER THAN PREVIOUSLY AUTHORIZED AMOUNT PAC TRANSACTION IS ALREADY CAPTURED PAC <VARIABLE> IS INVALID FOR THIS TERMINAL PAC5 AUTH_REVERSAL IS VALID FOR VISA ONLY PAC6 AUTH_INCREMENT IS VALID FOR VISA ONLY PAC7 TRANSACTION CANNOT BE CAPTURED(DOES NOT MEET THE CRITERIA) PAC8 TRANSACTION CANNOT BE INCREMENTED(DOES NOT MEET THE CRITERIA) PAC9 TRANSACTION HAS BEEN ALREADY VOIDED RB01 RECURRING AMOUNT IS REQUIRED RB02 RECURRING AMOUNT IS INVALID RB03 VALID RECURRING AMOUNT IS REQUIRED RB04 RECURRING AMOUNT CANNOT BE GREATER THAN $99,9999 RB05 RECURRING BILLING START DATE IS REQUIRED 86

87 RB06 RECURRING BILLING START DATE IS INVALID RB07 RECURRING BILLING START DATE CANNOT BE LESS THAN OR EQUAL TO CURRENT DATE RB08 SPECIFY RECURRING BILLING HAS END DATE, YES OR NO RB09 RECURRING BILLING HAS END DATE SHOULD BE YES OR NO RB10 RECURRING BILLING END DATE IS INVALID RB11 RECURRING BILLING END DATE CANNOT BE LESS THAN OR EQUAL TO START DATE RB12 SPECIFY RECURRING BILLING PERIOD,Y YEARLY,M MONTHLY,W WEEKLY RB14 RECURRING BILLING PERIOD HAS TO BE Y YEARLY,M MONTHLY,W WEEKLY RB15 SPECIFY RECURRING BILLING DAY BASED ON THE BILLING PERIOD RB16 RECURRING BILLING DAY HAS TO BE A NUMBER RB17 RECURRING BILLING DAY CAN BE BETWEEN 1-SUNDAY TO 7-SATURDAY WEEKLY BILLING RB18 SPECIFY RECURRING BILLING MONTH BASED ON THE BILLING PERIOD RB19 RECURRING BILLING MONTH HAS TO BE A NUMBER RB20 SPECIFY RECURRING BILLING ACCOUNT AS ACTIVE, YES OR NO RB21 CUSTOMER ID SHOULD BE SPECIFIED FOR SAVE OR RECURRING RECORD RB22 CUSTOMER ID SHOULD BE UNIQUE FOR SAVE OR RECURRING RECORD RB23 PASSWORD SHOULD BE PROVIDED FOR THE USERNAME FOR SAVE OR RECURRING RECORD RB24 USERNAME SHOULD BE UNIQUE FOR SAVE OR RECURRING RECORD RB25 TRANSACTION TYPE CANNOT BE CREDIT,FORCE_CREDIT, VOID DURING SAVING OR RECURRING RB26 SPECIFY RECURRING BILLING PERIODICITY FOR THE SPECIFIED RBPERIOD RB27 RECURRING BILLING PERIODICITY HAS TO BE A NUMBER RB28 RECURRING BILLING PERIODICITY CAN BE BETWEEN 1 TO 3 FOR (Y) RB29 RECURRING BILLING PERIODICITY CAN BE BETWEEN 1 TO 51 FOR (W) RB30 RECURRING BILLING PERIODICITY CAN BE BETWEEN 1 TO 11 FOR (M) RB31 RECURRING NEXT BILLING DATE IS REQUIRED RB32 RECURRING NEXT BILLING DATE IS INVALID RB33 RECURRING NEXT BILLING DATE CANNOT BE LESS THAN OR EQUAL TO CURRENT DATE RB34 RECURRING BILLING END DATE IS REQUIRED RB35 RECURRING BILLING DAY CAN BE BETWEEN 1 TO 28 OR 0 FOR MONTH END RB36 RECURRING BILLING MONTH CAN BE BETWEEN 1 AND 12 FOR YEARLY BILLING PD01 PIN-LESS DEBIT CARD NUMBER IS REQUIRED PD02 PIN-LESS DEBIT INVALID TRACK DATA PD03 PIN-LESS DEBIT MERCHANT ACCOUNT IS NOT SET FOR CARD PRESENT PD04 PINLESS DEBIT NUMBER IS REQUIRED PD05 PIN-LESS DEBIT CARD EXPIRY MONTH AND YEAR ARE REQUIRED PD06 PIN-LESS DEBIT CARD EXPIRY MONTH AND YEAR ARE REQUIRED IN MMYY FORMAT PD07 PIN-LESS DEBIT TRANSACTION TYPE IS INVALID PD08 PIN-LESS DEBIT CARD NUMBER IS REQUIRED PD09 IS NOT ALLOWED ON PIN-LESS DEBIT TRANSACTION PD PIN-LESS DEBIT CARD NUMBER IS NOT SPECIFIED 87

88 PD NOT A VALID PIN-LESS DEBIT CARD NUMBER PD THE PIN-LESS DEBIT CARD CODE(CVV2/CVC2/CID) IS INVALID PD PIN-LESS DEBIT EXPIRY DATE HAS TO BE IN MMYY FORMAT PD PIN-LESS DEBIT EXPIRY DATE IS NOT A VALID DATE PD PIN-LESS DEBIT CREDIT CARD HAS EXPIRED PD PIN-LESS DEBIT DEBIT CARD IS NOT VALID PD THE PIN-LESS DEBIT CARD CODE IS INVALID PD STORED VALUE PIN-LESS DEBIT CARD IS NOT VALID 01C (CARDTYPE NAME) NUMBERS ARE INVALID. ACCURACY OF THE CARD CANNOT BE VALIDATED. PD11 MERCHANT DOES NOT ACCEPT PIN LESS DEBIT PD12 SECURENET FRONTEND IS NOT ENABLED AT MERCHANT GATEWAY INFORMATION PD13 ONLINE REVERSAL IS NOT ENABLED PD14 ONLINE CREDIT IS NOT ENABLED PD15 INVALID MARKET SPECIFIC DATA FOR NON PINLESS DEBIT PD16 CARD IS NOT ELIGIBLE FOR PIN-LESS DEBIT TRANSACTION SH200 CANNOT UPDATE ACCOUNTINFO TO NON-PRIMARY, CUSTOMER ID REQUIRES A PRIMARY ACCOUNT. ACD0 ACDI (ACCOUNT DUPLICATE INDICATOR) VALUE SHOULD BE SPECIFIED AS 0,1,2 OR 3 ACD1 NO ACCOUNT ADDED, DUPLICATE ACCOUNT NUMBER ACD2 DUPLICATE ACCOUNT DCT03 DUPLICATE INDICATOR VALUE IS INVALID. CA03 AUTHORIZATION CODE MISMATCH CA04 MISSING AUTHORIZATION CODE CDI1 INVALID VALUE FOR CUSTOMER DUPLICATE INDICATOR (CSDI) DCT02 APPROVED 01CK210 MERCHANT IS NOT ENABLED FOR CHECK21 TRANSACTIONS 01CK2119 MICRDATA NOT RECEIVED FOR CHECK21 TRANSACTIONS 01CK211 VALID 9 DIGIT ROUTING NUMBER OF THE BANK IS REQUIRED 01CK212 ACCOUNT NUMBER IS REQUIRED 01CK219 ACCOUNT NUMBER HAS TO BE NUMBERS 01CK214 INVALID BANK ACCOUNT NUMBER 01CK218 9 DIGIT ABA ROUTING NUMBER OF THE BANK HAS TO BE NUMBERS 01CK2110 VALID 9 DIGIT ABA ROUTING NUMBER OF THE BANK IS REQUIRED 01CK2120 CHECK NUMBER IS REQUIRED 01CK2121 CHECK NUMBER HAS TO BE NUMBERS 01CK217 BANK ACCOUNT TYPE SHOULD BE SPECIFIED AS CHECKING OR SAVINGS 01CHK218 NOC received, INVALID BANK INFORMATION 1ACH12 INVALID CHECK NO CHECK01 MERCHANT IS NOT ENABLED FOR ACH TRANSACTIONS CHECK02 9-DIGIT BANK ABA ROUTING NUMBER IS REQUIRED CHECK03 9 DIGIT ABA ROUTING NUMBER OF THE BANK HAS TO BE NUMERIC CHECK04 VALID 9-DIGIT BANK ABA ROUTING NUMBER IS REQUIRED 88

89 CHECK05 CHECK06 CHECK07 CHECK08 CHECK09 CHECK10 CHECK11 CHECK12 1ACH13 1ACH14 ACCOUNT NUMBER IS REQUIRED BANK ACCOUNT NUMBER HAS TO BE NUMERIC INVALID BANK ACCOUNT NUMBER CHECK NUMBER IS REQUIRED CHECK NUMBER MUST BE NUMERIC INVALID CHECK NO BANK ACCOUNT TYPE IS REQUIRED: CHECKING OR SAVINGS BANK ACCOUNT TYPE SHOULD BE SPECIFIED AS CHECKING OR SAVINGS ACCOUNT VERIFICATION IS NOT ENABLED FOR THE SERVICE PROVIDER SEC CODE PROVIDED CANNOT BE USED FOR CREDIT TRANSACTIONS In addition, here is the list of error codes generated based on response received from Card Networks: Response Response Reason Text Reason Code 0000 APPROVED AND COMPLETED 0001 REFER TO ISSUER 0002 REFER TO ISSUERCASE-SPECIAL CONDITION 0003 INVALID MERCHANT ID 0004 PICK UP CARD (NO FRAUD) 0005 DO NOT HONOR 0006 GENERAL ERROR 0007 PICK UP CARD, SPECIAL CONDITION (FRAUD ACCOUNT) 0008 HONOR MASTERCARD WITH ID 0010 PARTIAL APPROVAL FOR THE AUTHORIZED AMOUNT RETURNED IN GROUP III VERSION VIP APPROVAL 0012 INVALID TRANSACTION 0013 INVALID AMOUNT 0014 INVALID CARD NUMBER 0015 NO SUCH ISSUER 0019 RE-ENTER TRANSACTION 0021 UNABLE TO BACK OUT TRANSACTION 0028 FILE IS TEMPORARILY UNAVAILABLE 0030 FORMAT ERROR 0033 EXPIRED CARD; PICK UP (BUYPASS) 0034 SUSPECTED FRAUD; PICK UP (BUYPASS) 0036 RESTRICTED CARD; PICK UP (BUYPASS) 0039 NO CREDIT ACCOUNT 89

90 0041 LOST CARD, PICK UP (FRAUD ACCOUNT) 0043 STOLEN CARD, PICK UP (FRAUD ACCOUNT) 0051 INSUFFICIENT FUNDS 0052 NO CHECKING ACCOUNT 0053 NO SAVINGS ACCOUNT 0054 EXPIRED CARD 0055 INCORRECT PIN 0057 TRANSACTION NOT PERMITTED-CARD 0058 TRANSACTION NOT PERMITTED-TERMINAL 0059 SUSPECTED FRAUD 006* ERROR RESPONSE TEXT FROM CHECK SERVICE 0060 HOLD - CONTACT ACQUIRER 0061 EXCEEDS WITHDRAWAL LIMIT 0062 INVALID SERVICE CODE, RESTRICTED 0063 SECURITY VIOLATION 0065 ACTIVITY LIMIT EXCEEDED 0075 PIN TRIES EXCEEDED 0076 UNABLE TO LOCATE, NO MATCH 0077 INCONSISTENT DATA, REV., OR REPEAT 0078 NO ACCOUNT 0079 ALREADY REVERSED AT SWITCH 0080 INVALID DATE 0081 CRYPTOGRAPHIC ERROR 0082 CASH BACK LIMIT EXCEEDED 0083 CANNOT VERIFY PIN 0085 NO REASON TO DECLINE 0086 CANNOT VERIFY PIN 0090 SYSTEM ERROR 0091 ISSUER OR SWITCH IS UNAVAILABLE 0092 DESTINATION NOT FOUND 0093 VIOLATION, CANNOT COMPLETE 0094 UNABLE TO LOCATE, NO MATCH 0096 SYSTEM MALFUNCTION 00B1 SURCHARGE AMOUNT NOT PERMITTED ON VISA CARDS OR EBT FOOD STAMPS 00B2 SURCHARGE AMOUNT NOT SUPPORTED BY DEBIT NETWORK ISSUER 00CV CARD TYPE VERIFICATION ERROR 00EA VERIFICATION ERROR 00EB VERIFICATION ERROR 90

91 00EC 00HV 00N2 00N3 00N4 00N5 00N6 00N7 00N8 00N9 00R0 00R1 00R3 00T0 00T1 00T2 00T3 00T5 00T6 00T7 AVS01 AVS02 AVS03 CVV01 VERIFICATION ERROR HIERARCHY VERIFICATION ERROR INVALID AMT CASH BACK SERVICE NOT AVAILABLE EXCEEDS ISSUER WITHDRAWAL LIMIT INVALID ACCT NUM INVALID ACCT CVV2 VALUE SUPPLIED IS INVALID SYSTEM ERROR INVALID TERMINAL CUSTOMER REQUESTED STOP OF SPECIFIC RECURRING PAYMENT CUSTOMER REQUESTED STOP OF ALL RECURRING PAYMENTS FROM SPECIFIC MERCHANT CUSTOMER REQUESTED STOP OF ALL RECURRING PAYMENTS FROM SPECIFIC MERCHANT FIRST CHECK IS OK AND HAS BEEN CONVERTED CHECK IS OK BUT CANNOT BE CONVERTED. THIS IS A DECLINED TRANSACTION INVALID ABA NUMBER, NOT AN ACH PARTICIPANT AMOUNT GREATER THAN THE LIMIT DUPLICATE CHECK NUMBER MICR ERROR TOO MANY CHECKS (OVER MERCHANT OR BANK LIMIT) AVS Mismatch. Address info doesn't match the Billing Address of Cardholder. AVS Mismatch. Zip Code doesn't match the Billing Address of Cardholder. AVS Mismatch. Street Info doesn't match the Billing Address of Cardholder. Card Security Code Mismatch How to Contact Technical Support For problems with transaction processing or your connection to the server, contact SecureNet Technical Support at [email protected] or (888) , option 3. Please note that you will be prompted for your SecureNet ID and may be required to provide sample code for further research into your questions. 91

SecureNet Gateway API Implementation Guide

SecureNet Gateway API Implementation Guide SecureNet Gateway API Implementation Guide Version 4.1.5 01.07.2013. 1 Table of Contents 1 INTRODUCTION... 4 1.1 How to Use This Document... 4 1.2 What is the Gateway?... 4 1.3 Service Based Authorization

More information

SecureNet Gateway API Implementation Guide

SecureNet Gateway API Implementation Guide SecureNet Gateway API Implementation Guide Version 4.2 11.21.2013. 1 Table of Contents 1 INTRODUCTION... 6 1.1 How to Use This Document... 6 1.2 What is the Gateway?... 6 1.3 Service Based Authorization

More information

Last updated: September 3, 2013. SecureNet Error Codes

Last updated: September 3, 2013. SecureNet Error Codes Last updated: September 3, 2013 SecureNet Error Codes Document Notes Error Levels Error Level Description Response Code Level 1 These errors are triggered by business rules or invalid data before the transaction

More information

Three Step Redirect API V2.0 Patent Pending

Three Step Redirect API V2.0 Patent Pending Three Step Redirect API V2.0 Patent Pending Contents Three Step Redirect Overview... 4 Three Step Redirect API... 4 Detailed Explanation... 4 Three Step Transaction Actions... 7 Step 1... 7 Sale/Auth/Credit/Validate/Offline

More information

Network Merchants Inc (NMI) Integration Resources. Direct Post API Documentation April 2010

Network Merchants Inc (NMI) Integration Resources. Direct Post API Documentation April 2010 Network Merchants Inc (NMI) Integration Resources Direct Post API Documentation April 2010 Table of Contents Methodology... 2 Direct Post Method (Server to Server) FIG. 1... 2 Transaction Types... 3 Sale

More information

Three Step Redirect API

Three Step Redirect API Inspire Commerce &.pay Three Step Redirect API Inspire Commerce 800-261-3173 [email protected] Contents Overview... 3 Methodology... 3 XML Communica:on... 5 Transac:on Opera:ons... 6 Customer

More information

Gateway Direct Post API

Gateway Direct Post API Gateway Direct Post API http://merchantguy.com @MerchantGuy Questions? [email protected] Contents Methodology....3! Direct Post Method (Server to Server FIG. 1...3 Transaction Types.....4! Sale (sale)..4!

More information

Methodology Three-Step

Methodology Three-Step Methodology Three-Step Method Overview Step One: Submit all transaction details to the Payment Gateway except the customer's sensitive payment information. The Payment Gateway will return a variable form-url.

More information

Credit Card Processing with Element Payment Services (Eterm) Release 8.7.8

Credit Card Processing with Element Payment Services (Eterm) Release 8.7.8 Credit Card Processing with Element Payment Services (Eterm) Release 8.7.8 Disclaimer This document is for informational purposes only and is subject to change without notice. This document and its contents,

More information

Merchant One Payment Systems Integration Resources. Direct Post API Documentation June 2007

Merchant One Payment Systems Integration Resources. Direct Post API Documentation June 2007 Merchant One Payment Systems Integration Resources Direct Post API Documentation June 2007 Table of Contents Methodology... 2 Direct Post Method (Server to Server) FIG. 1... 2 Transaction Types... 3 Sale

More information

Volume PLANETAUTHORIZE PAYMENT GATEWAY. vtiger CRM Payment Module. User Guide

Volume PLANETAUTHORIZE PAYMENT GATEWAY. vtiger CRM Payment Module. User Guide Volume 2 PLANETAUTHORIZE PAYMENT GATEWAY vtiger CRM Payment Module User Guide S A L E M A N A G E R M E R C H A N T S E R V I C E S User Guide and Installation Procedures Information in this document,

More information

Credit Card Processing with Element Payment Services. Release 8.7.9

Credit Card Processing with Element Payment Services. Release 8.7.9 Credit Card Processing with Element Payment Services Release 8.7.9 Disclaimer This document is for informational purposes only and is subject to change without notice. This document and its contents, including

More information

Document Version 2.7.6. Copyright 2007-2008 Pivotal Payments Inc. All Rights Reserved. Visit us at: www.pivotalpayments.com

Document Version 2.7.6. Copyright 2007-2008 Pivotal Payments Inc. All Rights Reserved. Visit us at: www.pivotalpayments.com XML File Method Integration Developer Kit User s Manual Document Version 2.7.6 Copyright 2007-2008 Pivotal Payments Inc. All Rights Reserved. Visit us at: www.pivotalpayments.com Support Pivotal Payments

More information

Card-Present Transactions Implementation Guide Version 1.0

Card-Present Transactions Implementation Guide Version 1.0 Card-Present Transactions Implementation Guide Version 1.0 Page 2 of 41 Table of Contents INTRODUCTION...4 ADVANCED INTEGRATION METHOD (AIM)...5 What is the Advanced Integration Method (AIM)?...5 How Does

More information

CREDIT CARD PROCESSING GLOSSARY OF TERMS

CREDIT CARD PROCESSING GLOSSARY OF TERMS CREDIT CARD PROCESSING GLOSSARY OF TERMS 3DES A highly secure encryption system that encrypts data 3 times, using 3 64-bit keys, for an overall encryption key length of 192 bits. Also called triple DES.

More information

The Wells Fargo Payment Gateway Business Center. User Guide

The Wells Fargo Payment Gateway Business Center. User Guide The Wells Fargo Payment Gateway Business Center User Guide Contents 1 Introduction 1 About the Wells Fargo Payment Gateway service Business Center 1 About this guide 2 Access the Business Center 2 Log

More information

Advanced Integration Method (AIM) Developer Guide

Advanced Integration Method (AIM) Developer Guide Advanced Integration Method (AIM) Developer Guide Card Not Present Transactions Authorize.Net Developer Support http://developer.authorize.net Authorize.Net LLC 082007 Ver.2.0 Authorize.Net LLC ( Authorize.Net

More information

Merchant Account Glossary of Terms

Merchant Account Glossary of Terms Merchant Account Glossary of Terms From offshore merchant accounts to the truth behind free merchant accounts, get answers to some of the most common and frequently asked questions. If you cannot find

More information

Merchant e-solutions Payment Gateway Back Office User Guide. Merchant e-solutions January 2011 Version 2.5

Merchant e-solutions Payment Gateway Back Office User Guide. Merchant e-solutions January 2011 Version 2.5 Merchant e-solutions Payment Gateway Back Office User Guide Merchant e-solutions January 2011 Version 2.5 This publication is for information purposes only and its content does not represent a contract

More information

Balance Inquiry (Food Stamp or Cash Account) Use this function to obtain a cardholder s Account balance. Touch EBT. Touch desired option.

Balance Inquiry (Food Stamp or Cash Account) Use this function to obtain a cardholder s Account balance. Touch EBT. Touch desired option. Food Stamp (FS) Sale Use this function to perform a FS Sale transaction. REFUND VOUCH EBT TYPE? FOOD STAMP CASH BENEFIT EBT APPROVED ##### Swipe card or key account number and touch Touch Food Stamp Key

More information

Inspire Commerce &.pay. Customer Vault API. Inspire Commerce 800-261-3173 [email protected]

Inspire Commerce &.pay. Customer Vault API. Inspire Commerce 800-261-3173 support@inspirecommerce.com Inspire Commerce &.pay Customer Vault API Inspire Commerce 800-261-3173 [email protected] Overview Customer Vault Security Concerns The Customer Vault was designed specifically for businesses

More information

Redwood Merchant Services. Merchant Processing Terminology

Redwood Merchant Services. Merchant Processing Terminology ACH - Automated Clearing House for member banks to process electronic payments or withdrawals. (Credits or debits to a bank account) through the Federal Reserve Bank. Acquiring Bank - Licensed Visa/MasterCard

More information

itransact Gateway Fast Start Guide

itransact Gateway Fast Start Guide itransact Gateway Fast Start Guide itransact Gateway Fast Start Guide Table of Contents 1. Version and Legal Information... 1 2.... 2 Quick Setup... 2 The Card Setup... 2 Order Form Setup... 3 Simple

More information

An access number, dialed by a modem, that lets a computer communicate with an Internet Service Provider (ISP) or some other service provider.

An access number, dialed by a modem, that lets a computer communicate with an Internet Service Provider (ISP) or some other service provider. TERM DEFINITION Access Number Account Number Acquirer Acquiring Bank Acquiring Processor Address Verification Service (AVS) Association Authorization Authorization Center Authorization Fee Automated Clearing

More information

Merchant Interface Online Help Files

Merchant Interface Online Help Files Merchant Interface Online Help Files Table of Contents Merchant Interface Online Help Files... 5 Tools... 6 Virtual Terminal... 7 Submit a Credit Card Charge... 7 Submit a Credit Card Refund... 9 Submit

More information

PROCESS TRANSACTION API

PROCESS TRANSACTION API PROCESS TRANSACTION API Document Version 8.7 May 2015 For further information please contact Digital River customer support at (888) 472-0811 or [email protected]. 1 TABLE OF CONTENTS 2 Lists of tables

More information

6. REPONSE CODE DEFINITION

6. REPONSE CODE DEFINITION 6. REPONSE CODE DEFINITION 6.1 ACTION KEY: Action Description Call Call your Chase Paymentech Customer Service for assistance Cust. Resend Voice Wait Try to resolve with customer or obtain alternate payment

More information

Response Code Details

Response Code Details Section 4 Transaction Response If the original transaction was approved, and a value was passed in the duplicate window field, the payment gateway response will also include the authorization code for

More information

Merchant Integration Guide

Merchant Integration Guide Merchant Integration Guide Card Not Present Transactions January 2012 Authorize.Net Developer Support http://developer.authorize.net Authorize.Net LLC 082007 Ver.2.0 Authorize.Net LLC ( Authorize.Net )

More information

Online Payment Processing Definitions From Credit Research Foundation (http://www.crfonline.org/)

Online Payment Processing Definitions From Credit Research Foundation (http://www.crfonline.org/) Online Payment Processing Definitions From Credit Research Foundation (http://www.crfonline.org/) The following glossary represents definitions for commonly-used terms in online payment processing. Address

More information

Virtual Payment Client Integration Reference. April 2009 Software version: 3.1.21.1

Virtual Payment Client Integration Reference. April 2009 Software version: 3.1.21.1 Virtual Payment Client Integration Reference April 2009 Software version: 3.1.21.1 Copyright MasterCard and its vendors own the intellectual property in this Manual exclusively. You acknowledge that you

More information

Verified by Visa. Acquirer and Merchant Implementation Guide. U.S. Region. May 2011

Verified by Visa. Acquirer and Merchant Implementation Guide. U.S. Region. May 2011 Verified by Visa Acquirer and Merchant Implementation Guide U.S. Region Verified by Visa Acquirer and Merchant Implementation Guide U.S. Region VISA PUBLIC DISCLAIMER: THE RECOMMENDATIONS CONTAINED HEREIN

More information

GLOSSARY OF MOST COMMONLY USED TERMS IN THE MERCHANT SERVICES INDUSTRY

GLOSSARY OF MOST COMMONLY USED TERMS IN THE MERCHANT SERVICES INDUSTRY GLOSSARY OF MOST COMMONLY USED TERMS IN THE MERCHANT SERVICES INDUSTRY Acquiring Bank The bank or financial institution that accepts credit and/or debit card payments for products or services on behalf

More information

CFX_AIM_JAVA. A payment card gateway solutions for ColdFusion users of Authorize.Net s Advanced Integration Method (AIM)

CFX_AIM_JAVA. A payment card gateway solutions for ColdFusion users of Authorize.Net s Advanced Integration Method (AIM) CFX_AIM_JAVA A payment card gateway solutions for ColdFusion users of Authorize.Net s Advanced Integration Method (AIM) Installation & User Guide Software Information Software Version: 1.0 Published: 01/25/2012

More information

Credomatic Integration Resources. Browser Redirect API Documentation June 2007

Credomatic Integration Resources. Browser Redirect API Documentation June 2007 Credomatic Integration Resources Browser Redirect API Documentation June 2007 Table of Contents Methodology... 2 Browser Redirect Method (Browser to Server) FIG. 1... 2 API Authentication Parameters...

More information

Payment Card Industry (PCI) Data Security Standard

Payment Card Industry (PCI) Data Security Standard Payment Card Industry (PCI) Data Security Standard Attestation of Compliance for Onsite Assessments Service Providers Version 3.0 February 2014 Section 1: Assessment Information Instructions for Submission

More information

Swedbank Payment Portal Implementation Overview

Swedbank Payment Portal Implementation Overview Swedbank Payment Portal Implementation Overview Product: Hosted Pages Region: Baltics September 2015 Version 1.0 Contents 1. Introduction 1 1.1. Audience 1 1.2. Hosted Page Service Features 1 1.3. Key

More information

PathwayLINK Recurring Billing Document Version 1.7 Published NOV 2011

PathwayLINK Recurring Billing Document Version 1.7 Published NOV 2011 PathwayLINK Recurring Billing Document Version 1.7 Published NOV 2011 Email: [email protected] T-Gate, LLC 1821 Walden Square Suite 220 Schaumburg, IL 60173 www.tgatepayments.com PathwayLINK

More information

MiGS Merchant Administration Guide. July 2013 Software version: MR 29

MiGS Merchant Administration Guide. July 2013 Software version: MR 29 MiGS Merchant Administration Guide July 2013 Software version: MR 29 Copyright MasterCard and its vendors own the intellectual property in this Manual exclusively. You acknowledge that you must not perform

More information

Merchant Integration Guide

Merchant Integration Guide Merchant Integration Guide Card Not Present Transactions Authorize.Net Customer Support [email protected] Authorize.Net LLC 071708 Authorize.Net LLC ( Authorize.Net ) has made efforts to ensure the

More information

Merchant Plug-In. Specification. Version 3.2. 110.0093 SIX Payment Services

Merchant Plug-In. Specification. Version 3.2. 110.0093 SIX Payment Services Merchant Plug-In Specification Version 3.2 110.0093 SIX Payment Services Table of contents 1 Introduction... 3 1.1 Summary... 3 1.2 Requirements... 4 1.3 Participation and Result of the Authentication...

More information

Retrieval & Chargeback Best Practices

Retrieval & Chargeback Best Practices Retrieval & Chargeback Best Practices A Merchant User s Guide to Help Manage Disputes Version Three November, 2010 www.firstdata.com THIS PAGE INTENTIONALLY LEFT BLANK. Developed by: First Data Payment

More information

APS Gateway New Merchant Set-up

APS Gateway New Merchant Set-up APS Gateway New Merchant Set-up 2014 American Payment Solutions. All rights reserved Page 1 Prior to building the APS-Gateway you will retrieve Information for the build: 1) Pull up the merchants account

More information

Merchant e-solutions Payment Gateway. Merchant e-solutions October 2013 Version 4.10

Merchant e-solutions Payment Gateway. Merchant e-solutions October 2013 Version 4.10 Merchant e-solutions Payment Gateway Merchant e-solutions October 2013 Version 4.10 This publication is for information purposes only and its content does not represent a contract in any form. Furthermore,

More information

Advanced Integration Method (AIM) Developer Guide

Advanced Integration Method (AIM) Developer Guide Advanced Integration Method (AIM) Developer Guide Card Not Present Transactions Authorize.Net Developer Support http://developer.authorize.net Authorize.Net LLC 082007 Ver.2.0 Authorize.Net LLC ( Authorize.Net

More information

Merchant User Manual PAYMENT GATEWAY

Merchant User Manual PAYMENT GATEWAY PAYMENT GATEWAY Document Version 1304301 Copyright 2013 epaymentamerica, Inc. All Rights Reserved Table of Contents Introduction... 4 Overview... 5 Ch 1: Beginning to Use EPA Gateway.. 6 Logon as a Merchant...6

More information

FUTURE PROOF TERMINAL QUICK REFERENCE GUIDE. Review this Quick Reference Guide to. learn how to run a sale, settle your batch

FUTURE PROOF TERMINAL QUICK REFERENCE GUIDE. Review this Quick Reference Guide to. learn how to run a sale, settle your batch QUICK REFERENCE GUIDE FUTURE PROOF TERMINAL Review this Quick Reference Guide to learn how to run a sale, settle your batch and troubleshoot terminal responses. INDUSTRY Retail and Restaurant APPLICATION

More information

Payment Card Industry (PCI) Data Security Standard

Payment Card Industry (PCI) Data Security Standard Payment Card Industry (PCI) Data Security Standard Attestation of Compliance for Onsite Assessments Service Providers Version 3.1 April 2015 Section 1: Assessment Information Instructions for Submission

More information

Title Page. Credit Card Services. User Guide. August 2015. CyberSource Corporation HQ P.O. Box 8999 San Francisco, CA 94128-8999 Phone: 800-530-9095

Title Page. Credit Card Services. User Guide. August 2015. CyberSource Corporation HQ P.O. Box 8999 San Francisco, CA 94128-8999 Phone: 800-530-9095 Title Page Credit Card Services User Guide August 2015 CyberSource Corporation HQ P.O. Box 8999 San Francisco, CA 94128-8999 Phone: 800-530-9095 CyberSource Contact Information For technical support questions,

More information

Ingenico QUICK REFERENCE GUIDE

Ingenico QUICK REFERENCE GUIDE QUICK REFERENCE GUIDE Ingenico This Quick Reference Guide will guide you through understanding your terminal s functionality and navigation, and will help you with troubleshooting. INDUSTRY Retail and

More information

Transaction Details Guide

Transaction Details Guide Title Page Transaction Details Guide Merchant Web Services API XML April 2014 Authorize.Net Developer Support http://developer.authorize.net Authorize.Net LLC 082007 Ver.2.0 Authorize.Net LLC ("Authorize.Net")

More information

Process Transaction API

Process Transaction API Process Transaction API Document Version 5.9 March 2011 For further information please contact Beanstream customer support at (250) 472-2326 or [email protected]. BEAN # Page 2 of 90 Date Overview...

More information

Durango Merchant Services Customer Vault API

Durango Merchant Services Customer Vault API Durango Merchant Services Customer Vault API V1.1 Integration Resources Documentation April 2008 Updated Sept 2011 Durango-Direct.com 866-415-2636 Contents Overview... 3 Customer Vault... 3 Methodology...

More information

Netswipe Processing Implementation

Netswipe Processing Implementation Netswipe Processing Implementation Direct Integration with Jumio s Payment Gateway Revision History Version Date published Description 1.0.0 November 22 nd, 2011 Initial release. 1.0.1 January 12 th, 2012

More information

Merchant User Manual

Merchant User Manual PIVOTAL PAYMENTS PAYMENT SERVER Document Version 2.07.0415 Copyright 2007-2008 Pivotal Payments Inc. All Rights Reserved. Visit us at: www.pivotalpayments.com Merchant User Manual Congratulations on the

More information

eway AU Hosted Payment Page

eway AU Hosted Payment Page Web Active Corporation eway AU Hosted Payment Page Full Analysis and Data Type Field Specifications Contents Introduction... 3 Customisation... 4 Processing Fraud Protected Transactions... 5 Appendix A

More information

Recurring Credit Card Billing

Recurring Credit Card Billing Recurring Credit Card Billing Recurring Credit Card Billing (RCCB) allows recurring debits to a credit card in a PCI compliant method. System Overview This document is intended for merchants and developers

More information

epnplugin v3.1.58 Financial Software Payments Module for QuickBooks Receive Payments & Invoices

epnplugin v3.1.58 Financial Software Payments Module for QuickBooks Receive Payments & Invoices epnplugin v3.1.58 Financial Software Payments Module for QuickBooks Receive Payments & Invoices eprocessing Network LLC 7/2/2012 epnplugin 3 Receive Payments & Invoices Table of Contents OVERVIEW... 3

More information

Equinox T4200 Series QUICK REFERENCE GUIDE

Equinox T4200 Series QUICK REFERENCE GUIDE QUICK REFERENCE GUIDE Equinox T4200 Series This Quick Reference Guide will guide you through understanding your terminal s functionality and navigation, and will help you with troubleshooting. INDUSTRY

More information

Merchant Web Services API

Merchant Web Services API Merchant Web Services API Advanced Integration Method (AIM) XML Guide February 2013 Authorize.Net Developer Support http://developer.authorize.net Authorize.Net LLC 082007 Ver.2.0 Authorize.Net LLC ( Authorize.Net

More information

Advanced Integration Method (AIM) Developer Guide

Advanced Integration Method (AIM) Developer Guide Advanced Integration Method (AIM) Developer Guide Card Not Present Transactions Authorize.Net Developer Support http://developer.authorize.net Authorize.Net LLC 082007 Ver.2.0 Authorize.Net LLC ( Authorize.Net

More information

Payment Card Industry (PCI) Data Security Standard

Payment Card Industry (PCI) Data Security Standard Payment Card Industry (PCI) Data Security Standard Attestation of Compliance for Self-Assessment Questionnaire D Service Providers For use with PCI DSS Version 3.1 Revision 1.1 July 2015 Section 1: Assessment

More information

General Industry terms

General Industry terms General Industry terms Address Verification: A service provided through which the merchant verifies the Cardholder s address. Primarily used by Mail/Telephone order merchants. Not a guarantee that a transaction

More information

REDFIN Document Version 2.07.0415-a

REDFIN Document Version 2.07.0415-a REDFIN NETWORK PAYMENT GATEWAY Document Version 2.07.0415-a Copyright 2001-08 Secured Financial Network, Inc. All Rights Reserved Table of Contents Introduction...4 Overview...5 Ch 1: Beginning to Use

More information

Version 1.0 STRATEGIC PARTNER TRAINING MANUAL

Version 1.0 STRATEGIC PARTNER TRAINING MANUAL Version 1.0 STRATEGIC PARTNER TRAINING MANUAL Table of Contents Introduction... 3 Features of the Strategic Partnership... 3 Responsibilities... 3 Billing... 4 Gateway Service... 4 Risk... 4 I. PRODUCTS/SERVICES...

More information

JCharge White Paper. Merchant, Acquirer, Bank, Authorization Network

JCharge White Paper. Merchant, Acquirer, Bank, Authorization Network JCharge White Paper A company using an IBM iseries (AS/400) has several methods from which to choose in taking credit card payments. Whether the payments are for retail, mail order, phone order, or Internet

More information

Credit/Debit Card Processing Requirements and Best Practices. Adele Honeyman Oregon State Treasury Training Specialist

Credit/Debit Card Processing Requirements and Best Practices. Adele Honeyman Oregon State Treasury Training Specialist Credit/Debit Card Processing Requirements and Best Practices Adele Honeyman Oregon State Treasury Training Specialist 1 What? What do I need to know about excepting credit cards? Who s involved, how it

More information

My Sage Pay User Manual

My Sage Pay User Manual My Sage Pay User Manual Page 1 of 32 Contents 01. About this guide..4 02. Getting started.4 Online help Accessing My Sage Pay Test Servers Live Servers The Administrator account Creating user accounts

More information

Secure XML API Integration Guide. (with FraudGuard add in)

Secure XML API Integration Guide. (with FraudGuard add in) Secure XML API Integration Guide (with FraudGuard add in) Document Control This is a control document DESCRIPTION Secure XML API Integration Guide (with FraudGuard add in) CREATION DATE 02/04/2007 CREATED

More information

MySagePay. User Manual. Page 1 of 48

MySagePay. User Manual. Page 1 of 48 MySagePay User Manual Page 1 of 48 Contents About this guide... 4 Getting started... 5 Online help... 5 Accessing MySagePay... 5 Supported browsers... 5 The Administrator account... 5 Creating user accounts...

More information

Credit Card Processing Overview

Credit Card Processing Overview CardControl 3.0 Credit Card Processing Overview Overview Credit card processing is a very complex and important system for anyone that sells goods. This guide will hopefully help educate and inform new

More information

CRM4M Accounting Set Up and Miscellaneous Accounting Guide Rev. 10/17/2008 rb

CRM4M Accounting Set Up and Miscellaneous Accounting Guide Rev. 10/17/2008 rb CRM4M Accounting Set Up and Miscellaneous Accounting Guide Rev. 10/17/2008 rb Topic Page Chart of Accounts 3 Creating a Batch Manually 8 Closing a Batch Manually 11 Cancellation Fees 17 Check Refunds 19

More information

E-Commerce SOLUTIONS. Generate Online Revenue with E-Commerce Solutions. www.monexgroup.com

E-Commerce SOLUTIONS. Generate Online Revenue with E-Commerce Solutions. www.monexgroup.com E-Commerce SOLUTIONS In this report, MONEXgroup examines various types of online payment processing and E-Commerce Solutions. The tremendous transition towards online shopping stores in Canada has opened

More information

American Express and Discover are proprietary entities performing the functions of both a card association and an issuing bank.

American Express and Discover are proprietary entities performing the functions of both a card association and an issuing bank. ELECTRONIC VALUE TRANSFER CONTRACT (EVT) CREDIT CARD BACKGROUND INFORMATION What is a Credit Card? A credit card is a plastic card issued to an individual or business which is accepted by participating

More information

Merchant Card Processing Best Practices

Merchant Card Processing Best Practices Merchant Card Processing Best Practices Background: The major credit card companies (VISA, MasterCard, Discover, and American Express) have published a uniform set of data security standards that ALL merchants

More information

VeriFone Omni VeriFone V x

VeriFone Omni VeriFone V x QUICK REFERENCE GUIDE VeriFone Omni VeriFone V x This Quick Reference Guide will guide you through understanding your terminal s functionality and navigation, and will help you with troubleshooting. INDUSTRY

More information

WineWeb: Payment Gateway Guide

WineWeb: Payment Gateway Guide WineWeb: Payment Gateway Guide This document describes the options and considerations for establishing credit card processing services and integrating them into WineWeb s e-commerce, wine club and point-of-sale

More information

Server-to-Server Credit Card Implementation Guide

Server-to-Server Credit Card Implementation Guide Server-to-Server Credit Card Implementation Guide Merchant implementation instructions to integrate to the Setcom credit card processing platform. Covers: Fraud Screening, Verified by Visa, MasterCard

More information

MasterCard In tern et Gatew ay Service (MIGS)

MasterCard In tern et Gatew ay Service (MIGS) Master Card Inter national MasterCard In tern et Gatew ay Service (MIGS) MIGS Payment Client Reference Manual Prepared By: Patrick Hayes Department: Principal Consultant, ebusiness Solutions Date Written:

More information

iyzico one-off payment and installment easy payment integration

iyzico one-off payment and installment easy payment integration iyzico one-off payment and installment easy payment integration Version: 1.0.11 iyzi teknoloji ve ödeme sistemleri A.Ş. iyzico one-off payment and installment 1 Release History Date Version Reason for

More information

Cost-management strategies. Your guide to accepting card payments cost-effectively

Cost-management strategies. Your guide to accepting card payments cost-effectively Cost-management strategies Your guide to accepting card payments cost-effectively Table of Contents Guidance from Wells Fargo Merchant Services...3 The secret to better interchange rates...4 Why interchange

More information

DIRECT INTEGRATION GUIDE DIRECT INTEGRATION GUIDE. Version: 9.16

DIRECT INTEGRATION GUIDE DIRECT INTEGRATION GUIDE. Version: 9.16 DIRECT Version: 9.16-1 - 1 Direct HTTP Integration... 4 1.1 About This Guide... 4 1.2 Integration Disclaimer... 4 1.3 Terminology... 5 1.4 Pre-Requisites... 6 1.5 Integration Details... 7 1.6 Authentication...

More information

Web Services Credit Card Errors A Troubleshooter

Web Services Credit Card Errors A Troubleshooter Web Services Credit Card Errors A Troubleshooter March 2011 This manual and accompanying electronic media are proprietary products of Optimal Payments plc. They are to be used only by licensed users of

More information

2015-11-02. Electronic Payments Part 1

2015-11-02. Electronic Payments Part 1 Electronic Payments Part Card transactions Card-Present Smart Cards Card-Not-Present SET 3D Secure Untraceable E-Cash Micropayments Payword Electronic Lottery Tickets Peppercoin Bitcoin EITN4 - Advanced

More information

Card-Present Transactions

Card-Present Transactions Card-Present Transactions Implementation Guide September 2012 Authorize.Net Developer Support http://developer.authorize.net Authorize.Net LLC 082007 Ver.2.0 Authorize.Net LLC ( Authorize.Net ) has made

More information

The Comprehensive, Yet Concise Guide to Credit Card Processing

The Comprehensive, Yet Concise Guide to Credit Card Processing The Comprehensive, Yet Concise Guide to Credit Card Processing Written by David Rodwell CreditCardProcessing.net Terms of Use This ebook was created to provide educational information regarding payment

More information

DalPay Internet Billing. Checkout Integration Guide Recurring Billing

DalPay Internet Billing. Checkout Integration Guide Recurring Billing DalPay Internet Billing Checkout Integration Guide Recurring Billing Version 1.3 Last revision: 01/07/2011 Page 1 of 16 Version 1.3 Last revision: 01/07/2011 Page 2 of 16 REVISION HISTORY 4 INTRODUCTION

More information

Credit & Debit Application

Credit & Debit Application USER MANUAL ALL TERMINAL PRODUCTS Credit & Debit Application Instruction Manual V525.15 Dejavoo Systems Instruction Manual V525.15 1 ABOUT THIS MANUAL This manual provides basic instructions for user of

More information

Merchant Web Services API Advanced Integration Method (AIM)

Merchant Web Services API Advanced Integration Method (AIM) Title Merchant Web Services API Advanced Integration Method (AIM) XML Guide October 2015 Authorize.Net Developer Support http://developer.authorize.net Authorize.Net LLC 082007 Ver.2.0 Authorize.Net LLC

More information

Payment Card Industry (PCI) Data Security Standard

Payment Card Industry (PCI) Data Security Standard Payment Card Industry (PCI) Data Security Standard Attestation of Compliance for Onsite Assessments Service Providers Version 3.0 February 2014 Section 1: Assessment Information Instructions for Submission

More information

Web Services Credit Card Errors A Troubleshooter

Web Services Credit Card Errors A Troubleshooter Web Services Credit Card Errors A Troubleshooter January 2012 This manual and accompanying electronic media are proprietary products of Optimal Payments plc. They are to be used only by licensed users

More information

PayLeap Guide. One Stop

PayLeap Guide. One Stop PayLeap Guide One Stop PayLeap does it all. Take payments in person? Check. Payments over the phone or by mail? Check. Payments from mobile devices? Of course. Online payments? No problem. In addition

More information

Terminal / Account Set-up Form TS1001 Revised November 2011

Terminal / Account Set-up Form TS1001 Revised November 2011 Terminal / Account Set-up Form TS1001 Revised November 2011 1 Terminal/Account Set-up Form: Top Portion Merchant: Fill in the merchant s Doing Business As (DBA) name. IBM: The name of the Independent Business

More information

First Data E-commerce Payments Gateway

First Data E-commerce Payments Gateway First Data E-commerce Payments Gateway High performance payment processing solution designed specifically to meet the requirements of global Card-Not-Present PSP When you partner with First Data for your

More information

CardControl. Credit Card Processing 101. Overview. Contents

CardControl. Credit Card Processing 101. Overview. Contents CardControl Credit Card Processing 101 Overview Credit card processing is a very complex and important system for anyone that sells goods. This guide will hopefully help educate and inform new and old

More information

Secure Payment Form User s Guide

Secure Payment Form User s Guide User s Guide (Functional Reference / Technical Specifications) REDFIN NETWORK PAYMENT GATEWAY Document Version 1.3 Copyright 2013 RedFin Network. All Rights Reserved Introduction Visit us at: http://www.redfinnet.com.

More information

Elavon Payment Gateway- Reporting User Guide

Elavon Payment Gateway- Reporting User Guide Elavon Payment Gateway- Reporting User Guide Version: v1.1 Contents 1 About This Guide... 4 1.1 Purpose... 4 1.2 Audience... 4 1.3 Prerequisites... 4 1.4 Related Documents... 4 1.5 Terminology... 4 1.6

More information