---
title: "Transaction Processing"
method: POST
path: "/transact.php"
tags: ["Transactions"]
---

# Transaction Processing

`POST /transact.php`

## Request

- Base URL: `https://sandbox.nmi.com/api`
- URL: `https://sandbox.nmi.com/api/transact.php`
- Auth: none required

<details>
<summary>Methodology</summary>

**Steps:**
1. The customer sends their payment information to the merchant's web site.
2. The merchant web site posts the payment data to the Payment Gateway.
3. The Payment Gateway responds immediately with the results of the transactions.
4. The merchant web site displays the appropriate message to the customer.

The communication method used to send messages to the Payment Gateway's server is the standard HTTP protocol over an SSL connection.

In the Payment API method, the communications with the cardholder (Steps 1 and 4) are developed completely by the merchant and therefore are not defined by the Payment Gateway. Step 1 should simply collect the payment data from the cardholder and Step 4 should display the appropriate transaction receipt or declined message.

In Step 2, transaction details should be delivered to the Payment Gateway using the POST method with the appropriate variables defined below posted along with the request.

In Step 3, the transaction responses are returned in the body of the HTTP response in a query string name/value format delimited by ampersands. For example: `variable1=value1&variable2=value2&variable3=value3`

### Customer Vault
The Customer Vault was designed specifically for businesses of any size to address concerns about handling customer payment information. Visa and MasterCard have instituted the Payment Card Industry (PCI) Data Security to protect cardholder data, wherever it resides, ensuring that members, merchants, and service providers maintain the highest information security standards.

These associations have also deemed that merchants will be held liable for any breach of cardholder data. This has become a major concern for merchants who handle credit card or electronic check payments. The Customer Vault is designed for these merchants who desire to avoid the tremendous costs and resources involved in becoming PCI compliant under these circumstances.

The Customer Vault does this by allowing merchants to transmit their payment information through a Secure Sockets Layer (SSL) connection for storage in our Level 1 PCI certified data facility. Once the customer record has been securely transmitted to the Customer Vault, the merchant can then initiate transactions remotely without having to access cardholder information directly. This process is accomplished without the merchant storing the customer's payment information in their local database or payment application.
</details>

<details>
<summary>Response Code Table</summary>

| Code  | Description                                                        |
|:------|:-------------------------------------------------------------------|
| 100   | Transaction was approved.                                          |
| 200   | Transaction was declined by processor.                             |
| 201   | Do not honor.                                                      |
| 202   | Insufficient funds.                                                |
| 203   | Over limit.                                                        |
| 204   | Transaction not allowed.                                           |
| 220   | Incorrect payment information.                                     |
| 221   | No such card issuer.                                               |
| 222   | No card number on file with issuer.                                |
| 223   | Expired card.                                                      |
| 224   | Invalid expiration date.                                           |
| 225   | Invalid card security code.                                        |
| 226   | Invalid PIN.                                                       |
| 240   | Call issuer for further information.                               |
| 250   | Pick up card.                                                      |
| 251   | Lost card.                                                         |
| 252   | Stolen card.                                                       |
| 253   | Fraudulent card.                                                   |
| 260   | Declined with further instructions available. (See response text)  |
| 261   | Declined-Stop all recurring payments.                              |
| 262   | Declined-Stop this recurring program.                              |
| 263   | Declined-Update cardholder data available.                         |
| 264   | Declined-Retry in a few days.                                      |
| 300   | Transaction was rejected by gateway.                               |
| 400   | Transaction error returned by processor.                           |
| 410   | Invalid merchant configuration.                                    |
| 411   | Merchant account is inactive.                                      |
| 420   | Communication error.                                               |
| 421   | Communication error with issuer.                                   |
| 430   | Duplicate transaction at processor.                                |
| 440   | Processor format error.                                            |
| 441   | Invalid transaction information.                                   |
| 460   | Processor feature not available.                                   |
| 461   | Unsupported card type.                                             |

</details>

## Request body `application/x-www-form-urlencoded`

- union
  - CreditCardSaleRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` string, required: The type of transaction to be processed. Must be `sale`
    - `partial_payments` 'settle_partial' | 'payment_in_full': `settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off. `payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated.
    - `partial_payment_id` string: Unique identifier returned when making the original transaction. This should only be used for secondary transactions.
    - `ccnumber` '4111111111111111' | '5431111111111111' | '6011000991300009' | '341111111111111' | '30205252489926' | '3541963594572595' | '6799990100000000019', required: Credit card number. <details> <summary>Allowed Card Numbers:</summary> | Card Type | Test Card Number | |:------------------|:---------------------| | Visa | 4111111111111111 | | MasterCard | 5431111111111111 | | Discover | 6011000991300009 | | American Express | 341111111111111 | | Diner's Club | 30205252489926 | | JCB | 3541963594572595 | | Maestro | 6799990100000000019 | </details>
    - `ccexp` string, required: Credit card expiration date. Format: `MMYY`
    - `cvv` string: The card security code. While this is not required, it is strongly recommended.
    - `amount` string, required: Total amount to be charged. Format: `x.xx`
    - `payment_token` string: The tokenized version of the customer's card or check information, generated by the [Payment Component](../docs/payment-component) (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) and usable only once. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology).
    - `transaction_session_id` string: A single use session ID used by Kount to link the transaction and Data Collector information together. * Should be generated every time a payment form is loaded by the cardholder. * Should be random/unpredictable (do not use sequential IDs). * Should not be reused within a 30 day period. This can be used with [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) or the Payment API when using the [Kount DDC with Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology). Format: `alphanumeric`
    - `applepay_payment_data` string: The encrypted token created when integration directly to the Apple Pay SDK.
    - `googlepay_payment_data` string: The encrypted token created when [integration directly to the Google Pay SDK](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#googlepay_variables).
    - `surcharge` string: Surcharge amount. Format: `x.xx`
    - `convenience_fee` string: Convenience fee amount. Format: `x.xx`
    - `misc_fee` string: Miscellaneous fee amount. Format: `x.xx`
    - `misc_fee_name` string: Custom miscellaneous fee name. Default: `Miscellaneous Fee`
    - `tip` number: The final tip amount, included in the transaction, associated with the purchase. Format: `x.xx`
    - `currency` string: The transaction currency. Format: `ISO 4217`
    - `processor_id` string: If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel).
    - `dup_seconds` integer: Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking.
    - `descriptor` string: Set payment descriptor on supported processors.
    - `descriptor_phone` string: Set payment descriptor phone on supported processors.
    - `descriptor_address` string: Set payment descriptor address on supported processors.
    - `descriptor_city` string: Set payment descriptor city on supported processors.
    - `descriptor_state` string: Set payment descriptor state on supported processors.
    - `descriptor_postal` string: Set payment descriptor postal code on supported processors.
    - `descriptor_country` string: Set payment descriptor country on supported processors.
    - `descriptor_mcc` string: Set payment descriptor mcc on supported processors.
    - `descriptor_merchant_id` string: Set payment descriptor merchant id on supported processors.
    - `descriptor_url` string: Set payment descriptor url on supported processors.
    - `billing_method` 'initial_recurring' | 'recurring' | 'installment': Recurring or installment classification for the processor. - `initial_recurring`: First transaction in a recurring sequence only. - `recurring`: Later charges in that sequence. - `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors. Which values apply depends on the processor.
    - `billing_number` integer: Specify installment billing number, on supported processors. For use when `billing_method` is set to "installment".
    - `billing_total` string: Specify installment billing total on supported processors. For use when `billing_method` is set to "installment".
    - `order_template` string: Order template ID.
    - `order_description` string: Order description.
    - `orderid` string: **Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.
    - `ipaddress` string: IP address of cardholder, this field is recommended. Format: `xxx.xxx.xxx.xxx`
    - `first_name` string: Cardholder's first name.
    - `last_name` string: Cardholder's last name
    - `company` string: Cardholder's company
    - `address1` string: Card billing address
    - `address2` string: Card billing address, line 2
    - `city` string: Card billing city
    - `state` string: Card billing state. Format: `CC`
    - `zip` string: Card billing zip code
    - `country` string: Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `phone` string: Billing phone number
    - `fax` string: Billing fax number
    - `email` string, email: Billing email address
    - `drivers_license_number` string: Driver's license number.
    - `drivers_license_dob` string: Driver's license date of birth.
    - `drivers_license_state` string: The state that issued the customer's driver's license.
    - `shipping_firstname` string: Shipping first name
    - `shipping_lastname` string: Shipping last name
    - `shipping_company` string: Shipping company
    - `shipping_address1` string: Shipping address
    - `shipping_address2` string: Shipping address, line 2
    - `shipping_city` string: Shipping city
    - `shipping_state` string: Shipping state. Format: `CC`
    - `shipping_zip` string: Shipping zip code
    - `shipping_country` string: **Level III - Order Field:** Shipping country (e.g. US). Format: `CC` - ISO 3166-1 alpha-2
    - `shipping_email` string, email: Shipping email address
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
    - `customer_receipt` 'true' | 'false': If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `cardholder_auth` 'verified' | 'attempted': Set 3D Secure condition. Value used to determine E-commerce indicator (ECI). **Required for 3D Secure transactions**
    - `cavv` string: Cardholder authentication verification value. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `xid` string: Cardholder authentication transaction id. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `three_ds_version` '2.0.0' | '2.2.0': 3DSecure version. **Required for 3D Secure transactions**
    - `directory_server_id` string: Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication. Format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`
    - `source_transaction_id` string: Specifies a payment gateway transaction id in order to associate payment information with a Subscription or Customer Vault record. Must be set with a 'recurring' or 'customer_vault' action.
    - `pinless_debit_override` string: Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only.
    - `recurring` 'add_subscription': **Recurring Field:** Recurring action to be processed.
    - `plan_id` string: **Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful. Required when **recurring** variable is set to `add_subscription`
    - `plan_payments` integer: **Recurring Field:** The number of payments before the recurring plan is complete. Note: Use '0' for until canceled Required when **recurring** variable is set to `add_subscription`
    - `plan_amount` number: **Recurring Field:** The plan amount to be charged each billing cycle. Format: `x.xx` Required when **recurring** variable is set to `add_subscription`
    - `month_frequency` integer: **Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `day_of_month` integer: **Recurring Field:** The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'. For months without 29, 30, or 31 days, the charge will be on the last day Required when **recurring** variable is set to `add_subscription`
    - `day_frequency` integer: **Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `start_date` string, date: **Recurring Field:** The first day that the customer will be charged. Format: `YYYYMMDD` Required when **recurring** variable is set to `add_subscription`
    - `customer_vault` 'add_customer' | 'update_customer': Associate payment information with a Customer Vault record if the transaction is successful.
    - `customer_vault_id` string: Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.
    - `initiated_by` 'customer' | 'merchant': **Stored Credentials (CIT/MIT):** Who initiated the transaction.
    - `initial_transaction_id` string: **Stored Credentials (CIT/MIT):** Original payment gateway transaction id.
    - `stored_credential_indicator` 'stored' | 'used': **Stored Credentials (CIT/MIT):** The indicator of the stored credential. Use **'stored'** when processing the initial transaction in which you are storing a customer's payment details (customer credentials) in the Customer Vault or other third-party payment storage system. Use **'used'** when processing a subsequent or follow-up transaction using the customer payment details (customer credentials) you have already stored to the Customer Vault or third-party payment storage method.
    - `shipping` number: **Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `tax` number: **Level II/III - Order Field:** The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`. Format: `x.xx`
    - `ponumber` string: **Level II/III - Order Field:** Purchase order number
    - `shipping_postal` string: **Level III - Order Field:** Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the 'ship_from_postal' if the customer is present and takes immediate possession of the goods.
    - `ship_from_postal` string: **Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.
    - `summary_commodity_code` string: **Level III - Order Field:** 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: **Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`. Format: `x.xx`
    - `discount_amount` number: **Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`. Format: `x.xx`
    - `national_tax_amount` number: **Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_amount` number: **Level III - Order Field:** Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_id` string: **Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: **Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`. Format: `x.xx`
    - `vat_tax_rate` number: **Level III - Order Field:** Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00. Default - `0.00`. Format: `x.xx`
    - `vat_invoice_reference_number` string: **Level III - Order Field:** Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` string: **Level III - Order Field:** Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` string: **Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `order_date` string, date: **Level III - Order Field:** Purchase order date, defaults to the date of the transaction. Format: `YYMMDD`
    - `item_product_code_1` string: **Level III - Line Item:** Merchant defined description code of the item being purchased. *Up to 99 sets of item_* fields are allowed.*
    - `item_description_1` string: **Level III - Line Item:** Description of the item(s) being supplied.
    - `item_commodity_code_1` string: **Level III - Line Item:** International description code of the individual good or service being supplied. The acquirer or processor will provide a list of current codes.
    - `item_unit_of_measure_1` string: **Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.
    - `item_unit_cost_1` number: **Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.
    - `item_quantity_1` integer: **Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.
    - `item_total_amount_1` number: **Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.
    - `item_tax_amount_1` number: **Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`. Format: `x.xx`
    - `item_tax_rate_1` number: **Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`. Format: `x.xx`
    - `item_discount_amount_1` number: **Level III - Line Item:** Discount amount which can have been applied by the merchant on the sale of the specific item. Amount should not be included in 'total_amount_#'.
    - `item_discount_rate_1` number: **Level III - Line Item:** Discount rate for the line item. Default - `0.00`. Format: `x.xx`
    - `item_tax_type_1` string: **Level III - Line Item:** Type of value-added taxes that are being used.
    - `item_alternate_tax_id_1` string: **Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.
    - `payment_facilitator_id` string: **Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number
    - `submerchant_id` string: **Payment Facilitator:** Sub-merchant Account ID
    - `submerchant_name` string: **Payment Facilitator:** Sub-merchant's Name
    - `submerchant_address` string: **Payment Facilitator:** Sub-merchant's Address
    - `submerchant_city` string: **Payment Facilitator:** Sub-merchant's City
    - `submerchant_state` string: **Payment Facilitator:** Sub-merchant's State
    - `submerchant_postal` string: **Payment Facilitator:** Sub-merchant's Zip/Postal Code
    - `submerchant_country` string: **Payment Facilitator:** Sub-merchant's Country
    - `submerchant_phone` string: **Payment Facilitator:** Sub-merchant's Phone Number
    - `submerchant_email` string, email: **Payment Facilitator:** Sub-merchant's Email Address
    - `industry` 'ecommerce' | 'moto' | 'retail' | 'restaurant' | 'lodging': The industry parameter is supported across multiple transaction types. Its purpose is to identify the merchant industry type for processing
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
    - `network_tokenize` '0' | '1': Overrides the Customer Token Vault settings and tokenizes the transaction if eligible. Default - `0`.
  - CreditCardAuthorizeRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'auth', required: The type of transaction to be processed.
    - `ccnumber` '4111111111111111' | '5431111111111111' | '6011000991300009' | '341111111111111' | '30205252489926' | '3541963594572595' | '6799990100000000019', required: Credit card number. <details> <summary>Allowed Card Numbers:</summary> | Card Type | Test Card Number | |:------------------|:---------------------| | Visa | 4111111111111111 | | MasterCard | 5431111111111111 | | Discover | 6011000991300009 | | American Express | 341111111111111 | | Diner's Club | 30205252489926 | | JCB | 3541963594572595 | | Maestro | 6799990100000000019 | </details>
    - `ccexp` string, required: Credit card expiration date. Format: `MMYY`
    - `cvv` string: The card security code. While this is not required, it is strongly recommended.
    - `amount` string, required: Total amount to be charged. Format: `x.xx`
    - `payment_token` string: The tokenized version of the customer's card or check information, generated by the [Payment Component](../docs/payment-component) (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) and usable only once. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology).
    - `transaction_session_id` string: A single use session ID used by Kount to link the transaction and Data Collector information together. * Should be generated every time a payment form is loaded by the cardholder. * Should be random/unpredictable (do not use sequential IDs). * Should not be reused within a 30 day period. This can be used with [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) or the Payment API when using the [Kount DDC with Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology). Format: `alphanumeric`
    - `applepay_payment_data` string: The encrypted token created when integration directly to the Apple Pay SDK.
    - `googlepay_payment_data` string: The encrypted token created when [integration directly to the Google Pay SDK](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#googlepay_variables).
    - `surcharge` string: Surcharge amount. Format: `x.xx`
    - `convenience_fee` string: Convenience fee amount. Format: `x.xx`
    - `misc_fee` string: Miscellaneous fee amount. Format: `x.xx`
    - `misc_fee_name` string: Custom miscellaneous fee name. Default: `Miscellaneous Fee`
    - `tip` number: The final tip amount, included in the transaction, associated with the purchase. Format: `x.xx`
    - `currency` string: The transaction currency. Format: `ISO 4217`
    - `processor_id` string: If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel).
    - `dup_seconds` integer: Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking.
    - `descriptor` string: Set payment descriptor on supported processors.
    - `descriptor_phone` string: Set payment descriptor phone on supported processors.
    - `descriptor_address` string: Set payment descriptor address on supported processors.
    - `descriptor_city` string: Set payment descriptor city on supported processors.
    - `descriptor_state` string: Set payment descriptor state on supported processors.
    - `descriptor_postal` string: Set payment descriptor postal code on supported processors.
    - `descriptor_country` string: Set payment descriptor country on supported processors.
    - `descriptor_mcc` string: Set payment descriptor mcc on supported processors.
    - `descriptor_merchant_id` string: Set payment descriptor merchant id on supported processors.
    - `descriptor_url` string: Set payment descriptor url on supported processors.
    - `billing_method` 'initial_recurring' | 'recurring' | 'installment': Recurring or installment classification for the processor. - `initial_recurring`: First transaction in a recurring sequence only. - `recurring`: Later charges in that sequence. - `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors. Which values apply depends on the processor.
    - `billing_number` integer: Specify installment billing number, on supported processors. For use when `billing_method` is set to "installment".
    - `billing_total` string: Specify installment billing total on supported processors. For use when `billing_method` is set to "installment".
    - `order_template` string: Order template ID.
    - `order_description` string: Order description.
    - `orderid` string: **Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.
    - `ipaddress` string: IP address of cardholder, this field is recommended. Format: `xxx.xxx.xxx.xxx`
    - `first_name` string: Cardholder's first name.
    - `last_name` string: Cardholder's last name
    - `company` string: Cardholder's company
    - `address1` string: Card billing address
    - `address2` string: Card billing address, line 2
    - `city` string: Card billing city
    - `state` string: Card billing state. Format: `CC`
    - `zip` string: Card billing zip code
    - `country` string: Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `phone` string: Billing phone number
    - `fax` string: Billing fax number
    - `email` string, email: Billing email address
    - `drivers_license_number` string: Driver's license number.
    - `drivers_license_dob` string: Driver's license date of birth.
    - `drivers_license_state` string: The state that issued the customer's driver's license.
    - `shipping_firstname` string: Shipping first name
    - `shipping_lastname` string: Shipping last name
    - `shipping_company` string: Shipping company
    - `shipping_address1` string: Shipping address
    - `shipping_address2` string: Shipping address, line 2
    - `shipping_city` string: Shipping city
    - `shipping_state` string: Shipping state. Format: `CC`
    - `shipping_zip` string: Shipping zip code
    - `shipping_country` string: **Level III - Order Field:** Shipping country (e.g. US). Format: `CC` - ISO 3166-1 alpha-2
    - `shipping_email` string, email: Shipping email address
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
    - `customer_receipt` 'true' | 'false': If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `cardholder_auth` 'verified' | 'attempted': Set 3D Secure condition. Value used to determine E-commerce indicator (ECI). **Required for 3D Secure transactions**
    - `cavv` string: Cardholder authentication verification value. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `xid` string: Cardholder authentication transaction id. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `three_ds_version` '2.0.0' | '2.2.0': 3DSecure version. **Required for 3D Secure transactions**
    - `directory_server_id` string: Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication. Format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`
    - `source_transaction_id` string: Specifies a payment gateway transaction id in order to associate payment information with a Subscription or Customer Vault record. Must be set with a 'recurring' or 'customer_vault' action.
    - `pinless_debit_override` string: Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only.
    - `recurring` 'add_subscription': **Recurring Field:** Recurring action to be processed.
    - `plan_id` string: **Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful. Required when **recurring** variable is set to `add_subscription`
    - `plan_payments` integer: **Recurring Field:** The number of payments before the recurring plan is complete. Note: Use '0' for until canceled Required when **recurring** variable is set to `add_subscription`
    - `plan_amount` number: **Recurring Field:** The plan amount to be charged each billing cycle. Format: `x.xx` Required when **recurring** variable is set to `add_subscription`
    - `month_frequency` integer: **Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `day_of_month` integer: **Recurring Field:** The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'. For months without 29, 30, or 31 days, the charge will be on the last day Required when **recurring** variable is set to `add_subscription`
    - `day_frequency` integer: **Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `start_date` string, date: **Recurring Field:** The first day that the customer will be charged. Format: `YYYYMMDD` Required when **recurring** variable is set to `add_subscription`
    - `customer_vault` 'add_customer' | 'update_customer': Associate payment information with a Customer Vault record if the transaction is successful.
    - `customer_vault_id` string: Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.
    - `initiated_by` 'customer' | 'merchant': **Stored Credentials (CIT/MIT):** Who initiated the transaction.
    - `initial_transaction_id` string: **Stored Credentials (CIT/MIT):** Original payment gateway transaction id.
    - `stored_credential_indicator` 'stored' | 'used': **Stored Credentials (CIT/MIT):** The indicator of the stored credential. Use **'stored'** when processing the initial transaction in which you are storing a customer's payment details (customer credentials) in the Customer Vault or other third-party payment storage system. Use **'used'** when processing a subsequent or follow-up transaction using the customer payment details (customer credentials) you have already stored to the Customer Vault or third-party payment storage method.
    - `shipping` number: **Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `tax` number: **Level II/III - Order Field:** The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`. Format: `x.xx`
    - `ponumber` string: **Level II/III - Order Field:** Purchase order number
    - `shipping_postal` string: **Level III - Order Field:** Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the 'ship_from_postal' if the customer is present and takes immediate possession of the goods.
    - `ship_from_postal` string: **Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.
    - `summary_commodity_code` string: **Level III - Order Field:** 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: **Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`. Format: `x.xx`
    - `discount_amount` number: **Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`. Format: `x.xx`
    - `national_tax_amount` number: **Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_amount` number: **Level III - Order Field:** Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_id` string: **Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: **Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`. Format: `x.xx`
    - `vat_tax_rate` number: **Level III - Order Field:** Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00. Default - `0.00`. Format: `x.xx`
    - `vat_invoice_reference_number` string: **Level III - Order Field:** Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` string: **Level III - Order Field:** Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` string: **Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `order_date` string, date: **Level III - Order Field:** Purchase order date, defaults to the date of the transaction. Format: `YYMMDD`
    - `item_product_code_1` string: **Level III - Line Item:** Merchant defined description code of the item being purchased. *Up to 99 sets of item_* fields are allowed.*
    - `item_description_1` string: **Level III - Line Item:** Description of the item(s) being supplied.
    - `item_commodity_code_1` string: **Level III - Line Item:** International description code of the individual good or service being supplied. The acquirer or processor will provide a list of current codes.
    - `item_unit_of_measure_1` string: **Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.
    - `item_unit_cost_1` number: **Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.
    - `item_quantity_1` integer: **Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.
    - `item_total_amount_1` number: **Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.
    - `item_tax_amount_1` number: **Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`. Format: `x.xx`
    - `item_tax_rate_1` number: **Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`. Format: `x.xx`
    - `item_discount_amount_1` number: **Level III - Line Item:** Discount amount which can have been applied by the merchant on the sale of the specific item. Amount should not be included in 'total_amount_#'.
    - `item_discount_rate_1` number: **Level III - Line Item:** Discount rate for the line item. Default - `0.00`. Format: `x.xx`
    - `item_tax_type_1` string: **Level III - Line Item:** Type of value-added taxes that are being used.
    - `item_alternate_tax_id_1` string: **Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.
    - `payment_facilitator_id` string: **Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number
    - `submerchant_id` string: **Payment Facilitator:** Sub-merchant Account ID
    - `submerchant_name` string: **Payment Facilitator:** Sub-merchant's Name
    - `submerchant_address` string: **Payment Facilitator:** Sub-merchant's Address
    - `submerchant_city` string: **Payment Facilitator:** Sub-merchant's City
    - `submerchant_state` string: **Payment Facilitator:** Sub-merchant's State
    - `submerchant_postal` string: **Payment Facilitator:** Sub-merchant's Zip/Postal Code
    - `submerchant_country` string: **Payment Facilitator:** Sub-merchant's Country
    - `submerchant_phone` string: **Payment Facilitator:** Sub-merchant's Phone Number
    - `submerchant_email` string, email: **Payment Facilitator:** Sub-merchant's Email Address
    - `industry` 'ecommerce' | 'moto' | 'retail' | 'restaurant' | 'lodging': The industry parameter is supported across multiple transaction types. Its purpose is to identify the merchant industry type for processing
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
    - `network_tokenize` '0' | '1': Overrides the Customer Token Vault settings and tokenizes the transaction if eligible. Default - `0`.
  - CreditCardCaptureRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'capture', required: The type of transaction to be processed.
    - `transactionid` string, required: Original payment gateway transaction id.
    - `amount` string, required: Total amount to be settled. This amount must be equal to or less than the original authorized amount. Format: `x.xx`
    - `tracking_number` string: Shipping tracking number.
    - `shipping_carrier` 'ups' | 'fedex' | 'dhl' | 'usps': Shipping carrier.
    - `orderid` string: Order ID.
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
  - CreditCardValidateRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'validate', required: The type of transaction to be processed.
    - `ccnumber` '4111111111111111' | '5431111111111111' | '6011000991300009' | '341111111111111' | '30205252489926' | '3541963594572595' | '6799990100000000019', required: Credit card number. <details> <summary>Allowed Card Numbers:</summary> | Card Type | Test Card Number | |:------------------|:---------------------| | Visa | 4111111111111111 | | MasterCard | 5431111111111111 | | Discover | 6011000991300009 | | American Express | 341111111111111 | | Diner's Club | 30205252489926 | | JCB | 3541963594572595 | | Maestro | 6799990100000000019 | </details>
    - `ccexp` string, required: Credit card expiration date. Format: `MMYY`
    - `cvv` string: The card security code. While this is not required, it is strongly recommended.
    - `payment_token` string: The tokenized version of the customer's card or check information, generated by the [Payment Component](../docs/payment-component) (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) and usable only once. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology).
    - `transaction_session_id` string: A single use session ID used by Kount to link the transaction and Data Collector information together. * Should be generated every time a payment form is loaded by the cardholder. * Should be random/unpredictable (do not use sequential IDs). * Should not be reused within a 30 day period. This can be used with [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) or the Payment API when using the [Kount DDC with Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology). Format: `alphanumeric`
    - `applepay_payment_data` string: The encrypted token created when integration directly to the Apple Pay SDK.
    - `googlepay_payment_data` string: The encrypted token created when [integration directly to the Google Pay SDK](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#googlepay_variables).
    - `surcharge` string: Surcharge amount. Format: `x.xx`
    - `convenience_fee` string: Convenience fee amount. Format: `x.xx`
    - `misc_fee` string: Miscellaneous fee amount. Format: `x.xx`
    - `misc_fee_name` string: Custom miscellaneous fee name. Default: `Miscellaneous Fee`
    - `tip` number: The final tip amount, included in the transaction, associated with the purchase. Format: `x.xx`
    - `currency` string: The transaction currency. Format: `ISO 4217`
    - `processor_id` string: If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel).
    - `dup_seconds` integer: Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking.
    - `descriptor` string: Set payment descriptor on supported processors.
    - `descriptor_phone` string: Set payment descriptor phone on supported processors.
    - `descriptor_address` string: Set payment descriptor address on supported processors.
    - `descriptor_city` string: Set payment descriptor city on supported processors.
    - `descriptor_state` string: Set payment descriptor state on supported processors.
    - `descriptor_postal` string: Set payment descriptor postal code on supported processors.
    - `descriptor_country` string: Set payment descriptor country on supported processors.
    - `descriptor_mcc` string: Set payment descriptor mcc on supported processors.
    - `descriptor_merchant_id` string: Set payment descriptor merchant id on supported processors.
    - `descriptor_url` string: Set payment descriptor url on supported processors.
    - `billing_method` 'initial_recurring' | 'recurring' | 'installment': Recurring or installment classification for the processor. - `initial_recurring`: First transaction in a recurring sequence only. - `recurring`: Later charges in that sequence. - `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors. Which values apply depends on the processor.
    - `billing_number` integer: Specify installment billing number, on supported processors. For use when `billing_method` is set to "installment".
    - `billing_total` string: Specify installment billing total on supported processors. For use when `billing_method` is set to "installment".
    - `order_template` string: Order template ID.
    - `order_description` string: Order description.
    - `orderid` string: **Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.
    - `ipaddress` string: IP address of cardholder, this field is recommended. Format: `xxx.xxx.xxx.xxx`
    - `first_name` string: Cardholder's first name.
    - `last_name` string: Cardholder's last name
    - `company` string: Cardholder's company
    - `address1` string: Card billing address
    - `address2` string: Card billing address, line 2
    - `city` string: Card billing city
    - `state` string: Card billing state. Format: `CC`
    - `zip` string: Card billing zip code
    - `country` string: Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `phone` string: Billing phone number
    - `fax` string: Billing fax number
    - `email` string, email: Billing email address
    - `drivers_license_number` string: Driver's license number.
    - `drivers_license_dob` string: Driver's license date of birth.
    - `drivers_license_state` string: The state that issued the customer's driver's license.
    - `shipping_firstname` string: Shipping first name
    - `shipping_lastname` string: Shipping last name
    - `shipping_company` string: Shipping company
    - `shipping_address1` string: Shipping address
    - `shipping_address2` string: Shipping address, line 2
    - `shipping_city` string: Shipping city
    - `shipping_state` string: Shipping state. Format: `CC`
    - `shipping_zip` string: Shipping zip code
    - `shipping_country` string: **Level III - Order Field:** Shipping country (e.g. US). Format: `CC` - ISO 3166-1 alpha-2
    - `shipping_email` string, email: Shipping email address
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
    - `customer_receipt` 'true' | 'false': If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `cardholder_auth` 'verified' | 'attempted': Set 3D Secure condition. Value used to determine E-commerce indicator (ECI). **Required for 3D Secure transactions**
    - `cavv` string: Cardholder authentication verification value. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `xid` string: Cardholder authentication transaction id. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `three_ds_version` '2.0.0' | '2.2.0': 3DSecure version. **Required for 3D Secure transactions**
    - `directory_server_id` string: Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication. Format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`
    - `source_transaction_id` string: Specifies a payment gateway transaction id in order to associate payment information with a Subscription or Customer Vault record. Must be set with a 'recurring' or 'customer_vault' action.
    - `pinless_debit_override` string: Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only.
    - `recurring` 'add_subscription': **Recurring Field:** Recurring action to be processed.
    - `plan_id` string: **Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful. Required when **recurring** variable is set to `add_subscription`
    - `plan_payments` integer: **Recurring Field:** The number of payments before the recurring plan is complete. Note: Use '0' for until canceled Required when **recurring** variable is set to `add_subscription`
    - `plan_amount` number: **Recurring Field:** The plan amount to be charged each billing cycle. Format: `x.xx` Required when **recurring** variable is set to `add_subscription`
    - `month_frequency` integer: **Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `day_of_month` integer: **Recurring Field:** The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'. For months without 29, 30, or 31 days, the charge will be on the last day Required when **recurring** variable is set to `add_subscription`
    - `day_frequency` integer: **Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `start_date` string, date: **Recurring Field:** The first day that the customer will be charged. Format: `YYYYMMDD` Required when **recurring** variable is set to `add_subscription`
    - `customer_vault` 'add_customer' | 'update_customer': Associate payment information with a Customer Vault record if the transaction is successful.
    - `customer_vault_id` string: Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.
    - `initiated_by` 'customer' | 'merchant': **Stored Credentials (CIT/MIT):** Who initiated the transaction.
    - `initial_transaction_id` string: **Stored Credentials (CIT/MIT):** Original payment gateway transaction id.
    - `stored_credential_indicator` 'stored' | 'used': **Stored Credentials (CIT/MIT):** The indicator of the stored credential. Use **'stored'** when processing the initial transaction in which you are storing a customer's payment details (customer credentials) in the Customer Vault or other third-party payment storage system. Use **'used'** when processing a subsequent or follow-up transaction using the customer payment details (customer credentials) you have already stored to the Customer Vault or third-party payment storage method.
    - `shipping` number: **Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `tax` number: **Level II/III - Order Field:** The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`. Format: `x.xx`
    - `ponumber` string: **Level II/III - Order Field:** Purchase order number
    - `shipping_postal` string: **Level III - Order Field:** Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the 'ship_from_postal' if the customer is present and takes immediate possession of the goods.
    - `ship_from_postal` string: **Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.
    - `summary_commodity_code` string: **Level III - Order Field:** 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: **Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`. Format: `x.xx`
    - `discount_amount` number: **Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`. Format: `x.xx`
    - `national_tax_amount` number: **Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_amount` number: **Level III - Order Field:** Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_id` string: **Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: **Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`. Format: `x.xx`
    - `vat_tax_rate` number: **Level III - Order Field:** Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00. Default - `0.00`. Format: `x.xx`
    - `vat_invoice_reference_number` string: **Level III - Order Field:** Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` string: **Level III - Order Field:** Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` string: **Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `order_date` string, date: **Level III - Order Field:** Purchase order date, defaults to the date of the transaction. Format: `YYMMDD`
    - `item_product_code_1` string: **Level III - Line Item:** Merchant defined description code of the item being purchased. *Up to 99 sets of item_* fields are allowed.*
    - `item_description_1` string: **Level III - Line Item:** Description of the item(s) being supplied.
    - `item_commodity_code_1` string: **Level III - Line Item:** International description code of the individual good or service being supplied. The acquirer or processor will provide a list of current codes.
    - `item_unit_of_measure_1` string: **Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.
    - `item_unit_cost_1` number: **Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.
    - `item_quantity_1` integer: **Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.
    - `item_total_amount_1` number: **Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.
    - `item_tax_amount_1` number: **Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`. Format: `x.xx`
    - `item_tax_rate_1` number: **Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`. Format: `x.xx`
    - `item_discount_amount_1` number: **Level III - Line Item:** Discount amount which can have been applied by the merchant on the sale of the specific item. Amount should not be included in 'total_amount_#'.
    - `item_discount_rate_1` number: **Level III - Line Item:** Discount rate for the line item. Default - `0.00`. Format: `x.xx`
    - `item_tax_type_1` string: **Level III - Line Item:** Type of value-added taxes that are being used.
    - `item_alternate_tax_id_1` string: **Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.
    - `payment_facilitator_id` string: **Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number
    - `submerchant_id` string: **Payment Facilitator:** Sub-merchant Account ID
    - `submerchant_name` string: **Payment Facilitator:** Sub-merchant's Name
    - `submerchant_address` string: **Payment Facilitator:** Sub-merchant's Address
    - `submerchant_city` string: **Payment Facilitator:** Sub-merchant's City
    - `submerchant_state` string: **Payment Facilitator:** Sub-merchant's State
    - `submerchant_postal` string: **Payment Facilitator:** Sub-merchant's Zip/Postal Code
    - `submerchant_country` string: **Payment Facilitator:** Sub-merchant's Country
    - `submerchant_phone` string: **Payment Facilitator:** Sub-merchant's Phone Number
    - `submerchant_email` string, email: **Payment Facilitator:** Sub-merchant's Email Address
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
  - CreditCardCreditRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'credit', required: The type of transaction to be processed.
    - `ccnumber` '4111111111111111' | '5431111111111111' | '6011000991300009' | '341111111111111' | '30205252489926' | '3541963594572595' | '6799990100000000019', required: Credit card number. <details> <summary>Allowed Card Numbers:</summary> | Card Type | Test Card Number | |:------------------|:---------------------| | Visa | 4111111111111111 | | MasterCard | 5431111111111111 | | Discover | 6011000991300009 | | American Express | 341111111111111 | | Diner's Club | 30205252489926 | | JCB | 3541963594572595 | | Maestro | 6799990100000000019 | </details>
    - `ccexp` string, required: Credit card expiration date. Format: `MMYY`
    - `cvv` string: The card security code. While this is not required, it is strongly recommended.
    - `amount` string, required: Total amount to be charged. Format: `x.xx`
    - `payment_token` string: The tokenized version of the customer's card or check information, generated by the [Payment Component](../docs/payment-component) (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) and usable only once. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology).
    - `transaction_session_id` string: A single use session ID used by Kount to link the transaction and Data Collector information together. * Should be generated every time a payment form is loaded by the cardholder. * Should be random/unpredictable (do not use sequential IDs). * Should not be reused within a 30 day period. This can be used with [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) or the Payment API when using the [Kount DDC with Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology). Format: `alphanumeric`
    - `applepay_payment_data` string: The encrypted token created when integration directly to the Apple Pay SDK.
    - `googlepay_payment_data` string: The encrypted token created when [integration directly to the Google Pay SDK](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#googlepay_variables).
    - `surcharge` string: Surcharge amount. Format: `x.xx`
    - `convenience_fee` string: Convenience fee amount. Format: `x.xx`
    - `misc_fee` string: Miscellaneous fee amount. Format: `x.xx`
    - `misc_fee_name` string: Custom miscellaneous fee name. Default: `Miscellaneous Fee`
    - `tip` number: The final tip amount, included in the transaction, associated with the purchase. Format: `x.xx`
    - `currency` string: The transaction currency. Format: `ISO 4217`
    - `processor_id` string: If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel).
    - `dup_seconds` integer: Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking.
    - `descriptor` string: Set payment descriptor on supported processors.
    - `descriptor_phone` string: Set payment descriptor phone on supported processors.
    - `descriptor_address` string: Set payment descriptor address on supported processors.
    - `descriptor_city` string: Set payment descriptor city on supported processors.
    - `descriptor_state` string: Set payment descriptor state on supported processors.
    - `descriptor_postal` string: Set payment descriptor postal code on supported processors.
    - `descriptor_country` string: Set payment descriptor country on supported processors.
    - `descriptor_mcc` string: Set payment descriptor mcc on supported processors.
    - `descriptor_merchant_id` string: Set payment descriptor merchant id on supported processors.
    - `descriptor_url` string: Set payment descriptor url on supported processors.
    - `billing_method` 'initial_recurring' | 'recurring' | 'installment': Recurring or installment classification for the processor. - `initial_recurring`: First transaction in a recurring sequence only. - `recurring`: Later charges in that sequence. - `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors. Which values apply depends on the processor.
    - `billing_number` integer: Specify installment billing number, on supported processors. For use when `billing_method` is set to "installment".
    - `billing_total` string: Specify installment billing total on supported processors. For use when `billing_method` is set to "installment".
    - `order_template` string: Order template ID.
    - `order_description` string: Order description.
    - `orderid` string: **Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.
    - `ipaddress` string: IP address of cardholder, this field is recommended. Format: `xxx.xxx.xxx.xxx`
    - `first_name` string: Cardholder's first name.
    - `last_name` string: Cardholder's last name
    - `company` string: Cardholder's company
    - `address1` string: Card billing address
    - `address2` string: Card billing address, line 2
    - `city` string: Card billing city
    - `state` string: Card billing state. Format: `CC`
    - `zip` string: Card billing zip code
    - `country` string: Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `phone` string: Billing phone number
    - `fax` string: Billing fax number
    - `email` string, email: Billing email address
    - `drivers_license_number` string: Driver's license number.
    - `drivers_license_dob` string: Driver's license date of birth.
    - `drivers_license_state` string: The state that issued the customer's driver's license.
    - `shipping_firstname` string: Shipping first name
    - `shipping_lastname` string: Shipping last name
    - `shipping_company` string: Shipping company
    - `shipping_address1` string: Shipping address
    - `shipping_address2` string: Shipping address, line 2
    - `shipping_city` string: Shipping city
    - `shipping_state` string: Shipping state. Format: `CC`
    - `shipping_zip` string: Shipping zip code
    - `shipping_country` string: **Level III - Order Field:** Shipping country (e.g. US). Format: `CC` - ISO 3166-1 alpha-2
    - `shipping_email` string, email: Shipping email address
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
    - `customer_receipt` 'true' | 'false': If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `cardholder_auth` 'verified' | 'attempted': Set 3D Secure condition. Value used to determine E-commerce indicator (ECI). **Required for 3D Secure transactions**
    - `cavv` string: Cardholder authentication verification value. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `xid` string: Cardholder authentication transaction id. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `three_ds_version` '2.0.0' | '2.2.0': 3DSecure version. **Required for 3D Secure transactions**
    - `directory_server_id` string: Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication. Format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`
    - `source_transaction_id` string: Specifies a payment gateway transaction id in order to associate payment information with a Subscription or Customer Vault record. Must be set with a 'recurring' or 'customer_vault' action.
    - `pinless_debit_override` string: Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only.
    - `recurring` 'add_subscription': **Recurring Field:** Recurring action to be processed.
    - `plan_id` string: **Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful. Required when **recurring** variable is set to `add_subscription`
    - `plan_payments` integer: **Recurring Field:** The number of payments before the recurring plan is complete. Note: Use '0' for until canceled Required when **recurring** variable is set to `add_subscription`
    - `plan_amount` number: **Recurring Field:** The plan amount to be charged each billing cycle. Format: `x.xx` Required when **recurring** variable is set to `add_subscription`
    - `month_frequency` integer: **Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `day_of_month` integer: **Recurring Field:** The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'. For months without 29, 30, or 31 days, the charge will be on the last day Required when **recurring** variable is set to `add_subscription`
    - `day_frequency` integer: **Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `start_date` string, date: **Recurring Field:** The first day that the customer will be charged. Format: `YYYYMMDD` Required when **recurring** variable is set to `add_subscription`
    - `customer_vault` 'add_customer' | 'update_customer': Associate payment information with a Customer Vault record if the transaction is successful.
    - `customer_vault_id` string: Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.
    - `initiated_by` 'customer' | 'merchant': **Stored Credentials (CIT/MIT):** Who initiated the transaction.
    - `initial_transaction_id` string: **Stored Credentials (CIT/MIT):** Original payment gateway transaction id.
    - `stored_credential_indicator` 'stored' | 'used': **Stored Credentials (CIT/MIT):** The indicator of the stored credential. Use **'stored'** when processing the initial transaction in which you are storing a customer's payment details (customer credentials) in the Customer Vault or other third-party payment storage system. Use **'used'** when processing a subsequent or follow-up transaction using the customer payment details (customer credentials) you have already stored to the Customer Vault or third-party payment storage method.
    - `shipping` number: **Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `tax` number: **Level II/III - Order Field:** The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`. Format: `x.xx`
    - `ponumber` string: **Level II/III - Order Field:** Purchase order number
    - `shipping_postal` string: **Level III - Order Field:** Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the 'ship_from_postal' if the customer is present and takes immediate possession of the goods.
    - `ship_from_postal` string: **Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.
    - `summary_commodity_code` string: **Level III - Order Field:** 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: **Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`. Format: `x.xx`
    - `discount_amount` number: **Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`. Format: `x.xx`
    - `national_tax_amount` number: **Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_amount` number: **Level III - Order Field:** Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_id` string: **Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: **Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`. Format: `x.xx`
    - `vat_tax_rate` number: **Level III - Order Field:** Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00. Default - `0.00`. Format: `x.xx`
    - `vat_invoice_reference_number` string: **Level III - Order Field:** Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` string: **Level III - Order Field:** Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` string: **Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `order_date` string, date: **Level III - Order Field:** Purchase order date, defaults to the date of the transaction. Format: `YYMMDD`
    - `item_product_code_1` string: **Level III - Line Item:** Merchant defined description code of the item being purchased. *Up to 99 sets of item_* fields are allowed.*
    - `item_description_1` string: **Level III - Line Item:** Description of the item(s) being supplied.
    - `item_commodity_code_1` string: **Level III - Line Item:** International description code of the individual good or service being supplied. The acquirer or processor will provide a list of current codes.
    - `item_unit_of_measure_1` string: **Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.
    - `item_unit_cost_1` number: **Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.
    - `item_quantity_1` integer: **Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.
    - `item_total_amount_1` number: **Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.
    - `item_tax_amount_1` number: **Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`. Format: `x.xx`
    - `item_tax_rate_1` number: **Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`. Format: `x.xx`
    - `item_discount_amount_1` number: **Level III - Line Item:** Discount amount which can have been applied by the merchant on the sale of the specific item. Amount should not be included in 'total_amount_#'.
    - `item_discount_rate_1` number: **Level III - Line Item:** Discount rate for the line item. Default - `0.00`. Format: `x.xx`
    - `item_tax_type_1` string: **Level III - Line Item:** Type of value-added taxes that are being used.
    - `item_alternate_tax_id_1` string: **Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.
    - `payment_facilitator_id` string: **Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number
    - `submerchant_id` string: **Payment Facilitator:** Sub-merchant Account ID
    - `submerchant_name` string: **Payment Facilitator:** Sub-merchant's Name
    - `submerchant_address` string: **Payment Facilitator:** Sub-merchant's Address
    - `submerchant_city` string: **Payment Facilitator:** Sub-merchant's City
    - `submerchant_state` string: **Payment Facilitator:** Sub-merchant's State
    - `submerchant_postal` string: **Payment Facilitator:** Sub-merchant's Zip/Postal Code
    - `submerchant_country` string: **Payment Facilitator:** Sub-merchant's Country
    - `submerchant_phone` string: **Payment Facilitator:** Sub-merchant's Phone Number
    - `submerchant_email` string, email: **Payment Facilitator:** Sub-merchant's Email Address
    - `industry` 'ecommerce' | 'moto' | 'retail' | 'restaurant' | 'lodging': The industry parameter is supported across multiple transaction types. Its purpose is to identify the merchant industry type for processing
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
    - `network_tokenize` '0' | '1': Overrides the Customer Token Vault settings and tokenizes the transaction if eligible. Default - `0`.
  - CreditCardOfflineRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'offline', required: The type of transaction to be processed. **Note** that offline transactions need to be enabled.
    - `authorization_code` string, required: Specify authorization code.
    - `ccnumber` '4111111111111111' | '5431111111111111' | '6011000991300009' | '341111111111111' | '30205252489926' | '3541963594572595' | '6799990100000000019', required: Credit card number. <details> <summary>Allowed Card Numbers:</summary> | Card Type | Test Card Number | |:------------------|:---------------------| | Visa | 4111111111111111 | | MasterCard | 5431111111111111 | | Discover | 6011000991300009 | | American Express | 341111111111111 | | Diner's Club | 30205252489926 | | JCB | 3541963594572595 | | Maestro | 6799990100000000019 | </details>
    - `ccexp` string, required: Credit card expiration date. Format: `MMYY`
    - `cvv` string: The card security code. While this is not required, it is strongly recommended.
    - `amount` string, required: Total amount to be charged. Format: `x.xx`
    - `payment_token` string: The tokenized version of the customer's card or check information, generated by the [Payment Component](../docs/payment-component) (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) and usable only once. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology).
    - `transaction_session_id` string: A single use session ID used by Kount to link the transaction and Data Collector information together. * Should be generated every time a payment form is loaded by the cardholder. * Should be random/unpredictable (do not use sequential IDs). * Should not be reused within a 30 day period. This can be used with [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) or the Payment API when using the [Kount DDC with Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology). Format: `alphanumeric`
    - `applepay_payment_data` string: The encrypted token created when integration directly to the Apple Pay SDK.
    - `googlepay_payment_data` string: The encrypted token created when [integration directly to the Google Pay SDK](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#googlepay_variables).
    - `surcharge` string: Surcharge amount. Format: `x.xx`
    - `convenience_fee` string: Convenience fee amount. Format: `x.xx`
    - `misc_fee` string: Miscellaneous fee amount. Format: `x.xx`
    - `misc_fee_name` string: Custom miscellaneous fee name. Default: `Miscellaneous Fee`
    - `tip` number: The final tip amount, included in the transaction, associated with the purchase. Format: `x.xx`
    - `currency` string: The transaction currency. Format: `ISO 4217`
    - `processor_id` string: If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel).
    - `dup_seconds` integer: Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking.
    - `descriptor` string: Set payment descriptor on supported processors.
    - `descriptor_phone` string: Set payment descriptor phone on supported processors.
    - `descriptor_address` string: Set payment descriptor address on supported processors.
    - `descriptor_city` string: Set payment descriptor city on supported processors.
    - `descriptor_state` string: Set payment descriptor state on supported processors.
    - `descriptor_postal` string: Set payment descriptor postal code on supported processors.
    - `descriptor_country` string: Set payment descriptor country on supported processors.
    - `descriptor_mcc` string: Set payment descriptor mcc on supported processors.
    - `descriptor_merchant_id` string: Set payment descriptor merchant id on supported processors.
    - `descriptor_url` string: Set payment descriptor url on supported processors.
    - `billing_method` 'initial_recurring' | 'recurring' | 'installment': Recurring or installment classification for the processor. - `initial_recurring`: First transaction in a recurring sequence only. - `recurring`: Later charges in that sequence. - `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors. Which values apply depends on the processor.
    - `billing_number` integer: Specify installment billing number, on supported processors. For use when `billing_method` is set to "installment".
    - `billing_total` string: Specify installment billing total on supported processors. For use when `billing_method` is set to "installment".
    - `order_template` string: Order template ID.
    - `order_description` string: Order description.
    - `orderid` string: **Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.
    - `ipaddress` string: IP address of cardholder, this field is recommended. Format: `xxx.xxx.xxx.xxx`
    - `first_name` string: Cardholder's first name.
    - `last_name` string: Cardholder's last name
    - `company` string: Cardholder's company
    - `address1` string: Card billing address
    - `address2` string: Card billing address, line 2
    - `city` string: Card billing city
    - `state` string: Card billing state. Format: `CC`
    - `zip` string: Card billing zip code
    - `country` string: Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `phone` string: Billing phone number
    - `fax` string: Billing fax number
    - `email` string, email: Billing email address
    - `drivers_license_number` string: Driver's license number.
    - `drivers_license_dob` string: Driver's license date of birth.
    - `drivers_license_state` string: The state that issued the customer's driver's license.
    - `shipping_firstname` string: Shipping first name
    - `shipping_lastname` string: Shipping last name
    - `shipping_company` string: Shipping company
    - `shipping_address1` string: Shipping address
    - `shipping_address2` string: Shipping address, line 2
    - `shipping_city` string: Shipping city
    - `shipping_state` string: Shipping state. Format: `CC`
    - `shipping_zip` string: Shipping zip code
    - `shipping_country` string: **Level III - Order Field:** Shipping country (e.g. US). Format: `CC` - ISO 3166-1 alpha-2
    - `shipping_email` string, email: Shipping email address
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
    - `customer_receipt` 'true' | 'false': If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `cardholder_auth` 'verified' | 'attempted': Set 3D Secure condition. Value used to determine E-commerce indicator (ECI). **Required for 3D Secure transactions**
    - `cavv` string: Cardholder authentication verification value. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `xid` string: Cardholder authentication transaction id. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `three_ds_version` '2.0.0' | '2.2.0': 3DSecure version. **Required for 3D Secure transactions**
    - `directory_server_id` string: Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication. Format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`
    - `source_transaction_id` string: Specifies a payment gateway transaction id in order to associate payment information with a Subscription or Customer Vault record. Must be set with a 'recurring' or 'customer_vault' action.
    - `pinless_debit_override` string: Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only.
    - `recurring` 'add_subscription': **Recurring Field:** Recurring action to be processed.
    - `plan_id` string: **Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful. Required when **recurring** variable is set to `add_subscription`
    - `plan_payments` integer: **Recurring Field:** The number of payments before the recurring plan is complete. Note: Use '0' for until canceled Required when **recurring** variable is set to `add_subscription`
    - `plan_amount` number: **Recurring Field:** The plan amount to be charged each billing cycle. Format: `x.xx` Required when **recurring** variable is set to `add_subscription`
    - `month_frequency` integer: **Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `day_of_month` integer: **Recurring Field:** The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'. For months without 29, 30, or 31 days, the charge will be on the last day Required when **recurring** variable is set to `add_subscription`
    - `day_frequency` integer: **Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `start_date` string, date: **Recurring Field:** The first day that the customer will be charged. Format: `YYYYMMDD` Required when **recurring** variable is set to `add_subscription`
    - `customer_vault` 'add_customer' | 'update_customer': Associate payment information with a Customer Vault record if the transaction is successful.
    - `customer_vault_id` string: Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.
    - `initiated_by` 'customer' | 'merchant': **Stored Credentials (CIT/MIT):** Who initiated the transaction.
    - `initial_transaction_id` string: **Stored Credentials (CIT/MIT):** Original payment gateway transaction id.
    - `stored_credential_indicator` 'stored' | 'used': **Stored Credentials (CIT/MIT):** The indicator of the stored credential. Use **'stored'** when processing the initial transaction in which you are storing a customer's payment details (customer credentials) in the Customer Vault or other third-party payment storage system. Use **'used'** when processing a subsequent or follow-up transaction using the customer payment details (customer credentials) you have already stored to the Customer Vault or third-party payment storage method.
    - `shipping` number: **Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `tax` number: **Level II/III - Order Field:** The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`. Format: `x.xx`
    - `ponumber` string: **Level II/III - Order Field:** Purchase order number
    - `shipping_postal` string: **Level III - Order Field:** Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the 'ship_from_postal' if the customer is present and takes immediate possession of the goods.
    - `ship_from_postal` string: **Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.
    - `summary_commodity_code` string: **Level III - Order Field:** 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: **Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`. Format: `x.xx`
    - `discount_amount` number: **Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`. Format: `x.xx`
    - `national_tax_amount` number: **Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_amount` number: **Level III - Order Field:** Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_id` string: **Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: **Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`. Format: `x.xx`
    - `vat_tax_rate` number: **Level III - Order Field:** Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00. Default - `0.00`. Format: `x.xx`
    - `vat_invoice_reference_number` string: **Level III - Order Field:** Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` string: **Level III - Order Field:** Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` string: **Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `order_date` string, date: **Level III - Order Field:** Purchase order date, defaults to the date of the transaction. Format: `YYMMDD`
    - `item_product_code_1` string: **Level III - Line Item:** Merchant defined description code of the item being purchased. *Up to 99 sets of item_* fields are allowed.*
    - `item_description_1` string: **Level III - Line Item:** Description of the item(s) being supplied.
    - `item_commodity_code_1` string: **Level III - Line Item:** International description code of the individual good or service being supplied. The acquirer or processor will provide a list of current codes.
    - `item_unit_of_measure_1` string: **Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.
    - `item_unit_cost_1` number: **Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.
    - `item_quantity_1` integer: **Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.
    - `item_total_amount_1` number: **Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.
    - `item_tax_amount_1` number: **Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`. Format: `x.xx`
    - `item_tax_rate_1` number: **Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`. Format: `x.xx`
    - `item_discount_amount_1` number: **Level III - Line Item:** Discount amount which can have been applied by the merchant on the sale of the specific item. Amount should not be included in 'total_amount_#'.
    - `item_discount_rate_1` number: **Level III - Line Item:** Discount rate for the line item. Default - `0.00`. Format: `x.xx`
    - `item_tax_type_1` string: **Level III - Line Item:** Type of value-added taxes that are being used.
    - `item_alternate_tax_id_1` string: **Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.
    - `payment_facilitator_id` string: **Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number
    - `submerchant_id` string: **Payment Facilitator:** Sub-merchant Account ID
    - `submerchant_name` string: **Payment Facilitator:** Sub-merchant's Name
    - `submerchant_address` string: **Payment Facilitator:** Sub-merchant's Address
    - `submerchant_city` string: **Payment Facilitator:** Sub-merchant's City
    - `submerchant_state` string: **Payment Facilitator:** Sub-merchant's State
    - `submerchant_postal` string: **Payment Facilitator:** Sub-merchant's Zip/Postal Code
    - `submerchant_country` string: **Payment Facilitator:** Sub-merchant's Country
    - `submerchant_phone` string: **Payment Facilitator:** Sub-merchant's Phone Number
    - `submerchant_email` string, email: **Payment Facilitator:** Sub-merchant's Email Address
    - `industry` 'ecommerce' | 'moto' | 'retail' | 'restaurant' | 'lodging': The industry parameter is supported across multiple transaction types. Its purpose is to identify the merchant industry type for processing
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
  - CreditCardPaymentInFullPartialRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'complete_partial_payment', required: Will complete a `payment_in_full` transaction that has not been collected in full. This allows industries that require `payment_in_full` but subsequently decide to still settle the transaction even though it has not been collected in full.
    - `partial_payments` 'payment_in_full', required: `payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated.
    - `partial_payment_id` string, required: Unique identifier returned when making the original transaction. This should only be used for secondary transactions.
    - `ccnumber` '4111111111111111' | '5431111111111111' | '6011000991300009' | '341111111111111' | '30205252489926' | '3541963594572595' | '6799990100000000019', required: Credit card number. <details> <summary>Allowed Card Numbers:</summary> | Card Type | Test Card Number | |:------------------|:---------------------| | Visa | 4111111111111111 | | MasterCard | 5431111111111111 | | Discover | 6011000991300009 | | American Express | 341111111111111 | | Diner's Club | 30205252489926 | | JCB | 3541963594572595 | | Maestro | 6799990100000000019 | </details>
    - `ccexp` string, required: Credit card expiration date. Format: `MMYY`
    - `cvv` string: The card security code. While this is not required, it is strongly recommended.
    - `amount` string, required: Total amount to be charged. Format: `x.xx`
    - `payment_token` string: The tokenized version of the customer's card or check information, generated by the [Payment Component](../docs/payment-component) (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) and usable only once. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology).
    - `transaction_session_id` string: A single use session ID used by Kount to link the transaction and Data Collector information together. * Should be generated every time a payment form is loaded by the cardholder. * Should be random/unpredictable (do not use sequential IDs). * Should not be reused within a 30 day period. This can be used with [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) or the Payment API when using the [Kount DDC with Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology). Format: `alphanumeric`
    - `applepay_payment_data` string: The encrypted token created when integration directly to the Apple Pay SDK.
    - `googlepay_payment_data` string: The encrypted token created when [integration directly to the Google Pay SDK](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#googlepay_variables).
    - `surcharge` string: Surcharge amount. Format: `x.xx`
    - `convenience_fee` string: Convenience fee amount. Format: `x.xx`
    - `misc_fee` string: Miscellaneous fee amount. Format: `x.xx`
    - `misc_fee_name` string: Custom miscellaneous fee name. Default: `Miscellaneous Fee`
    - `tip` number: The final tip amount, included in the transaction, associated with the purchase. Format: `x.xx`
    - `currency` string: The transaction currency. Format: `ISO 4217`
    - `processor_id` string: If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel).
    - `dup_seconds` integer: Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking.
    - `descriptor` string: Set payment descriptor on supported processors.
    - `descriptor_phone` string: Set payment descriptor phone on supported processors.
    - `descriptor_address` string: Set payment descriptor address on supported processors.
    - `descriptor_city` string: Set payment descriptor city on supported processors.
    - `descriptor_state` string: Set payment descriptor state on supported processors.
    - `descriptor_postal` string: Set payment descriptor postal code on supported processors.
    - `descriptor_country` string: Set payment descriptor country on supported processors.
    - `descriptor_mcc` string: Set payment descriptor mcc on supported processors.
    - `descriptor_merchant_id` string: Set payment descriptor merchant id on supported processors.
    - `descriptor_url` string: Set payment descriptor url on supported processors.
    - `billing_method` 'initial_recurring' | 'recurring' | 'installment': Recurring or installment classification for the processor. - `initial_recurring`: First transaction in a recurring sequence only. - `recurring`: Later charges in that sequence. - `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors. Which values apply depends on the processor.
    - `billing_number` integer: Specify installment billing number, on supported processors. For use when `billing_method` is set to "installment".
    - `billing_total` string: Specify installment billing total on supported processors. For use when `billing_method` is set to "installment".
    - `order_template` string: Order template ID.
    - `order_description` string: Order description.
    - `orderid` string: **Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.
    - `ipaddress` string: IP address of cardholder, this field is recommended. Format: `xxx.xxx.xxx.xxx`
    - `first_name` string: Cardholder's first name.
    - `last_name` string: Cardholder's last name
    - `company` string: Cardholder's company
    - `address1` string: Card billing address
    - `address2` string: Card billing address, line 2
    - `city` string: Card billing city
    - `state` string: Card billing state. Format: `CC`
    - `zip` string: Card billing zip code
    - `country` string: Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `phone` string: Billing phone number
    - `fax` string: Billing fax number
    - `email` string, email: Billing email address
    - `drivers_license_number` string: Driver's license number.
    - `drivers_license_dob` string: Driver's license date of birth.
    - `drivers_license_state` string: The state that issued the customer's driver's license.
    - `shipping_firstname` string: Shipping first name
    - `shipping_lastname` string: Shipping last name
    - `shipping_company` string: Shipping company
    - `shipping_address1` string: Shipping address
    - `shipping_address2` string: Shipping address, line 2
    - `shipping_city` string: Shipping city
    - `shipping_state` string: Shipping state. Format: `CC`
    - `shipping_zip` string: Shipping zip code
    - `shipping_country` string: **Level III - Order Field:** Shipping country (e.g. US). Format: `CC` - ISO 3166-1 alpha-2
    - `shipping_email` string, email: Shipping email address
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
    - `customer_receipt` 'true' | 'false': If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `cardholder_auth` 'verified' | 'attempted': Set 3D Secure condition. Value used to determine E-commerce indicator (ECI). **Required for 3D Secure transactions**
    - `cavv` string: Cardholder authentication verification value. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `xid` string: Cardholder authentication transaction id. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `three_ds_version` '2.0.0' | '2.2.0': 3DSecure version. **Required for 3D Secure transactions**
    - `directory_server_id` string: Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication. Format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`
    - `source_transaction_id` string: Specifies a payment gateway transaction id in order to associate payment information with a Subscription or Customer Vault record. Must be set with a 'recurring' or 'customer_vault' action.
    - `pinless_debit_override` string: Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only.
    - `recurring` 'add_subscription': **Recurring Field:** Recurring action to be processed.
    - `plan_id` string: **Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful. Required when **recurring** variable is set to `add_subscription`
    - `plan_payments` integer: **Recurring Field:** The number of payments before the recurring plan is complete. Note: Use '0' for until canceled Required when **recurring** variable is set to `add_subscription`
    - `plan_amount` number: **Recurring Field:** The plan amount to be charged each billing cycle. Format: `x.xx` Required when **recurring** variable is set to `add_subscription`
    - `month_frequency` integer: **Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `day_of_month` integer: **Recurring Field:** The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'. For months without 29, 30, or 31 days, the charge will be on the last day Required when **recurring** variable is set to `add_subscription`
    - `day_frequency` integer: **Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `start_date` string, date: **Recurring Field:** The first day that the customer will be charged. Format: `YYYYMMDD` Required when **recurring** variable is set to `add_subscription`
    - `customer_vault` 'add_customer' | 'update_customer': Associate payment information with a Customer Vault record if the transaction is successful.
    - `customer_vault_id` string: Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.
    - `initiated_by` 'customer' | 'merchant': **Stored Credentials (CIT/MIT):** Who initiated the transaction.
    - `initial_transaction_id` string: **Stored Credentials (CIT/MIT):** Original payment gateway transaction id.
    - `stored_credential_indicator` 'stored' | 'used': **Stored Credentials (CIT/MIT):** The indicator of the stored credential. Use **'stored'** when processing the initial transaction in which you are storing a customer's payment details (customer credentials) in the Customer Vault or other third-party payment storage system. Use **'used'** when processing a subsequent or follow-up transaction using the customer payment details (customer credentials) you have already stored to the Customer Vault or third-party payment storage method.
    - `shipping` number: **Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `tax` number: **Level II/III - Order Field:** The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`. Format: `x.xx`
    - `ponumber` string: **Level II/III - Order Field:** Purchase order number
    - `shipping_postal` string: **Level III - Order Field:** Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the 'ship_from_postal' if the customer is present and takes immediate possession of the goods.
    - `ship_from_postal` string: **Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.
    - `summary_commodity_code` string: **Level III - Order Field:** 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: **Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`. Format: `x.xx`
    - `discount_amount` number: **Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`. Format: `x.xx`
    - `national_tax_amount` number: **Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_amount` number: **Level III - Order Field:** Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_id` string: **Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: **Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`. Format: `x.xx`
    - `vat_tax_rate` number: **Level III - Order Field:** Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00. Default - `0.00`. Format: `x.xx`
    - `vat_invoice_reference_number` string: **Level III - Order Field:** Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` string: **Level III - Order Field:** Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` string: **Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `order_date` string, date: **Level III - Order Field:** Purchase order date, defaults to the date of the transaction. Format: `YYMMDD`
    - `item_product_code_1` string: **Level III - Line Item:** Merchant defined description code of the item being purchased. *Up to 99 sets of item_* fields are allowed.*
    - `item_description_1` string: **Level III - Line Item:** Description of the item(s) being supplied.
    - `item_commodity_code_1` string: **Level III - Line Item:** International description code of the individual good or service being supplied. The acquirer or processor will provide a list of current codes.
    - `item_unit_of_measure_1` string: **Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.
    - `item_unit_cost_1` number: **Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.
    - `item_quantity_1` integer: **Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.
    - `item_total_amount_1` number: **Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.
    - `item_tax_amount_1` number: **Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`. Format: `x.xx`
    - `item_tax_rate_1` number: **Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`. Format: `x.xx`
    - `item_discount_amount_1` number: **Level III - Line Item:** Discount amount which can have been applied by the merchant on the sale of the specific item. Amount should not be included in 'total_amount_#'.
    - `item_discount_rate_1` number: **Level III - Line Item:** Discount rate for the line item. Default - `0.00`. Format: `x.xx`
    - `item_tax_type_1` string: **Level III - Line Item:** Type of value-added taxes that are being used.
    - `item_alternate_tax_id_1` string: **Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.
    - `payment_facilitator_id` string: **Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number
    - `submerchant_id` string: **Payment Facilitator:** Sub-merchant Account ID
    - `submerchant_name` string: **Payment Facilitator:** Sub-merchant's Name
    - `submerchant_address` string: **Payment Facilitator:** Sub-merchant's Address
    - `submerchant_city` string: **Payment Facilitator:** Sub-merchant's City
    - `submerchant_state` string: **Payment Facilitator:** Sub-merchant's State
    - `submerchant_postal` string: **Payment Facilitator:** Sub-merchant's Zip/Postal Code
    - `submerchant_country` string: **Payment Facilitator:** Sub-merchant's Country
    - `submerchant_phone` string: **Payment Facilitator:** Sub-merchant's Phone Number
    - `submerchant_email` string, email: **Payment Facilitator:** Sub-merchant's Email Address
    - `industry` 'ecommerce' | 'moto' | 'retail' | 'restaurant' | 'lodging': The industry parameter is supported across multiple transaction types. Its purpose is to identify the merchant industry type for processing
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
  - VoidRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'void', required: The type of transaction to be processed.
    - `transactionid` string, required: Original payment gateway transaction id.
    - `payment` 'check' | 'creditcard': **Required for ACH** The type of payment. Default - `creditcard`.
    - `void_reason` 'fraud' | 'user_cancel' | 'icc_rejected' | 'icc_card_removed' | 'icc_no_confirmation' | 'pos_timeout': **Conditionally Required** if Transaction is EMV. Reason the EMV transaction is being voided.
  - RefundRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'refund', required: The type of transaction to be processed.
    - `transactionid` string, required: Original payment gateway transaction id.
    - `payment` 'check' | 'creditcard': **Required for ACH** The type of payment. Default - `creditcard`.
    - `amount` string: Total amount to be refunded. This amount may be equal to or less than the settled amount. Setting the amount to `0.00` will refund the entire amount. Format: `x.xx`
  - ACHSaleRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'sale', required: The type of transaction to be processed.
    - `payment` 'check', required: The type of payment.
    - `checkname` string, required: The name on the customer's ACH account.
    - `checkaba` string, required: The customer's bank routing number.
    - `checkaccount` string, required: The customer's bank account number.
    - `account_holder_type` 'business' | 'personal': The type of ACH account the customer has.
    - `account_type` 'checking' | 'savings': The type of ACH account the customer has.
    - `sec_code` 'PPD' | 'WEB' | 'TEL' | 'CCD': The Standard Entry Class code of the ACH transaction.
    - `amount` string, required: Total amount to be charged. Format: `x.xx`
    - `payment_token` string: The tokenized version of the customer's card or check information, generated by the [Payment Component](../docs/payment-component) (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) and usable only once. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology).
    - `transaction_session_id` string: A single use session ID used by Kount to link the transaction and Data Collector information together. * Should be generated every time a payment form is loaded by the cardholder. * Should be random/unpredictable (do not use sequential IDs). * Should not be reused within a 30 day period. This can be used with [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) or the Payment API when using the [Kount DDC with Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology). Format: `alphanumeric`
    - `applepay_payment_data` string: The encrypted token created when integration directly to the Apple Pay SDK.
    - `googlepay_payment_data` string: The encrypted token created when [integration directly to the Google Pay SDK](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#googlepay_variables).
    - `surcharge` string: Surcharge amount. Format: `x.xx`
    - `convenience_fee` string: Convenience fee amount. Format: `x.xx`
    - `misc_fee` string: Miscellaneous fee amount. Format: `x.xx`
    - `misc_fee_name` string: Custom miscellaneous fee name. Default: `Miscellaneous Fee`
    - `tip` number: The final tip amount, included in the transaction, associated with the purchase. Format: `x.xx`
    - `currency` string: The transaction currency. Format: `ISO 4217`
    - `processor_id` string: If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel).
    - `dup_seconds` integer: Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking.
    - `descriptor` string: Set payment descriptor on supported processors.
    - `descriptor_phone` string: Set payment descriptor phone on supported processors.
    - `descriptor_address` string: Set payment descriptor address on supported processors.
    - `descriptor_city` string: Set payment descriptor city on supported processors.
    - `descriptor_state` string: Set payment descriptor state on supported processors.
    - `descriptor_postal` string: Set payment descriptor postal code on supported processors.
    - `descriptor_country` string: Set payment descriptor country on supported processors.
    - `descriptor_mcc` string: Set payment descriptor mcc on supported processors.
    - `descriptor_merchant_id` string: Set payment descriptor merchant id on supported processors.
    - `descriptor_url` string: Set payment descriptor url on supported processors.
    - `billing_method` 'initial_recurring' | 'recurring' | 'installment': Recurring or installment classification for the processor. - `initial_recurring`: First transaction in a recurring sequence only. - `recurring`: Later charges in that sequence. - `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors. Which values apply depends on the processor.
    - `billing_number` integer: Specify installment billing number, on supported processors. For use when `billing_method` is set to "installment".
    - `billing_total` string: Specify installment billing total on supported processors. For use when `billing_method` is set to "installment".
    - `order_template` string: Order template ID.
    - `order_description` string: Order description.
    - `orderid` string: **Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.
    - `ipaddress` string: IP address of cardholder, this field is recommended. Format: `xxx.xxx.xxx.xxx`
    - `first_name` string: Cardholder's first name.
    - `last_name` string: Cardholder's last name
    - `company` string: Cardholder's company
    - `address1` string: Card billing address
    - `address2` string: Card billing address, line 2
    - `city` string: Card billing city
    - `state` string: Card billing state. Format: `CC`
    - `zip` string: Card billing zip code
    - `country` string: Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `phone` string: Billing phone number
    - `fax` string: Billing fax number
    - `email` string, email: Billing email address
    - `drivers_license_number` string: Driver's license number.
    - `drivers_license_dob` string: Driver's license date of birth.
    - `drivers_license_state` string: The state that issued the customer's driver's license.
    - `shipping_firstname` string: Shipping first name
    - `shipping_lastname` string: Shipping last name
    - `shipping_company` string: Shipping company
    - `shipping_address1` string: Shipping address
    - `shipping_address2` string: Shipping address, line 2
    - `shipping_city` string: Shipping city
    - `shipping_state` string: Shipping state. Format: `CC`
    - `shipping_zip` string: Shipping zip code
    - `shipping_country` string: **Level III - Order Field:** Shipping country (e.g. US). Format: `CC` - ISO 3166-1 alpha-2
    - `shipping_email` string, email: Shipping email address
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
    - `customer_receipt` 'true' | 'false': If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `cardholder_auth` 'verified' | 'attempted': Set 3D Secure condition. Value used to determine E-commerce indicator (ECI). **Required for 3D Secure transactions**
    - `cavv` string: Cardholder authentication verification value. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `xid` string: Cardholder authentication transaction id. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `three_ds_version` '2.0.0' | '2.2.0': 3DSecure version. **Required for 3D Secure transactions**
    - `directory_server_id` string: Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication. Format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`
    - `source_transaction_id` string: Specifies a payment gateway transaction id in order to associate payment information with a Subscription or Customer Vault record. Must be set with a 'recurring' or 'customer_vault' action.
    - `pinless_debit_override` string: Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only.
    - `recurring` 'add_subscription': **Recurring Field:** Recurring action to be processed.
    - `plan_id` string: **Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful. Required when **recurring** variable is set to `add_subscription`
    - `plan_payments` integer: **Recurring Field:** The number of payments before the recurring plan is complete. Note: Use '0' for until canceled Required when **recurring** variable is set to `add_subscription`
    - `plan_amount` number: **Recurring Field:** The plan amount to be charged each billing cycle. Format: `x.xx` Required when **recurring** variable is set to `add_subscription`
    - `month_frequency` integer: **Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `day_of_month` integer: **Recurring Field:** The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'. For months without 29, 30, or 31 days, the charge will be on the last day Required when **recurring** variable is set to `add_subscription`
    - `day_frequency` integer: **Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `start_date` string, date: **Recurring Field:** The first day that the customer will be charged. Format: `YYYYMMDD` Required when **recurring** variable is set to `add_subscription`
    - `customer_vault` 'add_customer' | 'update_customer': Associate payment information with a Customer Vault record if the transaction is successful.
    - `customer_vault_id` string: Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.
    - `initiated_by` 'customer' | 'merchant': **Stored Credentials (CIT/MIT):** Who initiated the transaction.
    - `initial_transaction_id` string: **Stored Credentials (CIT/MIT):** Original payment gateway transaction id.
    - `stored_credential_indicator` 'stored' | 'used': **Stored Credentials (CIT/MIT):** The indicator of the stored credential. Use **'stored'** when processing the initial transaction in which you are storing a customer's payment details (customer credentials) in the Customer Vault or other third-party payment storage system. Use **'used'** when processing a subsequent or follow-up transaction using the customer payment details (customer credentials) you have already stored to the Customer Vault or third-party payment storage method.
    - `shipping` number: **Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `tax` number: **Level II/III - Order Field:** The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`. Format: `x.xx`
    - `ponumber` string: **Level II/III - Order Field:** Purchase order number
    - `shipping_postal` string: **Level III - Order Field:** Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the 'ship_from_postal' if the customer is present and takes immediate possession of the goods.
    - `ship_from_postal` string: **Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.
    - `summary_commodity_code` string: **Level III - Order Field:** 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: **Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`. Format: `x.xx`
    - `discount_amount` number: **Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`. Format: `x.xx`
    - `national_tax_amount` number: **Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_amount` number: **Level III - Order Field:** Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_id` string: **Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: **Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`. Format: `x.xx`
    - `vat_tax_rate` number: **Level III - Order Field:** Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00. Default - `0.00`. Format: `x.xx`
    - `vat_invoice_reference_number` string: **Level III - Order Field:** Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` string: **Level III - Order Field:** Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` string: **Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `order_date` string, date: **Level III - Order Field:** Purchase order date, defaults to the date of the transaction. Format: `YYMMDD`
    - `item_product_code_1` string: **Level III - Line Item:** Merchant defined description code of the item being purchased. *Up to 99 sets of item_* fields are allowed.*
    - `item_description_1` string: **Level III - Line Item:** Description of the item(s) being supplied.
    - `item_commodity_code_1` string: **Level III - Line Item:** International description code of the individual good or service being supplied. The acquirer or processor will provide a list of current codes.
    - `item_unit_of_measure_1` string: **Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.
    - `item_unit_cost_1` number: **Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.
    - `item_quantity_1` integer: **Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.
    - `item_total_amount_1` number: **Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.
    - `item_tax_amount_1` number: **Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`. Format: `x.xx`
    - `item_tax_rate_1` number: **Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`. Format: `x.xx`
    - `item_discount_amount_1` number: **Level III - Line Item:** Discount amount which can have been applied by the merchant on the sale of the specific item. Amount should not be included in 'total_amount_#'.
    - `item_discount_rate_1` number: **Level III - Line Item:** Discount rate for the line item. Default - `0.00`. Format: `x.xx`
    - `item_tax_type_1` string: **Level III - Line Item:** Type of value-added taxes that are being used.
    - `item_alternate_tax_id_1` string: **Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.
    - `payment_facilitator_id` string: **Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number
    - `submerchant_id` string: **Payment Facilitator:** Sub-merchant Account ID
    - `submerchant_name` string: **Payment Facilitator:** Sub-merchant's Name
    - `submerchant_address` string: **Payment Facilitator:** Sub-merchant's Address
    - `submerchant_city` string: **Payment Facilitator:** Sub-merchant's City
    - `submerchant_state` string: **Payment Facilitator:** Sub-merchant's State
    - `submerchant_postal` string: **Payment Facilitator:** Sub-merchant's Zip/Postal Code
    - `submerchant_country` string: **Payment Facilitator:** Sub-merchant's Country
    - `submerchant_phone` string: **Payment Facilitator:** Sub-merchant's Phone Number
    - `submerchant_email` string, email: **Payment Facilitator:** Sub-merchant's Email Address
    - `social_security_number` string: Customer's social security number, checked against bad check writers database if check verification is enabled.
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
  - ACHCreditRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'credit', required: The type of transaction to be processed. Note that credits need to be enabled.
    - `payment` 'check' | 'cash', required: The type of payment.
    - `checkname` string, required: The name on the customer's ACH account.
    - `checkaba` string, required: The customer's bank routing number.
    - `checkaccount` string, required: The customer's bank account number.
    - `account_holder_type` 'business' | 'personal': The type of ACH account the customer has.
    - `account_type` 'checking' | 'savings': The type of ACH account the customer has.
    - `sec_code` 'PPD' | 'WEB' | 'TEL' | 'CCD': The Standard Entry Class code of the ACH transaction.
    - `amount` string: Total amount to be charged. Format: `x.xx`
    - `payment_token` string: The tokenized version of the customer's card or check information, generated by the [Payment Component](../docs/payment-component) (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) and usable only once. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology).
    - `transaction_session_id` string: A single use session ID used by Kount to link the transaction and Data Collector information together. * Should be generated every time a payment form is loaded by the cardholder. * Should be random/unpredictable (do not use sequential IDs). * Should not be reused within a 30 day period. This can be used with [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) or the Payment API when using the [Kount DDC with Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology). Format: `alphanumeric`
    - `applepay_payment_data` string: The encrypted token created when integration directly to the Apple Pay SDK.
    - `googlepay_payment_data` string: The encrypted token created when [integration directly to the Google Pay SDK](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#googlepay_variables).
    - `surcharge` string: Surcharge amount. Format: `x.xx`
    - `convenience_fee` string: Convenience fee amount. Format: `x.xx`
    - `misc_fee` string: Miscellaneous fee amount. Format: `x.xx`
    - `misc_fee_name` string: Custom miscellaneous fee name. Default: `Miscellaneous Fee`
    - `tip` number: The final tip amount, included in the transaction, associated with the purchase. Format: `x.xx`
    - `currency` string: The transaction currency. Format: `ISO 4217`
    - `processor_id` string: If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel).
    - `dup_seconds` integer: Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking.
    - `descriptor` string: Set payment descriptor on supported processors.
    - `descriptor_phone` string: Set payment descriptor phone on supported processors.
    - `descriptor_address` string: Set payment descriptor address on supported processors.
    - `descriptor_city` string: Set payment descriptor city on supported processors.
    - `descriptor_state` string: Set payment descriptor state on supported processors.
    - `descriptor_postal` string: Set payment descriptor postal code on supported processors.
    - `descriptor_country` string: Set payment descriptor country on supported processors.
    - `descriptor_mcc` string: Set payment descriptor mcc on supported processors.
    - `descriptor_merchant_id` string: Set payment descriptor merchant id on supported processors.
    - `descriptor_url` string: Set payment descriptor url on supported processors.
    - `billing_method` 'initial_recurring' | 'recurring' | 'installment': Recurring or installment classification for the processor. - `initial_recurring`: First transaction in a recurring sequence only. - `recurring`: Later charges in that sequence. - `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors. Which values apply depends on the processor.
    - `billing_number` integer: Specify installment billing number, on supported processors. For use when `billing_method` is set to "installment".
    - `billing_total` string: Specify installment billing total on supported processors. For use when `billing_method` is set to "installment".
    - `order_template` string: Order template ID.
    - `order_description` string: Order description.
    - `orderid` string: **Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.
    - `ipaddress` string: IP address of cardholder, this field is recommended. Format: `xxx.xxx.xxx.xxx`
    - `first_name` string: Cardholder's first name.
    - `last_name` string: Cardholder's last name
    - `company` string: Cardholder's company
    - `address1` string: Card billing address
    - `address2` string: Card billing address, line 2
    - `city` string: Card billing city
    - `state` string: Card billing state. Format: `CC`
    - `zip` string: Card billing zip code
    - `country` string: Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `phone` string: Billing phone number
    - `fax` string: Billing fax number
    - `email` string, email: Billing email address
    - `drivers_license_number` string: Driver's license number.
    - `drivers_license_dob` string: Driver's license date of birth.
    - `drivers_license_state` string: The state that issued the customer's driver's license.
    - `shipping_firstname` string: Shipping first name
    - `shipping_lastname` string: Shipping last name
    - `shipping_company` string: Shipping company
    - `shipping_address1` string: Shipping address
    - `shipping_address2` string: Shipping address, line 2
    - `shipping_city` string: Shipping city
    - `shipping_state` string: Shipping state. Format: `CC`
    - `shipping_zip` string: Shipping zip code
    - `shipping_country` string: **Level III - Order Field:** Shipping country (e.g. US). Format: `CC` - ISO 3166-1 alpha-2
    - `shipping_email` string, email: Shipping email address
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
    - `customer_receipt` 'true' | 'false': If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `cardholder_auth` 'verified' | 'attempted': Set 3D Secure condition. Value used to determine E-commerce indicator (ECI). **Required for 3D Secure transactions**
    - `cavv` string: Cardholder authentication verification value. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `xid` string: Cardholder authentication transaction id. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `three_ds_version` '2.0.0' | '2.2.0': 3DSecure version. **Required for 3D Secure transactions**
    - `directory_server_id` string: Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication. Format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`
    - `source_transaction_id` string: Specifies a payment gateway transaction id in order to associate payment information with a Subscription or Customer Vault record. Must be set with a 'recurring' or 'customer_vault' action.
    - `pinless_debit_override` string: Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only.
    - `recurring` 'add_subscription': **Recurring Field:** Recurring action to be processed.
    - `plan_id` string: **Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful. Required when **recurring** variable is set to `add_subscription`
    - `plan_payments` integer: **Recurring Field:** The number of payments before the recurring plan is complete. Note: Use '0' for until canceled Required when **recurring** variable is set to `add_subscription`
    - `plan_amount` number: **Recurring Field:** The plan amount to be charged each billing cycle. Format: `x.xx` Required when **recurring** variable is set to `add_subscription`
    - `month_frequency` integer: **Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `day_of_month` integer: **Recurring Field:** The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'. For months without 29, 30, or 31 days, the charge will be on the last day Required when **recurring** variable is set to `add_subscription`
    - `day_frequency` integer: **Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `start_date` string, date: **Recurring Field:** The first day that the customer will be charged. Format: `YYYYMMDD` Required when **recurring** variable is set to `add_subscription`
    - `customer_vault` 'add_customer' | 'update_customer': Associate payment information with a Customer Vault record if the transaction is successful.
    - `customer_vault_id` string: Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.
    - `initiated_by` 'customer' | 'merchant': **Stored Credentials (CIT/MIT):** Who initiated the transaction.
    - `initial_transaction_id` string: **Stored Credentials (CIT/MIT):** Original payment gateway transaction id.
    - `stored_credential_indicator` 'stored' | 'used': **Stored Credentials (CIT/MIT):** The indicator of the stored credential. Use **'stored'** when processing the initial transaction in which you are storing a customer's payment details (customer credentials) in the Customer Vault or other third-party payment storage system. Use **'used'** when processing a subsequent or follow-up transaction using the customer payment details (customer credentials) you have already stored to the Customer Vault or third-party payment storage method.
    - `shipping` number: **Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `tax` number: **Level II/III - Order Field:** The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`. Format: `x.xx`
    - `ponumber` string: **Level II/III - Order Field:** Purchase order number
    - `shipping_postal` string: **Level III - Order Field:** Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the 'ship_from_postal' if the customer is present and takes immediate possession of the goods.
    - `ship_from_postal` string: **Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.
    - `summary_commodity_code` string: **Level III - Order Field:** 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: **Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`. Format: `x.xx`
    - `discount_amount` number: **Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`. Format: `x.xx`
    - `national_tax_amount` number: **Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_amount` number: **Level III - Order Field:** Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_id` string: **Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: **Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`. Format: `x.xx`
    - `vat_tax_rate` number: **Level III - Order Field:** Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00. Default - `0.00`. Format: `x.xx`
    - `vat_invoice_reference_number` string: **Level III - Order Field:** Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` string: **Level III - Order Field:** Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` string: **Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `order_date` string, date: **Level III - Order Field:** Purchase order date, defaults to the date of the transaction. Format: `YYMMDD`
    - `item_product_code_1` string: **Level III - Line Item:** Merchant defined description code of the item being purchased. *Up to 99 sets of item_* fields are allowed.*
    - `item_description_1` string: **Level III - Line Item:** Description of the item(s) being supplied.
    - `item_commodity_code_1` string: **Level III - Line Item:** International description code of the individual good or service being supplied. The acquirer or processor will provide a list of current codes.
    - `item_unit_of_measure_1` string: **Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.
    - `item_unit_cost_1` number: **Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.
    - `item_quantity_1` integer: **Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.
    - `item_total_amount_1` number: **Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.
    - `item_tax_amount_1` number: **Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`. Format: `x.xx`
    - `item_tax_rate_1` number: **Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`. Format: `x.xx`
    - `item_discount_amount_1` number: **Level III - Line Item:** Discount amount which can have been applied by the merchant on the sale of the specific item. Amount should not be included in 'total_amount_#'.
    - `item_discount_rate_1` number: **Level III - Line Item:** Discount rate for the line item. Default - `0.00`. Format: `x.xx`
    - `item_tax_type_1` string: **Level III - Line Item:** Type of value-added taxes that are being used.
    - `item_alternate_tax_id_1` string: **Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.
    - `payment_facilitator_id` string: **Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number
    - `submerchant_id` string: **Payment Facilitator:** Sub-merchant Account ID
    - `submerchant_name` string: **Payment Facilitator:** Sub-merchant's Name
    - `submerchant_address` string: **Payment Facilitator:** Sub-merchant's Address
    - `submerchant_city` string: **Payment Facilitator:** Sub-merchant's City
    - `submerchant_state` string: **Payment Facilitator:** Sub-merchant's State
    - `submerchant_postal` string: **Payment Facilitator:** Sub-merchant's Zip/Postal Code
    - `submerchant_country` string: **Payment Facilitator:** Sub-merchant's Country
    - `submerchant_phone` string: **Payment Facilitator:** Sub-merchant's Phone Number
    - `submerchant_email` string, email: **Payment Facilitator:** Sub-merchant's Email Address
    - `social_security_number` string: Customer's social security number, checked against bad check writers database if check verification is enabled.
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
  - CashSaleRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `type` 'sale', required: The type of transaction to be processed.
    - `payment` 'cash', required: The type of payment.
    - `amount` string, required: Total amount to be charged. Format: `x.xx`
    - `payment_token` string: The tokenized version of the customer's card or check information, generated by the [Payment Component](../docs/payment-component) (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) and usable only once. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology).
    - `transaction_session_id` string: A single use session ID used by Kount to link the transaction and Data Collector information together. * Should be generated every time a payment form is loaded by the cardholder. * Should be random/unpredictable (do not use sequential IDs). * Should not be reused within a 30 day period. This can be used with [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) or the Payment API when using the [Kount DDC with Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology). Format: `alphanumeric`
    - `applepay_payment_data` string: The encrypted token created when integration directly to the Apple Pay SDK.
    - `googlepay_payment_data` string: The encrypted token created when [integration directly to the Google Pay SDK](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#googlepay_variables).
    - `surcharge` string: Surcharge amount. Format: `x.xx`
    - `convenience_fee` string: Convenience fee amount. Format: `x.xx`
    - `misc_fee` string: Miscellaneous fee amount. Format: `x.xx`
    - `misc_fee_name` string: Custom miscellaneous fee name. Default: `Miscellaneous Fee`
    - `tip` number: The final tip amount, included in the transaction, associated with the purchase. Format: `x.xx`
    - `currency` string: The transaction currency. Format: `ISO 4217`
    - `processor_id` string: If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel).
    - `dup_seconds` integer: Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking.
    - `descriptor` string: Set payment descriptor on supported processors.
    - `descriptor_phone` string: Set payment descriptor phone on supported processors.
    - `descriptor_address` string: Set payment descriptor address on supported processors.
    - `descriptor_city` string: Set payment descriptor city on supported processors.
    - `descriptor_state` string: Set payment descriptor state on supported processors.
    - `descriptor_postal` string: Set payment descriptor postal code on supported processors.
    - `descriptor_country` string: Set payment descriptor country on supported processors.
    - `descriptor_mcc` string: Set payment descriptor mcc on supported processors.
    - `descriptor_merchant_id` string: Set payment descriptor merchant id on supported processors.
    - `descriptor_url` string: Set payment descriptor url on supported processors.
    - `billing_method` 'initial_recurring' | 'recurring' | 'installment': Recurring or installment classification for the processor. - `initial_recurring`: First transaction in a recurring sequence only. - `recurring`: Later charges in that sequence. - `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors. Which values apply depends on the processor.
    - `billing_number` integer: Specify installment billing number, on supported processors. For use when `billing_method` is set to "installment".
    - `billing_total` string: Specify installment billing total on supported processors. For use when `billing_method` is set to "installment".
    - `order_template` string: Order template ID.
    - `order_description` string: Order description.
    - `orderid` string: **Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.
    - `ipaddress` string: IP address of cardholder, this field is recommended. Format: `xxx.xxx.xxx.xxx`
    - `first_name` string: Cardholder's first name.
    - `last_name` string: Cardholder's last name
    - `company` string: Cardholder's company
    - `address1` string: Card billing address
    - `address2` string: Card billing address, line 2
    - `city` string: Card billing city
    - `state` string: Card billing state. Format: `CC`
    - `zip` string: Card billing zip code
    - `country` string: Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `phone` string: Billing phone number
    - `fax` string: Billing fax number
    - `email` string, email: Billing email address
    - `drivers_license_number` string: Driver's license number.
    - `drivers_license_dob` string: Driver's license date of birth.
    - `drivers_license_state` string: The state that issued the customer's driver's license.
    - `shipping_firstname` string: Shipping first name
    - `shipping_lastname` string: Shipping last name
    - `shipping_company` string: Shipping company
    - `shipping_address1` string: Shipping address
    - `shipping_address2` string: Shipping address, line 2
    - `shipping_city` string: Shipping city
    - `shipping_state` string: Shipping state. Format: `CC`
    - `shipping_zip` string: Shipping zip code
    - `shipping_country` string: **Level III - Order Field:** Shipping country (e.g. US). Format: `CC` - ISO 3166-1 alpha-2
    - `shipping_email` string, email: Shipping email address
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
    - `customer_receipt` 'true' | 'false': If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `cardholder_auth` 'verified' | 'attempted': Set 3D Secure condition. Value used to determine E-commerce indicator (ECI). **Required for 3D Secure transactions**
    - `cavv` string: Cardholder authentication verification value. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `xid` string: Cardholder authentication transaction id. Format: `base64 encoded` **Required for 3D Secure transactions**
    - `three_ds_version` '2.0.0' | '2.2.0': 3DSecure version. **Required for 3D Secure transactions**
    - `directory_server_id` string: Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication. Format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`
    - `source_transaction_id` string: Specifies a payment gateway transaction id in order to associate payment information with a Subscription or Customer Vault record. Must be set with a 'recurring' or 'customer_vault' action.
    - `pinless_debit_override` string: Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only.
    - `recurring` 'add_subscription': **Recurring Field:** Recurring action to be processed.
    - `plan_id` string: **Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful. Required when **recurring** variable is set to `add_subscription`
    - `plan_payments` integer: **Recurring Field:** The number of payments before the recurring plan is complete. Note: Use '0' for until canceled Required when **recurring** variable is set to `add_subscription`
    - `plan_amount` number: **Recurring Field:** The plan amount to be charged each billing cycle. Format: `x.xx` Required when **recurring** variable is set to `add_subscription`
    - `month_frequency` integer: **Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `day_of_month` integer: **Recurring Field:** The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'. For months without 29, 30, or 31 days, the charge will be on the last day Required when **recurring** variable is set to `add_subscription`
    - `day_frequency` integer: **Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'. Required when **recurring** variable is set to `add_subscription`
    - `start_date` string, date: **Recurring Field:** The first day that the customer will be charged. Format: `YYYYMMDD` Required when **recurring** variable is set to `add_subscription`
    - `customer_vault` 'add_customer' | 'update_customer': Associate payment information with a Customer Vault record if the transaction is successful.
    - `customer_vault_id` string: Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.
    - `initiated_by` 'customer' | 'merchant': **Stored Credentials (CIT/MIT):** Who initiated the transaction.
    - `initial_transaction_id` string: **Stored Credentials (CIT/MIT):** Original payment gateway transaction id.
    - `stored_credential_indicator` 'stored' | 'used': **Stored Credentials (CIT/MIT):** The indicator of the stored credential. Use **'stored'** when processing the initial transaction in which you are storing a customer's payment details (customer credentials) in the Customer Vault or other third-party payment storage system. Use **'used'** when processing a subsequent or follow-up transaction using the customer payment details (customer credentials) you have already stored to the Customer Vault or third-party payment storage method.
    - `shipping` number: **Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `tax` number: **Level II/III - Order Field:** The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`. Format: `x.xx`
    - `ponumber` string: **Level II/III - Order Field:** Purchase order number
    - `shipping_postal` string: **Level III - Order Field:** Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the 'ship_from_postal' if the customer is present and takes immediate possession of the goods.
    - `ship_from_postal` string: **Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.
    - `summary_commodity_code` string: **Level III - Order Field:** 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: **Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`. Format: `x.xx`
    - `discount_amount` number: **Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`. Format: `x.xx`
    - `national_tax_amount` number: **Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_amount` number: **Level III - Order Field:** Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Default - `0.00`. Format: `x.xx`
    - `alternate_tax_id` string: **Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: **Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`. Format: `x.xx`
    - `vat_tax_rate` number: **Level III - Order Field:** Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00. Default - `0.00`. Format: `x.xx`
    - `vat_invoice_reference_number` string: **Level III - Order Field:** Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` string: **Level III - Order Field:** Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` string: **Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `order_date` string, date: **Level III - Order Field:** Purchase order date, defaults to the date of the transaction. Format: `YYMMDD`
    - `item_product_code_1` string: **Level III - Line Item:** Merchant defined description code of the item being purchased. *Up to 99 sets of item_* fields are allowed.*
    - `item_description_1` string: **Level III - Line Item:** Description of the item(s) being supplied.
    - `item_commodity_code_1` string: **Level III - Line Item:** International description code of the individual good or service being supplied. The acquirer or processor will provide a list of current codes.
    - `item_unit_of_measure_1` string: **Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.
    - `item_unit_cost_1` number: **Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.
    - `item_quantity_1` integer: **Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.
    - `item_total_amount_1` number: **Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.
    - `item_tax_amount_1` number: **Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`. Format: `x.xx`
    - `item_tax_rate_1` number: **Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`. Format: `x.xx`
    - `item_discount_amount_1` number: **Level III - Line Item:** Discount amount which can have been applied by the merchant on the sale of the specific item. Amount should not be included in 'total_amount_#'.
    - `item_discount_rate_1` number: **Level III - Line Item:** Discount rate for the line item. Default - `0.00`. Format: `x.xx`
    - `item_tax_type_1` string: **Level III - Line Item:** Type of value-added taxes that are being used.
    - `item_alternate_tax_id_1` string: **Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.
    - `payment_facilitator_id` string: **Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number
    - `submerchant_id` string: **Payment Facilitator:** Sub-merchant Account ID
    - `submerchant_name` string: **Payment Facilitator:** Sub-merchant's Name
    - `submerchant_address` string: **Payment Facilitator:** Sub-merchant's Address
    - `submerchant_city` string: **Payment Facilitator:** Sub-merchant's City
    - `submerchant_state` string: **Payment Facilitator:** Sub-merchant's State
    - `submerchant_postal` string: **Payment Facilitator:** Sub-merchant's Zip/Postal Code
    - `submerchant_country` string: **Payment Facilitator:** Sub-merchant's Country
    - `submerchant_phone` string: **Payment Facilitator:** Sub-merchant's Phone Number
    - `submerchant_email` string, email: **Payment Facilitator:** Sub-merchant's Email Address
    - `social_security_number` string: Customer's social security number, checked against bad check writers database if check verification is enabled.
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
  - TransactionUpdateRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `payment` 'creditcard': The type of payment.
    - `type` 'update', required: Type of transactions.
    - `transactionid` string, required: Original payment gateway transaction id
    - `tracking_number` integer: Shipping tracking number
    - `shipping` number: Total shipping amount. Format: `x.xx`
    - `shipping_postal` integer: Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the `ship_from_postal` if the customer is present and takes immediate possession of the goods.
    - `shipping_country` string: Shipping Country Code. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `shipping_carrier` 'ups' | 'fedex' | 'dhl' | 'usps': Shipping carrier.
    - `shipping_date` string, date: Shipping date. Format: `YYYYMMDD`
    - `order_description` string: Order Description. Legacy variable includes: orderdescription
    - `customer_receipt` true | false: If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
    - `ponumber` string: Cardholder's purchase order number.
    - `summary_commodity_code` string: 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: Amount included in the transaction amount associated with the import of purchased goods. Format: `x.xx`
    - `discount_amount` number: Amount included in the transaction amount of any discount applied to complete order by the merchant. Format: `x.xx`
    - `tax` number, float: The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`.
    - `national_tax_amount` number: The national tax amount included in the transaction amount. Format: `x.xx`
    - `alternate_tax_amount` number: Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Format: `x.xx`
    - `alternate_tax_id` integer: Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: Contains the amount of any value added taxes which can be associated with the purchased item.
    - `vat_tax_rate` number, float: Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00.
    - `vat_invoice_reference_number` number: Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` number: Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` number: Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...
  - ACHTransactionUpdateRequest
    - `security_key` string, required: API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys
    - `payment` 'check', required: The type of payment.
    - `type` 'update', required: Type of transactions.
    - `transactionid` string, required: Original payment gateway transaction id
    - `tracking_number` integer: Shipping tracking number
    - `shipping` number: Total shipping amount. Format: `x.xx`
    - `shipping_postal` integer: Postal/ZIP code of the address where purchased goods will be delivered. This field can be identical to the `ship_from_postal` if the customer is present and takes immediate possession of the goods.
    - `shipping_country` string: Shipping Country Code. *Country codes are as shown in ISO 3166-1 alpha-2*. Format: `CC`
    - `shipping_carrier` 'ups' | 'fedex' | 'dhl' | 'usps': Shipping carrier.
    - `shipping_date` string, date: Shipping date. Format: `YYYYMMDD`
    - `order_description` string: Order Description. Legacy variable includes: orderdescription
    - `customer_receipt` true | false: If set to true, when the customer is charged, they will be sent a transaction receipt.
    - `signature_image` string: Cardholder signature image. Format: `base64 encoded raw PNG image. (16kiB maximum)`
    - `ponumber` string: Cardholder's purchase order number.
    - `summary_commodity_code` string: 4 character international description code of the overall goods or services being supplied. The acquirer or processor will provide a list of current codes.
    - `duty_amount` number: Amount included in the transaction amount associated with the import of purchased goods. Format: `x.xx`
    - `discount_amount` number: Amount included in the transaction amount of any discount applied to complete order by the merchant. Format: `x.xx`
    - `tax` number, float: The sales tax, included in the transaction amount, associated with the purchase. Setting tax equal to '-1' indicates an order that is exempt from sales tax. Default - `0.00`.
    - `national_tax_amount` number: The national tax amount included in the transaction amount. Format: `x.xx`
    - `alternate_tax_amount` number: Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases. Format: `x.xx`
    - `alternate_tax_id` integer: Tax identification number of the merchant that reported the alternate tax amount.
    - `vat_tax_amount` number: Contains the amount of any value added taxes which can be associated with the purchased item.
    - `vat_tax_rate` number, float: Contains the tax rate used to calculate the sales tax amount appearing. Can contain up to 2 decimal places, e.g. 1% = 1.00.
    - `vat_invoice_reference_number` number: Invoice number that is associated with the VAT invoice.
    - `customer_vat_registration` number: Value added tax registration number supplied by the cardholder.
    - `merchant_vat_registration` number: Government assigned tax identification number of the merchant for whom the goods or services were purchased from.
    - `merchant_defined_field_1` string: Merchant defined field. You can pass custom information in up to 20 fields. Format: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc...

## Response `200`

Transaction processed successfully

---

[API](https://skmtc.dev/nmi/apis/payments.md) - [All operations](https://skmtc.dev/nmi/apis/payments/llms.txt) - [OpenAPI document](https://skmtc.dev/nmi/apis/payments/revisions/4c8b19970d5b?raw)
