| Property | Type | Required | Description |
| Processing Settings |
| SourceKey | String | All | Source Key generated by the Merchant Console at www.usaepay.com. |
| Pin | String | All* | Pin for Source Key. This field is required only if the merchant has set a Pin in the merchant console. * A pin must be set and used if using the CloseBatch() and BatchSummary() methods. |
| IgnoreDupe | Boolean | | Set this flag to allow a duplicate transaction to go through. |
| Command | String | * | Command to run; Possible values are: sale, credit, void, authonly, capture, postauth, creditvoid, refund, check and checkcredit. *This property only needs to be set if you are using the Process method. All other methods override the Command property. Default is sale. |
| Software | String | | Allows developers to send the name and version of their application in to the gateway. |
| ClientIP | String | | IP Address of client browser, used for fraud checks. (optional) |
| GatewayURL | String | | Optional. Allows you to override the default gateway url of https://www.usaepay.com/gate. To use the secondary server pools set the url to https://www-11.usaepay.com/gate or https://www-03.usaepay.com/gate or or https://www-02.usaepay.com/gate |
| UseSandbox | String | | Switches the API to use the sandbox environment. You must have a separate source key for the sandbox. A sandbox account can be requested in Developer Center. (optional) |
| Transaction Details |
| Amount | Decimal | All | Charge amount without $. The amount field should include the total amount to be charged, including sales tax. |
| Currency | String | * | Three character currency code. * Should only be sent if using a multicurrency processor on a non USD transaction. Indicates the currency of Amount |
| Tax | Decimal | | The portion of amount that is sales tax. |
| NonTaxable | Boolean | | If true, indicates the transaction is for a non taxable item. |
| Tip | Decimal | | The portion of amount designated for a service tip. |
| Shipping | Decimal | | Shipping charge |
| Discount | Decimal | | Discount amount (i.e. gift certificate or coupon amount) |
| Subtotal | Decimal | | Order subtotal. If set, then subtotal + tip + shipping - discount + tax must equal amount or the transaction will be declined. If subtotal is left blank then it will be ignored. |
| Invoice | String | | Unique ticket, invoice or order number. 10 digits. |
| OrderID | String | | Unique order identifier. Used to reference the order that each transaction corresponds to. This field can contain up to 64 characters and should be used instead of invoice when an orderid is longer that 10 digits. |
| PoNum | String | | Customer purchase order number. Only required for commercial cards. |
| OrigAuthCode | String | | Originating Auth Code, required when running the postauth command. Typically this is given when a voice authorization is obtained. |
| CustID | String | | Alpha-numeric code that uniquely identifies the customer. |
| CardHolder | String | | Name as it appears on the card. |
| Description | String | | Charge description (optional). |
| Comments | String | | Merchant comment for transaction. Not displayed to customer (on receipt). Visible only on the transaction details screen in the console. |
| CustEmail | String | | Customer Email address (optional). |
| CustReceipt | Boolean | | Send a customer receipt. Note, this will override the source setting (defaults to no). |
| CustReceiptName | String | | Name of the custom receipt template to use. If omitted or if receipt not found, default customer receipt template will be used. |
| Custom[1-20] | String | | Optional custom data fields that are stored in the Transaction and/or Customer record. (Custom1, Custom2, etc.) |
| Credit Card Details |
| CardNumber | String | CC | Credit Card Number with no spaces or dashes |
| CardExp | String | CC | Expiration Date in the form of MMYY with no spaces or punctuation |
| AvsStreet | String | | Street address for use in AVS check. |
| AvsZip | String | | Zipcode for AVS check. |
| Cvv2 | String | | CVC/CVV2 3-4 digit security code from back of credit card (optional). |
| Card Present Transactions |
| CardPresent | Boolean | | Marks transaction as a card present transaction. true or false |
| MagStripe | String | | Data read from magnetic stripe on back of card. Track 1, Track 2 or both Tracks read from credit card. |
| Dukpt | String | | DUK/PT key for Pin-Debit transactions. The first 16 characters are the encrypted pin block, followed by the 6 character long Key Set Identifier (KSID). The remaining characters are the Pin Pad serial number and transaction counter. |
| Contactless | Boolean | | Card read via contactless swiper, yes/no. (defaults to no) |
| TermType | String | | The type of terminal being used: Options are POS - cash register, StandAlone - self service terminal, Unattended - ie gas pump, Unkown (defaults to Unknown). |
| Signature | String | | Base64 encode customer signature image block |
| MagSupport | String | | Support for mag stripe reader: yes, no or unknown (default is unknown unless magstripe has been sent) |
| Electronic Check Transactions |
| CheckRouting | String | Check | Bank routing number. Required for check transactions. |
| CheckAccount | String | Check | Bank account number. Required for check transactions. |
| CheckNum | String | | Check Number. (optional) |
| AccountType | String | | “Checking” or “Savings”. Defaults to “Checking” |
| CheckFormat | String | | Format of ACH transaction. Should be omitted unless instructed by check processor |
| DLnum | String | | Drivers License Number. Required for check transactions if not using SSN. |
| DLstate | String | | Drivers License Issuing State. Required for check transactions if not using SSN. |
| Recurring Billing |
| Recurring | Boolean | | Save the transaction as a recurring transaction. (Yes/No) |
| Schedule | String | | How often to run the transaction. Possible values are: daily, weekly, biweekly, monthly, bimonthly, quarterly, annually. Default is monthly. |
| NumLeft | String | | The number of times to run. Either a number or * for unlimited. Default is unlimited. |
| StartDate | String | | When to start the schedule. Must be in YYYYMMDD format. If left blank, default is “tomorrow.” |
| EndDate | String | | When to stop running transactions. Default is to run forever. If both end and numleft are specified, transaction will stop when the earliest condition is met. |
| BillAmount | Decimal | | Optional recurring billing amount. If not specified, the amount field will be used for future recurring billing payments. |
| Cardholder Authorization (Verified By Visa and Mastercard SecureCode) |
| CardAuth | String | | Enables USAePay Cardholder Authentication. The merchant must have a Cardinal Commerce account enabled in the gateway. If they don't have an account, then the this field will be ignored and the transaction will be processed normally (without attempting authentication). Set cardauth=1 to enable cardholder authentication, set cardauth=0 to disable authentication. (defaults to disabled) If using a thirdparty service (such as the Cardinal Commerce Thin Client) to perform authentication set this value to 0 and populate the CAVV and ECI fields) |
| Pares | String | | The authentication response received from independent authentication site. |
| CAVV | String | | The cavv provided by an external third party verification platform. Omit if using USAePay to perform verification. |
| ECI | String | | ECI value provided by external third party. Omit if you are not using third party verification. |
| Billing Address Information |
| BillingFirstName | String |
| BillingLastName | String |
| BillingCompany | String |
| BillingStreet | String |
| BillingStreet2 | String |
| BillingCity | String |
| BillingState | String |
| BillingZip | String |
| BillingCountry | String |
| BillingPhone | String |
| Email | String |
| Fax | String |
| Website | String |
| Shipping Address |
| ShippingFirstName | String |
| ShippingLastName | String |
| ShippingCompany | String |
| ShippingStreet | String |
| ShippingStreet2 | String |
| ShippingCity | String |
| ShippingState | String |
| ShippingZip | String |
| ShippingCountry | String |
| ShippingPhone | String |