---
updatedAt: 2026-08-17T18:31:23.000Z
agentTools:
  projectIndex: https://docs.nmi.com/llms.txt
---

# Payment API (Classic)

<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>Click to see invoice related notes</summary>

**Update Invoice**

All variables (besides currency) on an invoice may be updated.
Updating an invoice will not result in a new invoice being sent to the customer.

**Send Invoice**

To send the invoice after updating an invoice, use the send_invoice request after making changes.
</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>


<div class="alert alert-blue">
  ### **Never Use Real API Keys**

Use Sandbox keys with the Try It feature. Do not enter production API keys when testing.

</div>

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "version": "1.0.0",
    "title": "Payments API",
    "description": "Our payments platform exposes two generations of API.\n\n**For new integrations, use the REST API** — JSON endpoints under `/v5/payments`, `/v5/subscriptions`, `/v5/plans`, and `/v5/customers` — paired with the **[Payment Component](../docs/payment-component)** (npm packages / [Gateway.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#gjs_methodology)) for card capture and tokenization.\n\nThe **Classic** DirectPost (`transact.php`) and Query (`query.php`) endpoints are documented here for existing Classic integrations. If you're migrating from the Classic API, follow the [Classic API migration playbook](../docs/payment-migration-playbook).",
    "x-logo": {
      "url": "https://www.nmi.com/app/themes/nmi/images/NMI_Logo_Primary.webp"
    }
  },
  "servers": [
    {
      "url": "https://sandbox.nmi.com/api"
    }
  ],
  "security": [],
  "tags": [
    {
      "name": "Payment Processing",
      "description": "Payment Processing"
    },
    {
      "name": "Webhook Events",
      "description": "Here you can find information about webhook events"
    }
  ],
  "externalDocs": {
    "url": "https://www.postman.com/nmi-integration-support/workspace/nmi-public-documentation/request/5480015-f4b0ec7b-bd84-4094-98c2-67c0b6508a7f",
    "description": "Public Documentation (Postman)"
  },
  "paths": {
    "/transact.php": {
      "post": {
        "tags": [
          "Payment Processing"
        ],
        "summary": "Payment API (Classic)",
        "description": "<details>\n<summary>Methodology</summary>\n\n**Steps:**\n1. The customer sends their payment information to the merchant's web site.\n2. The merchant web site posts the payment data to the Payment Gateway.\n3. The Payment Gateway responds immediately with the results of the transactions.\n4. The merchant web site displays the appropriate message to the customer.\n\nThe communication method used to send messages to the Payment Gateway's server is the standard HTTP protocol over an SSL connection.\n\nIn 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.\n\nIn 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.\n\nIn 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`\n\n### Customer Vault\nThe 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.\n\nThese 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.\n\nThe 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.\n</details>\n\n<details>\n<summary>Click to see invoice related notes</summary>\n\n**Update Invoice**\n\nAll variables (besides currency) on an invoice may be updated.\nUpdating an invoice will not result in a new invoice being sent to the customer.\n\n**Send Invoice**\n\nTo send the invoice after updating an invoice, use the send_invoice request after making changes.\n</details>\n\n<details>\n<summary>Response Code Table</summary>\n\n| Code  | Description                                                        |\n|:------|:-------------------------------------------------------------------|\n| 100   | Transaction was approved.                                          |\n| 200   | Transaction was declined by processor.                             |\n| 201   | Do not honor.                                                      |\n| 202   | Insufficient funds.                                                |\n| 203   | Over limit.                                                        |\n| 204   | Transaction not allowed.                                           |\n| 220   | Incorrect payment information.                                     |\n| 221   | No such card issuer.                                               |\n| 222   | No card number on file with issuer.                                |\n| 223   | Expired card.                                                      |\n| 224   | Invalid expiration date.                                           |\n| 225   | Invalid card security code.                                        |\n| 226   | Invalid PIN.                                                       |\n| 240   | Call issuer for further information.                               |\n| 250   | Pick up card.                                                      |\n| 251   | Lost card.                                                         |\n| 252   | Stolen card.                                                       |\n| 253   | Fraudulent card.                                                   |\n| 260   | Declined with further instructions available. (See response text)  |\n| 261   | Declined-Stop all recurring payments.                              |\n| 262   | Declined-Stop this recurring program.                              |\n| 263   | Declined-Update cardholder data available.                         |\n| 264   | Declined-Retry in a few days.                                      |\n| 300   | Transaction was rejected by gateway.                               |\n| 400   | Transaction error returned by processor.                           |\n| 410   | Invalid merchant configuration.                                    |\n| 411   | Merchant account is inactive.                                      |\n| 420   | Communication error.                                               |\n| 421   | Communication error with issuer.                                   |\n| 430   | Duplicate transaction at processor.                                |\n| 440   | Processor format error.                                            |\n| 441   | Invalid transaction information.                                   |\n| 460   | Processor feature not available.                                   |\n| 461   | Unsupported card type.                                             |\n\n</details>\n",
        "operationId": "process",
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/DeviceUnencryptedRetailMagneticStripeDataRequest"
                  },
                  {
                    "$ref": "#/components/schemas/DeviceMagTekMagensaEncryptedMagneticStripeDataRequest"
                  },
                  {
                    "$ref": "#/components/schemas/DeviceIDTechM130EncryptedSwipeDataRequest"
                  },
                  {
                    "$ref": "#/components/schemas/DeviceIDTechM130EncryptedKeyedDataRequest"
                  },
                  {
                    "$ref": "#/components/schemas/DeviceIngenicoTelium2ChipCardDataRequest"
                  },
                  {
                    "$ref": "#/components/schemas/DeviceIngenicoTelium2SwipeDataRequest"
                  },
                  {
                    "$ref": "#/components/schemas/DeviceIngenicoTelium2NFCDataRequest"
                  },
                  {
                    "$ref": "#/components/schemas/DeviceIngenicoTelium2KeyedDataRequest"
                  },
                  {
                    "$ref": "#/components/schemas/CreditCardSaleRequest"
                  },
                  {
                    "$ref": "#/components/schemas/CreditCardAuthorizeRequest"
                  },
                  {
                    "$ref": "#/components/schemas/CreditCardCaptureRequest"
                  },
                  {
                    "$ref": "#/components/schemas/CreditCardValidateRequest"
                  },
                  {
                    "$ref": "#/components/schemas/CreditCardCreditRequest"
                  },
                  {
                    "$ref": "#/components/schemas/CreditCardOfflineRequest"
                  },
                  {
                    "$ref": "#/components/schemas/CreditCardPaymentInFullPartialRequest"
                  },
                  {
                    "$ref": "#/components/schemas/VoidRequest"
                  },
                  {
                    "$ref": "#/components/schemas/RefundRequest"
                  },
                  {
                    "$ref": "#/components/schemas/ACHSaleRequest"
                  },
                  {
                    "$ref": "#/components/schemas/ACHCreditRequest"
                  },
                  {
                    "$ref": "#/components/schemas/CashSaleRequest"
                  },
                  {
                    "$ref": "#/components/schemas/AuthUsingCustomerVault"
                  },
                  {
                    "$ref": "#/components/schemas/CreditUsingCustomerVault"
                  },
                  {
                    "$ref": "#/components/schemas/OfflineUsingCustomerVault"
                  },
                  {
                    "$ref": "#/components/schemas/SaleUsingCustomerVault"
                  },
                  {
                    "$ref": "#/components/schemas/ValidateUsingCustomerVault"
                  },
                  {
                    "$ref": "#/components/schemas/CreateInvoice"
                  },
                  {
                    "$ref": "#/components/schemas/UpdateInvoice"
                  },
                  {
                    "$ref": "#/components/schemas/SendInvoice"
                  },
                  {
                    "$ref": "#/components/schemas/CloseInvoice"
                  },
                  {
                    "$ref": "#/components/schemas/CreateCustomer"
                  },
                  {
                    "$ref": "#/components/schemas/CreateCustomerDigitalWallet"
                  },
                  {
                    "$ref": "#/components/schemas/UpdateCustomer"
                  },
                  {
                    "$ref": "#/components/schemas/DeleteCustomer"
                  },
                  {
                    "$ref": "#/components/schemas/CreateBilling"
                  },
                  {
                    "$ref": "#/components/schemas/UpdateBilling"
                  },
                  {
                    "$ref": "#/components/schemas/DeleteBilling"
                  },
                  {
                    "$ref": "#/components/schemas/AddPlanWithNDayChargeRequest"
                  },
                  {
                    "$ref": "#/components/schemas/AddPlanWithMonthlyChargeRequest"
                  },
                  {
                    "$ref": "#/components/schemas/EditPlanWithNDayChargeRequest"
                  },
                  {
                    "$ref": "#/components/schemas/EditPlanWithMonthlyChargeRequest"
                  },
                  {
                    "$ref": "#/components/schemas/SubscribeToPlanUsingCreditCard"
                  },
                  {
                    "$ref": "#/components/schemas/SubscribeToPlanUsingACH"
                  },
                  {
                    "$ref": "#/components/schemas/AddCustomSubscriptionMonthlyChargeACH"
                  },
                  {
                    "$ref": "#/components/schemas/AddCustomSubscriptionMonthlyChargeCC"
                  },
                  {
                    "$ref": "#/components/schemas/AddCustomSubscriptionMonthlyChargeDigitalWallet"
                  },
                  {
                    "$ref": "#/components/schemas/AddCustomSubscriptionNDayChargeACH"
                  },
                  {
                    "$ref": "#/components/schemas/AddCustomSubscriptionNDayChargeCC"
                  },
                  {
                    "$ref": "#/components/schemas/UpdateSubscription"
                  },
                  {
                    "$ref": "#/components/schemas/DeleteSubscription"
                  },
                  {
                    "$ref": "#/components/schemas/TransactionUpdateRequest"
                  },
                  {
                    "$ref": "#/components/schemas/ACHTransactionUpdateRequest"
                  },
                  {
                    "$ref": "#/components/schemas/AddProductRequest"
                  },
                  {
                    "$ref": "#/components/schemas/UpdateProductRequest"
                  },
                  {
                    "$ref": "#/components/schemas/DeleteProductRequest"
                  }
                ]
              },
              "examples": {
                "CreditCardSale": {
                  "$ref": "#/components/examples/CreditCardSale"
                },
                "CreditCardDecline": {
                  "$ref": "#/components/examples/CreditCardDecline"
                },
                "CreditCardAuth": {
                  "$ref": "#/components/examples/CreditCardAuth"
                },
                "CreditCardValidate": {
                  "$ref": "#/components/examples/CreditCardValidate"
                },
                "CreditCardCredit": {
                  "$ref": "#/components/examples/CreditCardCredit"
                },
                "CreditCardOffline": {
                  "$ref": "#/components/examples/CreditCardOffline"
                },
                "CreditCardRefund": {
                  "$ref": "#/components/examples/CreditCardRefund"
                },
                "CreditCardVoid": {
                  "$ref": "#/components/examples/CreditCardVoid"
                },
                "CreditCardCapture": {
                  "$ref": "#/components/examples/CreditCardCapture"
                },
                "CreditCardPartialPaymentExample": {
                  "$ref": "#/components/examples/CreditCardPartialPaymentExample"
                },
                "CreditCardPartialPaymentInFullExample": {
                  "$ref": "#/components/examples/CreditCardPartialPaymentInFullExample"
                },
                "ACHSale": {
                  "$ref": "#/components/examples/ACHSale"
                },
                "ACHRefund": {
                  "$ref": "#/components/examples/ACHRefund"
                },
                "ACHVoid": {
                  "$ref": "#/components/examples/ACHVoid"
                },
                "CashSale": {
                  "$ref": "#/components/examples/CashSale"
                },
                "AuthUsingCustomerVault": {
                  "$ref": "#/components/examples/AuthUsingCustomerVault"
                },
                "CreditUsingCustomerVault": {
                  "$ref": "#/components/examples/CreditUsingCustomerVault"
                },
                "OfflineUsingCustomerVault": {
                  "$ref": "#/components/examples/OfflineUsingCustomerVault"
                },
                "SaleUsingCustomerVault": {
                  "$ref": "#/components/examples/SaleUsingCustomerVault"
                },
                "ValidateUsingCustomerVault": {
                  "$ref": "#/components/examples/ValidateUsingCustomerVault"
                },
                "CreateInvoice": {
                  "$ref": "#/components/examples/CreateInvoice"
                },
                "UpdateInvoice": {
                  "$ref": "#/components/examples/UpdateInvoice"
                },
                "SendInvoice": {
                  "$ref": "#/components/examples/SendInvoice"
                },
                "CloseInvoice": {
                  "$ref": "#/components/examples/CloseInvoice"
                },
                "Create Customer": {
                  "$ref": "#/components/examples/CreateCustomer"
                },
                "Create Customer with Digital Wallet": {
                  "$ref": "#/components/examples/CreateCustomerDigitalWallet"
                },
                "Update Customer": {
                  "$ref": "#/components/examples/UpdateCustomer"
                },
                "Create Billing": {
                  "$ref": "#/components/examples/CreateBilling"
                },
                "Update Billing": {
                  "$ref": "#/components/examples/UpdateBilling"
                },
                "Delete Billing": {
                  "$ref": "#/components/examples/DeleteBilling"
                },
                "Add Plan Daily Charge Request": {
                  "$ref": "#/components/examples/AddPlanNDayCharge"
                },
                "Add Plan With Monthly Charge Request": {
                  "$ref": "#/components/examples/AddPlanWithMonthlyCharge"
                },
                "Edit Plan Daily Charge Request": {
                  "$ref": "#/components/examples/EditPlanWithNDayCharge"
                },
                "Edit Plan With Monthly Charge Request": {
                  "$ref": "#/components/examples/EditPlanWithMonthlyCharge"
                },
                "Add Credit Card Subscription To Plan": {
                  "$ref": "#/components/examples/SubscribeToPlanUsingCreditCard"
                },
                "Add ACH Subscription To Plan": {
                  "$ref": "#/components/examples/SubscribeToPlanUsingACH"
                },
                "Add Custom Subscription Daily ACH": {
                  "$ref": "#/components/examples/AddCustomSubscriptionDailyACH"
                },
                "Add Custom Subscription Daily Credit Card": {
                  "$ref": "#/components/examples/AddCustomSubscriptionDailyCC"
                },
                "Add Custom Subscription Monthly ACH": {
                  "$ref": "#/components/examples/AddCustomSubscriptionMonthlyACH"
                },
                "Add Custom Subscription Monthly Credit Card": {
                  "$ref": "#/components/examples/AddCustomSubscriptionMonthlyCC"
                },
                "Add Custom Subscription Monthly Digital Wallet": {
                  "$ref": "#/components/examples/AddCustomSubscriptionDigitalWallet"
                },
                "Update Subscription": {
                  "$ref": "#/components/examples/UpdateSubscription"
                },
                "Update Subscription Plan Details": {
                  "$ref": "#/components/examples/UpdateSubscriptionPlanDetails"
                },
                "Delete Subscription": {
                  "$ref": "#/components/examples/DeleteSubscription"
                },
                "Update Transaction": {
                  "$ref": "#/components/examples/UpdateTransaction"
                },
                "Update ACH Transaction": {
                  "$ref": "#/components/examples/UpdateACHTransaction"
                },
                "Add Product": {
                  "$ref": "#/components/examples/AddProduct"
                },
                "Add Product With Image": {
                  "$ref": "#/components/examples/AddProductWithImage"
                },
                "Update Product": {
                  "$ref": "#/components/examples/UpdateProduct"
                },
                "Update Product Image": {
                  "$ref": "#/components/examples/UpdateProductImage"
                },
                "Delete Product": {
                  "$ref": "#/components/examples/DeleteProduct"
                },
                "Credential On File - Initial CIT Request": {
                  "$ref": "#/components/examples/CredentialOnFileInitial"
                },
                "Credential On File - MIT Request": {
                  "$ref": "#/components/examples/CredentialOnFileStored"
                },
                "Device Unencrypted Retail Magnetic Stripe Sale": {
                  "$ref": "#/components/examples/DeviceUnencryptedRetailMagneticStripeSale"
                },
                "DeviceIDTechM130EncryptedKeyedDataSale": {
                  "$ref": "#/components/examples/DeviceIDTechM130EncryptedKeyedDataSale"
                },
                "DeviceIDTechM130EncryptedSwipeDataSale": {
                  "$ref": "#/components/examples/DeviceIDTechM130EncryptedSwipeDataSale"
                },
                "DeviceIngenicoTelium2ChipCardSale": {
                  "$ref": "#/components/examples/DeviceIngenicoTelium2ChipCardSale"
                },
                "DeviceMagTekMagensaEncryptedMagneticStripeDataSale": {
                  "$ref": "#/components/examples/DeviceMagTekMagensaEncryptedMagneticStripeDataSale"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Operation response",
            "content": {
              "application/x-www-form-urlencoded": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/Response"
                    },
                    {
                      "$ref": "#/components/schemas/ProductResponse"
                    }
                  ]
                },
                "examples": {
                  "CreditCardSale": {
                    "$ref": "#/components/examples/CreditCardSaleResponse"
                  },
                  "CreditCardDeclined": {
                    "$ref": "#/components/examples/CreditCardDeclinedResponse"
                  },
                  "CreditCardAuth": {
                    "$ref": "#/components/examples/CreditCardAuthResponse"
                  },
                  "CreditCardValidate": {
                    "$ref": "#/components/examples/CreditCardValidateResponse"
                  },
                  "CreditCardCredit": {
                    "$ref": "#/components/examples/CreditCardCreditResponse"
                  },
                  "CreditCardOffline": {
                    "$ref": "#/components/examples/CreditCardOfflineResponse"
                  },
                  "CreditCardRefund": {
                    "$ref": "#/components/examples/CreditCardRefundResponse"
                  },
                  "CreditCardVoid": {
                    "$ref": "#/components/examples/CreditCardVoidResponse"
                  },
                  "CreditCardCapture": {
                    "$ref": "#/components/examples/CreditCardCaptureResponse"
                  },
                  "CreditCardPartialPayment": {
                    "$ref": "#/components/examples/CreditCardPartialPayment"
                  },
                  "CreditCardPartialPaymentInFull": {
                    "$ref": "#/components/examples/CreditCardPartialPaymentInFull"
                  },
                  "ACHSale": {
                    "$ref": "#/components/examples/ACHSaleResponse"
                  },
                  "ACHRefund": {
                    "$ref": "#/components/examples/ACHRefundResponse"
                  },
                  "ACHVoid": {
                    "$ref": "#/components/examples/ACHVoidResponse"
                  },
                  "CashSale": {
                    "$ref": "#/components/examples/CashSaleResponse"
                  },
                  "AuthUsingCustomerVaultResponse": {
                    "$ref": "#/components/examples/AuthUsingCustomerVaultResponse"
                  },
                  "SaleUsingCustomerVaultResponse": {
                    "$ref": "#/components/examples/SaleUsingCustomerVaultResponse"
                  },
                  "ValidateUsingCustomerVaultResponse": {
                    "$ref": "#/components/examples/ValidateUsingCustomerVaultResponse"
                  },
                  "InvoiceCreated": {
                    "$ref": "#/components/examples/InvoiceCreated"
                  },
                  "InvoiceUpdated": {
                    "$ref": "#/components/examples/InvoiceUpdated"
                  },
                  "InvoiceSent": {
                    "$ref": "#/components/examples/InvoiceSent"
                  },
                  "InvoiceClosed": {
                    "$ref": "#/components/examples/InvoiceClosed"
                  },
                  "InvoiceClosedAlready": {
                    "$ref": "#/components/examples/InvoiceClosedAlready"
                  },
                  "Billing Created": {
                    "$ref": "#/components/examples/BillingCreated"
                  },
                  "Billing Updated": {
                    "$ref": "#/components/examples/BillingUpdated"
                  },
                  "Billing Deleted": {
                    "$ref": "#/components/examples/BillingDeleted"
                  },
                  "Plan Created": {
                    "$ref": "#/components/examples/PlanCreated"
                  },
                  "Plan Updated": {
                    "$ref": "#/components/examples/PlanUpdated"
                  },
                  "Subscription Added": {
                    "$ref": "#/components/examples/SubscriptionAdded"
                  },
                  "Subscription Updated": {
                    "$ref": "#/components/examples/SubscriptionUpdated"
                  },
                  "Deleted Subscription": {
                    "$ref": "#/components/examples/SubscriptionDeleted"
                  },
                  "Declined Request": {
                    "$ref": "#/components/examples/DeclinedResponse"
                  },
                  "Transaction Updated": {
                    "$ref": "#/components/examples/TransactionUpdated"
                  },
                  "Customer Created": {
                    "$ref": "#/components/examples/CustomerCreated"
                  },
                  "Customer Delete": {
                    "$ref": "#/components/examples/CustomerDeleted"
                  },
                  "Customer Update Failed": {
                    "$ref": "#/components/examples/CustomerUpdateFailed"
                  },
                  "Product Added": {
                    "$ref": "#/components/examples/ProductAdded"
                  },
                  "Product Added Fail": {
                    "$ref": "#/components/examples/ProductAddedFail"
                  },
                  "Product Updated": {
                    "$ref": "#/components/examples/ProductUpdated"
                  },
                  "Product Update Failed": {
                    "$ref": "#/components/examples/ProductUpdatedFail"
                  },
                  "Product Deleted": {
                    "$ref": "#/components/examples/ProductDeleted"
                  },
                  "Credential On File - Recurring Approved": {
                    "$ref": "#/components/examples/CredentialOnFileApprovedResponse"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "Create Customer",
            "source": "curl --location 'https://sandbox.nmi.com/api/transact.php?security_key={security_key}' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'customer_vault=add_customer' \\\n--data-urlencode 'ccnumber=4111111111111111' \\\n--data-urlencode 'ccexp=1234'\n"
          },
          {
            "lang": "cURL",
            "label": "Update Customer",
            "source": "curl --location 'https://sandbox.nmi.com/api/transact.php?security_key={security_key}' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'customer_vault=update_customer' \\\n--data-urlencode 'customer_vault_id=561654836' \\\n--data-urlencode 'ccnumber=4111111111111111' \\\n--data-urlencode 'ccexp=1234'\n"
          },
          {
            "lang": "cURL",
            "label": "Delete Customer",
            "source": "curl --location 'https://sandbox.nmi.com/api/transact.php?security_key={security_key}' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'customer_vault=delete_customer' \\\n--data-urlencode 'customer_vault_id=561654836'\n"
          },
          {
            "lang": "cURL",
            "label": "Create Invoice",
            "source": "curl --location 'https://sandbox.nmi.com/api/transact.php?security_key={security_key}' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'invoicing=add_invoice' \\\n--data-urlencode 'amount=1.00' \\\n--data-urlencode 'email=test@example.com'\n"
          },
          {
            "lang": "cURL",
            "label": "Update Invoice",
            "source": "curl --location 'https://sandbox.nmi.com/api/transact.php?security_key={security_key}' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'invoicing=update_invoice' \\\n--data-urlencode 'invoice_id=8543919398' \\\n--data-urlencode 'amount=2.00'\n"
          },
          {
            "lang": "cURL",
            "label": "Send Invoice",
            "source": "curl --location 'https://sandbox.nmi.com/api/transact.php?security_key={security_key}' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'invoicing=send_invoice' \\\n--data-urlencode 'invoice_id=8543919398'\n"
          },
          {
            "lang": "cURL",
            "label": "Close Invoice",
            "source": "curl --location 'https://sandbox.nmi.com/api/transact.php?security_key={security_key}' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'invoicing=close_invoice' \\\n--data-urlencode 'invoice_id=8543919398'\n"
          }
        ]
      }
    }
  },
  "webhooks": {
    "transaction": {
      "post": {
        "tags": [
          "Webhook Events"
        ],
        "security": [],
        "summary": "Transaction Event",
        "description": "Sales, auths, captures, voids, refunds, and credits. Each transaction type can be filtered by successful, failed, and unknown transactions.",
        "operationId": "transactionEvent",
        "parameters": [
          {
            "$ref": "#/components/parameters/WebhookSignature"
          }
        ],
        "requestBody": {
          "description": "Event about a transaction",
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "event_id",
                  "event_type",
                  "event_body"
                ],
                "properties": {
                  "event_id": {
                    "type": "string",
                    "description": "Event ID"
                  },
                  "event_type": {
                    "type": "string",
                    "enum": [
                      "transaction.sale.success",
                      "transaction.sale.failure",
                      "transaction.sale.unknown",
                      "transaction.auth.success",
                      "transaction.auth.failure",
                      "transaction.auth.unknown",
                      "transaction.capture.success",
                      "transaction.capture.failure",
                      "transaction.capture.unknown",
                      "transaction.void.success",
                      "transaction.void.failure",
                      "transaction.void.unknown",
                      "transaction.refund.success",
                      "transaction.refund.failure",
                      "transaction.refund.unknown",
                      "transaction.credit.success",
                      "transaction.credit.failure",
                      "transaction.credit.unknown",
                      "transaction.validate.success",
                      "transaction.validate.failure",
                      "transaction.validate.unknown"
                    ],
                    "description": "Transaction Event Type"
                  },
                  "event_body": {
                    "type": "object",
                    "title": "Event Body",
                    "description": "Transaction Details",
                    "properties": {
                      "merchant": {
                        "$ref": "#/components/schemas/Merchant"
                      },
                      "features": {
                        "$ref": "#/components/schemas/Features"
                      },
                      "transaction_id": {
                        "type": "string",
                        "description": "Transaction ID"
                      },
                      "transaction_type": {
                        "type": "string",
                        "enum": [
                          "cc",
                          "ck",
                          "cs"
                        ],
                        "description": "Transaction Type (cc - credit card, ck - check, cs - cash sale)"
                      },
                      "condition": {
                        "type": "string",
                        "enum": [
                          "pending",
                          "pendingsettlement",
                          "in_progress",
                          "abandoned",
                          "failed",
                          "canceled",
                          "complete",
                          "unknown"
                        ],
                        "description": "Transaction condition"
                      },
                      "processor_id": {
                        "type": "string",
                        "description": "Processor ID"
                      },
                      "ponumber": {
                        "type": "string",
                        "description": "Purchase order number"
                      },
                      "order_description": {
                        "type": "string",
                        "description": "Order description"
                      },
                      "order_id": {
                        "type": "string",
                        "description": "Order ID"
                      },
                      "customerid": {
                        "type": "string",
                        "description": "Customer ID"
                      },
                      "customertaxid": {
                        "type": "string",
                        "description": "Customer tax ID"
                      },
                      "website": {
                        "type": "string",
                        "description": "Website URL"
                      },
                      "shipping": {
                        "type": "string",
                        "description": "Shipping amount"
                      },
                      "currency": {
                        "type": "string",
                        "description": "Currency code"
                      },
                      "tax": {
                        "type": "string",
                        "description": "Tax amount"
                      },
                      "surcharge": {
                        "type": "string",
                        "description": "Surcharge amount."
                      },
                      "convenience_fee": {
                        "type": "string",
                        "description": "Convenience Fee amount."
                      },
                      "misc_fee": {
                        "type": "string",
                        "description": "Miscellaneous Fee amount."
                      },
                      "misc_fee_name": {
                        "type": "string",
                        "description": "Miscellaneous Fee Name."
                      },
                      "cash_discount": {
                        "type": "string",
                        "description": "How much less a customer paid due to a cash discount. Format: x.xx, only applicable to cash and check transactions"
                      },
                      "tip": {
                        "type": "string",
                        "description": "The final tip amount, included in the transaction, associated with the purchase"
                      },
                      "requested_amount": {
                        "type": "string",
                        "format": "decimal",
                        "description": "Requested amount"
                      },
                      "shipping_carrier": {
                        "type": "string",
                        "enum": [
                          "ups",
                          "fedex",
                          "dhl",
                          "usps",
                          ""
                        ],
                        "description": "Shipping carrier."
                      },
                      "tracking_number": {
                        "type": "string",
                        "description": "Shipping tracking number."
                      },
                      "shipping_date": {
                        "type": "string",
                        "description": "Shipping date."
                      },
                      "partial_payment_id": {
                        "type": "string",
                        "description": "A numeric identifier which is used when submitting subsequent transactions."
                      },
                      "partial_payment_balance": {
                        "type": "string",
                        "description": "The payment's remaining balance."
                      },
                      "platform_id": {
                        "type": "string",
                        "description": "Platform ID associated with the transaction."
                      },
                      "authorization_code": {
                        "type": "string",
                        "description": "Transaction authorization code."
                      },
                      "social_security_number": {
                        "type": "string",
                        "description": "Customer's social security number."
                      },
                      "drivers_license_number": {
                        "type": "string",
                        "description": "Driver's license number."
                      },
                      "drivers_license_state": {
                        "type": "string",
                        "description": "The state that issued the customer's driver's license."
                      },
                      "drivers_license_dob": {
                        "type": "string",
                        "description": "Driver's license date of birth."
                      },
                      "duty_amount": {
                        "type": "string",
                        "description": "Duty amount."
                      },
                      "discount_amount": {
                        "type": "string",
                        "description": "Discount amount."
                      },
                      "national_tax_amount": {
                        "type": "string",
                        "description": "National tax amount."
                      },
                      "summary_commodity_code": {
                        "type": "string",
                        "description": "Summary commodity code."
                      },
                      "alternate_tax_amount": {
                        "type": "string",
                        "format": "decimal",
                        "description": "Alternate tax amount."
                      },
                      "vat_tax_amount": {
                        "type": "string",
                        "format": "decimal",
                        "description": "VAT tax amount."
                      },
                      "vat_tax_rate": {
                        "type": "string",
                        "format": "decimal",
                        "description": "VAT tax rate."
                      },
                      "billing_address": {
                        "$ref": "#/components/schemas/BillingAddress"
                      },
                      "shipping_address": {
                        "$ref": "#/components/schemas/ShippingAddress"
                      },
                      "card": {
                        "$ref": "#/components/schemas/CardDetails"
                      },
                      "check": {
                        "$ref": "#/components/schemas/CheckDetails"
                      },
                      "emv_meta_data": {
                        "$ref": "#/components/schemas/EmvMetaData"
                      },
                      "action": {
                        "$ref": "#/components/schemas/TransactionAction"
                      },
                      "merchant_defined_fields": {
                        "type": "object",
                        "description": "Merchant defined fields",
                        "additionalProperties": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              },
              "examples": {
                "AuthSuccess": {
                  "$ref": "#/components/examples/auth-success"
                },
                "AuthFailed": {
                  "$ref": "#/components/examples/auth-failed"
                },
                "CaptureSuccess": {
                  "$ref": "#/components/examples/capture-success"
                },
                "SaleSuccess": {
                  "$ref": "#/components/examples/sale-success"
                },
                "SaleFailure": {
                  "$ref": "#/components/examples/sale-failure"
                },
                "VoidSuccess": {
                  "$ref": "#/components/examples/void-success"
                },
                "RefundSuccess": {
                  "$ref": "#/components/examples/refund-success"
                },
                "ValidateSuccess": {
                  "$ref": "#/components/examples/validate-success"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Return a 200 status to indicate that the data was received successfully"
          }
        }
      }
    },
    "recurring": {
      "post": {
        "tags": [
          "Webhook Events"
        ],
        "security": [],
        "summary": "Recurring Event",
        "description": "Events related to Recurring transactions (plans, subscriptions).",
        "operationId": "recurringEvent",
        "parameters": [
          {
            "$ref": "#/components/parameters/WebhookSignature"
          }
        ],
        "requestBody": {
          "description": "Recurring Event",
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "event_id",
                  "event_type",
                  "event_body"
                ],
                "properties": {
                  "event_id": {
                    "type": "string",
                    "description": "Event ID"
                  },
                  "event_type": {
                    "type": "string",
                    "enum": [
                      "recurring.plan.add",
                      "recurring.plan.update",
                      "recurring.plan.delete",
                      "recurring.subscription.add",
                      "recurring.subscription.update",
                      "recurring.subscription.delete"
                    ],
                    "description": "Recurring Event Type"
                  },
                  "event_body": {
                    "$ref": "#/components/schemas/RecurringEventBody"
                  }
                }
              },
              "examples": {
                "PlanAdded": {
                  "$ref": "#/components/examples/plan-added"
                },
                "PlanUpdated": {
                  "$ref": "#/components/examples/plan-updated"
                },
                "PlanDeleted": {
                  "$ref": "#/components/examples/plan-deleted"
                },
                "SubscriptionAdded": {
                  "$ref": "#/components/examples/subscription-added"
                },
                "SubscriptionUpdated": {
                  "$ref": "#/components/examples/subscription-updated"
                },
                "SubscriptionDeleted": {
                  "$ref": "#/components/examples/subscription-deleted"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Return a 200 status to indicate that the data was received successfully"
          }
        }
      }
    },
    "settlement": {
      "post": {
        "tags": [
          "Webhook Events"
        ],
        "security": [],
        "summary": "Settlement Event",
        "description": "Events related to Settlement.",
        "operationId": "settlementEvent",
        "parameters": [
          {
            "$ref": "#/components/parameters/WebhookSignature"
          }
        ],
        "requestBody": {
          "description": "Settlement Event",
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "event_id",
                  "event_type",
                  "event_body"
                ],
                "properties": {
                  "event_id": {
                    "type": "string",
                    "description": "Event ID"
                  },
                  "event_type": {
                    "type": "string",
                    "enum": [
                      "settlement.batch.complete",
                      "settlement.batch.failure"
                    ],
                    "description": "Settlement Event Type"
                  },
                  "event_body": {
                    "$ref": "#/components/schemas/SettlementEventBody"
                  }
                }
              },
              "examples": {
                "SettlementCompleted": {
                  "$ref": "#/components/examples/settlement-completed"
                },
                "SettlementFailed": {
                  "$ref": "#/components/examples/settlement-failed"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Return a 200 status to indicate that the data was received successfully"
          }
        }
      }
    },
    "acu": {
      "post": {
        "tags": [
          "Webhook Events"
        ],
        "security": [],
        "summary": "Automatic Card Updater Event",
        "description": "Events related to Automatic Card Updater.",
        "operationId": "acuEvent",
        "parameters": [
          {
            "$ref": "#/components/parameters/WebhookSignature"
          }
        ],
        "requestBody": {
          "description": "Automatic Card Updater (ACU) Event",
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "event_id",
                  "event_type",
                  "event_body"
                ],
                "properties": {
                  "event_id": {
                    "type": "string",
                    "description": "Event ID"
                  },
                  "event_type": {
                    "type": "string",
                    "enum": [
                      "acu.summary.automaticallyupdated",
                      "acu.summary.contactcustomer",
                      "acu.summary.closedaccount"
                    ],
                    "description": "Automatic Card Updater (ACU) Event Type"
                  },
                  "event_body": {
                    "oneOf": [
                      {
                        "$ref": "#/components/schemas/AcuAutoUpdatedEventBody"
                      },
                      {
                        "$ref": "#/components/schemas/AcuClosedAccountEventBody"
                      },
                      {
                        "$ref": "#/components/schemas/AcuContactCustomerEventBody"
                      }
                    ]
                  }
                }
              },
              "examples": {
                "AcuAutomaticallyUpdated": {
                  "$ref": "#/components/examples/acu.summary.automaticallyupdated"
                },
                "AcuClosedAccount": {
                  "$ref": "#/components/examples/acu.summary.closedaccount"
                },
                "AcuContactCustomer": {
                  "$ref": "#/components/examples/acu.summary.contactcustomer"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Return a 200 status to indicate that the data was received successfully"
          }
        }
      }
    },
    "chargeback": {
      "post": {
        "tags": [
          "Webhook Events"
        ],
        "security": [],
        "summary": "Chargeback Event",
        "description": "Events related to Chargebacks.",
        "operationId": "chargebackEvent",
        "parameters": [
          {
            "$ref": "#/components/parameters/WebhookSignature"
          }
        ],
        "requestBody": {
          "description": "Chargeback Event",
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "event_id",
                  "event_type",
                  "event_body"
                ],
                "properties": {
                  "event_id": {
                    "type": "string",
                    "description": "Chargeback Event ID"
                  },
                  "event_type": {
                    "type": "string",
                    "enum": [
                      "chargeback.batch.complete"
                    ],
                    "description": "Chargeback Event Type"
                  },
                  "event_body": {
                    "type": "object",
                    "required": [
                      "merchant",
                      "processor",
                      "count",
                      "chargeback_amount",
                      "chargebacks"
                    ],
                    "description": "Chargeback Event Body",
                    "properties": {
                      "merchant": {
                        "$ref": "#/components/schemas/Merchant"
                      },
                      "processor": {
                        "type": "object",
                        "title": "Processor",
                        "description": "Processor information",
                        "required": [
                          "id",
                          "name",
                          "type"
                        ],
                        "properties": {
                          "id": {
                            "type": "string",
                            "description": "Processor ID"
                          },
                          "name": {
                            "type": "string",
                            "description": "Processor Name"
                          },
                          "type": {
                            "type": "string",
                            "description": "Processor Type"
                          }
                        }
                      },
                      "count": {
                        "type": "integer",
                        "description": "Number of chargebacks"
                      },
                      "chargeback_amount": {
                        "type": "string",
                        "description": "Total chargebacks amount"
                      },
                      "chargebacks": {
                        "type": "array",
                        "title": "Chargebacks",
                        "description": "List of chargebacks",
                        "items": {
                          "type": "object",
                          "required": [
                            "id",
                            "date",
                            "customer_name",
                            "cc_number",
                            "amount",
                            "reason"
                          ],
                          "properties": {
                            "id": {
                              "type": "string",
                              "description": "Chargeback ID"
                            },
                            "date": {
                              "type": "string",
                              "description": "Chargeback Date"
                            },
                            "customer_name": {
                              "type": "string",
                              "description": "Customer Name"
                            },
                            "cc_number": {
                              "type": "string",
                              "description": "Masked Credit Card Number"
                            },
                            "amount": {
                              "type": "string",
                              "description": "Chargeback Amount"
                            },
                            "reason": {
                              "type": "string",
                              "description": "Chargeback Reason"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              "examples": {
                "ChargebackBatchCompleted": {
                  "$ref": "#/components/examples/chargeback.batch.complete"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Return a 200 status to indicate that the data was received successfully"
          }
        }
      }
    }
  },
  "components": {
    "examples": {
      "CreditCardSale": {
        "summary": "Credit Card Sale",
        "description": "Create credit card sale transaction",
        "value": {
          "type": "sale",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "amount": "1",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardDecline": {
        "summary": "Credit Card Decline",
        "description": "Decline a credit card sale transaction",
        "value": {
          "type": "sale",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "amount": "0.5",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardAuth": {
        "summary": "Credit Card Authorize",
        "description": "Authorize credit card transaction",
        "value": {
          "type": "auth",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "amount": "10",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardValidate": {
        "summary": "Validate Credit Card",
        "description": "Validate credit card transaction",
        "value": {
          "type": "validate",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardCredit": {
        "summary": "Credit Card Credit Transaction",
        "description": "Credit the credit card with the given amount",
        "value": {
          "type": "sale",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "amount": "1",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardOffline": {
        "summary": "Credit Card Offline Transaction",
        "description": "Create credit card offline transaction",
        "value": {
          "type": "offline",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "amount": "10",
          "authorization_code": "123456",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardRefund": {
        "summary": "Refund Credit Card Transaction",
        "description": "Refund full amount of a credit card transaction",
        "value": {
          "type": "refund",
          "transactionid": "8564830211",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardVoid": {
        "summary": "Void Credit Card Transaction",
        "description": "Void credit card transaction",
        "value": {
          "type": "void",
          "transactionid": "8564830211",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardCapture": {
        "summary": "Capture Credit Card Transaction",
        "description": "Capture credit card transaction",
        "value": {
          "type": "capture",
          "transactionid": "8564830211",
          "amount": "10",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardPartialPaymentExample": {
        "summary": "Credit Card Partial Payment",
        "description": "Create a partial payment for credit card sale transaction",
        "value": {
          "type": "sale",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "amount": "100",
          "partial_payment_id": "123456789",
          "partial_payments": "settle_partial",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardPartialPaymentInFullExample": {
        "summary": "Partial Payment Pay in Full",
        "description": "Pay partial payment in full",
        "value": {
          "type": "complete_partial_payment",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "amount": "100",
          "partial_payment_id": "123456789",
          "partial_payments": "payment_in_full",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "ACHSale": {
        "summary": "ACH Sale",
        "description": "Create ACH sale transaction",
        "value": {
          "type": "sale",
          "payment": "check",
          "checkname": "Smith",
          "checkaba": "123123123",
          "checkaccount": "123123123",
          "amount": "10",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "ACHRefund": {
        "summary": "Refund ACH Transaction",
        "description": "Refund full amount of an ACH transaction",
        "value": {
          "type": "refund",
          "transactionid": "8564830211",
          "payment": "check",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "ACHVoid": {
        "summary": "Void ACH Transaction",
        "description": "Void ACH transaction",
        "value": {
          "type": "void",
          "transactionid": "8564875333",
          "payment": "check",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CashSale": {
        "summary": "Cash Sale",
        "description": "Create cash sale transaction",
        "value": {
          "type": "sale",
          "payment": "cash",
          "amount": "10",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AuthUsingCustomerVault": {
        "summary": "Authorize using Customer Vault",
        "description": "Authorize transaction using Customer Vault",
        "value": {
          "type": "auth",
          "customer_vault_id": "TestCustomer1",
          "amount": "10",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditUsingCustomerVault": {
        "summary": "Credit using Customer Vault",
        "description": "Credit transaction using Customer Vault",
        "value": {
          "type": "credit",
          "customer_vault_id": "TestCustomer1",
          "amount": "10",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "OfflineUsingCustomerVault": {
        "summary": "Offline transaction using Customer Vault",
        "description": "Offline transaction using Customer Vault",
        "value": {
          "type": "offline",
          "customer_vault_id": "TestCustomer1",
          "amount": "10",
          "authorization_code": "123456",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "SaleUsingCustomerVault": {
        "summary": "Sale using Customer Vault",
        "description": "Process Sale transaction using Customer Vault",
        "value": {
          "type": "sale",
          "customer_vault_id": "TestCustomer1",
          "amount": "10",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "ValidateUsingCustomerVault": {
        "summary": "Validate using Customer Vault",
        "description": "Validate using Customer Vault",
        "value": {
          "type": "validate",
          "customer_vault_id": "TestCustomer1",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreateInvoice": {
        "summary": "Create Invoice",
        "description": "Create Invoice for test@example.com ($1.0)",
        "value": {
          "invoicing": "add_invoice",
          "amount": "1.0",
          "email": "test@example.com",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "UpdateInvoice": {
        "summary": "Update Invoice",
        "description": "Change amount to $2.0",
        "value": {
          "invoicing": "update_invoice",
          "invoice_id": "8543919398",
          "amount": "2.0",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "SendInvoice": {
        "summary": "Send Invoice",
        "description": "Send the given invoice to a billing email",
        "value": {
          "invoicing": "send_invoice",
          "invoice_id": "8543919398",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CloseInvoice": {
        "summary": "Close Invoice",
        "description": "Close the given invoice",
        "value": {
          "invoicing": "close_invoice",
          "invoice_id": "8543919398",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreateCustomer": {
        "summary": "Create Customer",
        "description": "Create Customer",
        "value": {
          "customer_vault": "add_customer",
          "ccnumber": "4111111111111111",
          "ccexp": "1234",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreateCustomerDigitalWallet": {
        "summary": "Create Customer with Digital Wallet",
        "description": "Create Customer with Digital Wallet",
        "value": {
          "customer_vault": "add_customer",
          "applepay_payment_data": "6c48735c2f387575713056494a62726d52536...654e6b4",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "UpdateCustomer": {
        "summary": "Update Customer",
        "description": "Update Customer",
        "value": {
          "customer_vault": "update_customer",
          "customer_vault_id": "123456789",
          "ccnumber": "4111111111111111",
          "ccexp": "1234",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreateBilling": {
        "summary": "Create Billing",
        "description": "Create Billing",
        "value": {
          "customer_vault": "add_billing",
          "customer_vault_id": "1622014144",
          "billing_id": "BillingId1",
          "ccnumber": "4111111111111111",
          "ccexp": "1234",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "UpdateBilling": {
        "summary": "Update Billing",
        "description": "Update Billing",
        "value": {
          "customer_vault": "update_billing",
          "customer_vault_id": "1622014144",
          "billing_id": "BillingId1",
          "ccnumber": "4111111111111111",
          "ccexp": "1234",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "DeleteBilling": {
        "summary": "Delete Billing",
        "description": "Delete Billing",
        "value": {
          "customer_vault": "delete_billing",
          "customer_vault_id": "1622014144",
          "billing_id": "BillingId1",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AddPlanNDayCharge": {
        "summary": "Add Plan With Daily Charge",
        "description": "Add a recurring plan that subscriptions can be added to in the future.",
        "value": {
          "recurring": "add_plan",
          "plan_payments": 0,
          "plan_amount": 230.22,
          "plan_name": "Plan 1 Name",
          "plan_id": "223",
          "day_frequency": 31,
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AddPlanWithMonthlyCharge": {
        "summary": "Add Plan With Monthly Charge",
        "description": "Add a recurring plan that subscriptions can be added to in the future.",
        "value": {
          "recurring": "add_plan",
          "plan_payments": 2,
          "plan_amount": 323.33,
          "plan_name": "Plan 2 Name",
          "plan_id": "223",
          "month_frequency": 2,
          "day_of_month": 4,
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "EditPlanWithNDayCharge": {
        "summary": "Edit an existing recurring plan With Daily Charge",
        "description": "Edit an existing recurring plan.",
        "value": {
          "recurring": "edit_plan",
          "current_plan_id": "21",
          "plan_payments": 2,
          "plan_amount": 323.33,
          "plan_name": "Plan 2 Name",
          "plan_id": "21",
          "month_frequency": 2,
          "day_of_month": 4,
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "EditPlanWithMonthlyCharge": {
        "summary": "Edit an existing recurring plan With Daily Charge option",
        "description": "Edit an existing recurring plan.",
        "value": {
          "recurring": "edit_plan",
          "current_plan_id": "21",
          "plan_payments": 0,
          "plan_amount": 230.22,
          "plan_name": "Plan 1 Name",
          "plan_id": "21",
          "day_frequency": 31,
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "SubscribeToPlanUsingCreditCard": {
        "summary": "Add a Subscription to Plan Using Credit Card ",
        "description": "Add a Subscription to an Existing Plan using Credit Card",
        "value": {
          "recurring": "add_subscription",
          "plan_id": "12345",
          "start_date": "20230901",
          "ccnumber": "4111111111111111",
          "ccexp": "1225",
          "first_name": "John",
          "last_name": "Doe",
          "address1": "123 Main St",
          "city": "New York",
          "state": "NY",
          "zip": "10001",
          "country": "US",
          "phone": "5555555555",
          "email": "johndoe@example.com",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "SubscribeToPlanUsingACH": {
        "summary": "Add a Subscription to Plan Using ACH",
        "description": "Add a Subscription to an Existing Plan Using ACH",
        "value": {
          "recurring": "add_subscription",
          "plan_id": "12345",
          "start_date": "20230901",
          "checkname": "John Doe",
          "checkaccount": "123123123",
          "checkaba": "123123123",
          "payment": "check",
          "first_name": "John",
          "last_name": "Doe",
          "address1": "123 Main St",
          "city": "New York",
          "state": "NY",
          "zip": "10001",
          "country": "US",
          "phone": "5555555555",
          "email": "johndoe@example.com",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AddCustomSubscriptionDailyACH": {
        "summary": "Adding a Custom Daily Subscription Using ACH",
        "description": "Adding a Custom (NOT associated with an existing plan) Daily Charge Subscription Using ACH",
        "value": {
          "recurring": "add_subscription",
          "plan_payments": 0,
          "plan_amount": 22.22,
          "start_date": "20230901",
          "checkname": "John Doe",
          "day_frequency": 31,
          "checkaccount": "123123123",
          "checkaba": "123123123",
          "payment": "check",
          "first_name": "John",
          "last_name": "Doe",
          "address1": "123 Main St",
          "city": "New York",
          "state": "NY",
          "zip": "10001",
          "country": "US",
          "phone": "5555555555",
          "email": "johndoe@example.com",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AddCustomSubscriptionDailyCC": {
        "summary": "Adding a Custom Daily Subscription Using Credit Card",
        "description": "Adding a Custom (NOT associated with an existing plan) Daily Charge Subscription Using Credit Card",
        "value": {
          "recurring": "add_subscription",
          "plan_payments": 0,
          "plan_amount": 11.12,
          "start_date": "20230901",
          "day_frequency": 31,
          "ccnumber": "4111111111111111",
          "ccexp": "1225",
          "first_name": "John",
          "last_name": "Doe",
          "address1": "123 Main St",
          "city": "New York",
          "state": "NY",
          "zip": "10001",
          "country": "US",
          "phone": "5555555555",
          "email": "johndoe@example.com",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AddCustomSubscriptionMonthlyACH": {
        "summary": "Adding a Custom Monthly Subscription Using ACH",
        "description": "Adding a Custom (NOT associated with an existing plan) Monthly Charge Subscription Using ACH",
        "value": {
          "recurring": "add_subscription",
          "plan_payments": 0,
          "plan_amount": 22.22,
          "start_date": "20230901",
          "checkname": "John Doe",
          "month_frequency": 2,
          "day_of_month": 4,
          "checkaccount": "123123123",
          "checkaba": "123123123",
          "payment": "check",
          "first_name": "John",
          "last_name": "Doe",
          "address1": "123 Main St",
          "city": "New York",
          "state": "NY",
          "zip": "10001",
          "country": "US",
          "phone": "5555555555",
          "email": "johndoe@example.com",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AddCustomSubscriptionMonthlyCC": {
        "summary": "Adding a Custom Monthly Subscription Using Credit Card",
        "description": "Adding a Custom (NOT associated with an existing plan) Monthly Charge Subscription Using Credit Card",
        "value": {
          "recurring": "add_subscription",
          "plan_payments": 0,
          "plan_amount": 11.12,
          "start_date": "20230901",
          "month_frequency": 2,
          "day_of_month": 4,
          "ccnumber": "4111111111111111",
          "ccexp": "1225",
          "first_name": "John",
          "last_name": "Doe",
          "address1": "123 Main St",
          "city": "New York",
          "state": "NY",
          "zip": "10001",
          "country": "US",
          "phone": "5555555555",
          "email": "johndoe@example.com",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AddCustomSubscriptionDigitalWallet": {
        "summary": "Adding a Custom Monthly Subscription Using Digital Wallet",
        "description": "Adding a Custom (NOT associated with an existing plan) Monthly Charge Subscription Using Digital Wallet",
        "value": {
          "recurring": "add_subscription",
          "plan_payments": 0,
          "plan_amount": 11.12,
          "start_date": "20230901",
          "month_frequency": 2,
          "day_of_month": 4,
          "applepay_payment_data": "7b2264617461223a2239434c57325...a6a6b7",
          "first_name": "John",
          "last_name": "Doe",
          "address1": "123 Main St",
          "city": "New York",
          "state": "NY",
          "zip": "10001",
          "country": "US",
          "phone": "5555555555",
          "email": "johndoe@example.com",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "UpdateSubscription": {
        "summary": "Update Subscription",
        "description": "Update Subscription",
        "value": {
          "recurring": "update_subscription",
          "subscription_id": "8549996066",
          "plan_amount": 33.33,
          "email": "johndoe2@example.com",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "UpdateSubscriptionPlanDetails": {
        "summary": "Update Subscription Plan Details",
        "description": "Update a Custom Subscription's Plan Details",
        "value": {
          "recurring": "update_subscription",
          "subscription_id": "8549996066",
          "plan_amount": 44.33,
          "day_frequency": 22,
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "DeleteSubscription": {
        "summary": "Delete a Subscription",
        "description": "Delete a Subscription",
        "value": {
          "recurring": "delete_subscription",
          "subscription_id": "8301923480",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "UpdateTransaction": {
        "summary": "Update Transaction",
        "description": "Update transaction - change tracking number",
        "value": {
          "type": "update",
          "transactionid": "8543919398",
          "tracking_number": 123456,
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "UpdateACHTransaction": {
        "summary": "Update ACH Transaction",
        "description": "Update ACH transaction - change tracking number",
        "value": {
          "type": "update",
          "transactionid": "8543919398",
          "payment": "check",
          "tracking_number": 123456,
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AddProduct": {
        "summary": "Add Product",
        "description": "Add new product",
        "value": {
          "products": "add_product",
          "product_sku": "32463230005",
          "product_description": "Phone Case",
          "product_cost": 15.5,
          "product_currency": "USD",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "AddProductWithImage": {
        "summary": "Add Product With Image",
        "description": "Add new product with image",
        "value": {
          "products": "add_product",
          "product_sku": "32463230005",
          "product_description": "Phone Case",
          "product_cost": 15.5,
          "product_currency": "USD",
          "product_image_data": "base64_encoded_content",
          "product_image_name": "product-123.png",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "UpdateProduct": {
        "summary": "Update Product",
        "description": "Update product - set new description",
        "value": {
          "products": "update_product",
          "product_id": "5538585252",
          "description": "1 Gallon Milk",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "UpdateProductImage": {
        "summary": "Update Product Image",
        "description": "Update product image",
        "value": {
          "products": "update_product",
          "product_id": "5538585252",
          "product_image_data": "base64_encoded_content",
          "product_image_name": "product-123.jpg",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "DeleteProduct": {
        "summary": "Update Product",
        "description": "Update product - set new description",
        "value": {
          "products": "delete_product",
          "product_id": "5538585252",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CredentialOnFileInitial": {
        "summary": "COF - Recurring - initial CIT request",
        "description": "Credential on file -  initial recurring sale. Store this transaction for the follow up request",
        "value": {
          "type": "sale",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "amount": "1",
          "billing_method": "initial_recurring",
          "initiated_by": "customer",
          "stored_credential_indicator": "stored",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CredentialOnFileStored": {
        "summary": "COF - process MIT request",
        "description": "Credential on file - process recurring sale using earlier stored transaction",
        "value": {
          "type": "sale",
          "ccnumber": "4111111111111111",
          "ccexp": "1025",
          "cvv": "123",
          "amount": "1",
          "billing_method": "recurring",
          "initiated_by": "merchant",
          "stored_credential_indicator": "used",
          "initial_transaction_id": "8584341675",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "DeviceUnencryptedRetailMagneticStripeSale": {
        "summary": "Device - Unencrypted Retail Magnetic Stripe Data Sale",
        "description": "Passing Unencrypted Retail Magnetic Stripe Data",
        "value": {
          "type": "sale",
          "track_1": "%B4111111111111111^TESTCARD/TEST^221200000000000000000000000?",
          "track_2": ";4111111111111111=22120000000000000000?",
          "amount": "1",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "DeviceIDTechM130EncryptedKeyedDataSale": {
        "summary": "Device - IDTech M130 Encrypted Keyed Data",
        "description": "Passing IDTech M130 Encrypted Keyed Data",
        "value": {
          "type": "sale",
          "encrypted_data": "02B600C0170018009292;4111********1111=2012?*94CAD63AE3265BE87195E1E8AED5B61740B0D5F687869F1CDE175F44679517680000000000000000000000000000000000000000363138543539333533306299490077000A80001B158303",
          "amount": "1",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "DeviceIDTechM130EncryptedSwipeDataSale": {
        "summary": "Device - IDTech M130 Encrypted Swipe Data",
        "description": "Passing IDTech M130 Encrypted Swipe Data",
        "value": {
          "type": "sale",
          "encrypted_track_1": "02B600C0170018009292;4111********1111=2012?*94CAD63AE3265BE87195E1E8AED5B61740B0D5F687869F1CDE175F44679517680000000000000000000000000000000000000000363138543539333533306299490077000A80001B158303",
          "encrypted_track_2": "9A3B00F949A22819A0AC838830CE623C606E5F80D14A2715D97ED2FC62F6A9A327C2408D6D413940",
          "encrypted_ksn": "FFFF98765400002001D9",
          "amount": "1",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "DeviceIngenicoTelium2ChipCardSale": {
        "summary": "Device - Ingenico Telium 2",
        "description": "Ingenico Telium 2 Chip Card Data",
        "value": {
          "entry_mode": "emv_icc",
          "emv_auth_request_data": "4F:a000000025010801;50:414d45524943414e2045585052455353;57:374245000001007d2001201000000000000000;82:3c00;84:a000000025010801;95:0080008000;9A:160301;9B:e800;9C:00;5F2A:0840;5F34:00;9F02:000000003000;9F03:000000000000;9F06:a000000025010801;9F09:008c;9F10:06020103a42002;9F1A:0840;9F1B:00000000;9F1E:3831303739333034;9F21:170841;9F26:ddb162d61cdaf956;9F27:80;9F33:e0f8c8;9F34:440302;9F35:22;9F36:0001;9F37:84791e8e;9F39:05;9F40:6000f0a001;9F41:00000517;9F53:52;FF1F:3b3337343234353030303030313030373d3230303132303130303030303030303030303030303f;FF21:46464646393837363534303030303230303144393a323a303034303a3941334230304639343941323238313941304143383338383330434536323343363036453546383044313441323731354439374544324643363246364139413332374332343038443644343133393430;",
          "emv_device": "ingenico_rba",
          "verification_method": "offline_pin",
          "encrypted_ksn": "FFFF98765400002001D9",
          "encrypted_track_2": "9A3B00F949A22819A0AC838830CE623C606E5F80D14A2715D97ED2FC62F6A9A327C2408D6D413940",
          "amount": "1",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "DeviceMagTekMagensaEncryptedMagneticStripeDataSale": {
        "summary": "Device - MagTek Magensa Encrypted Magnetic Stripe Data",
        "description": "MagTek Magensa Encrypted Magnetic Stripe Data",
        "value": {
          "type": "sale",
          "amount": "1.00",
          "magnesafe_track_1": "EB62C5E3904971A24447A0E7D5F8660025D8CDEC966A149F22BB39FC198C3AC63CC3C117090548B300CD2EAAAD5AD9C16BD0EB71C31B02B228C11118EA950F8C",
          "magnesafe_track_2": "6B960E3C44EE5F598822E5620802F4F55291C941C9D5DBC1B4CC2BC0E9F5A7D6F0DD4FD13B22D11A",
          "magnesafe_magneprint": "10D60457FB57387EEB561139B04A022D9D4171B158FB176D38389FCD18B5A7D1E2D111C12117BBC0988475B42AEB8953A33112C0C6D1F3E7C",
          "magnesafe_magneprint_status": "61403000",
          "magnesafe_ksn": "9011330B37C55911104D",
          "security_key": "6457Thfj624V5r7WUwc5v6a68Zsd6YEm"
        }
      },
      "CreditCardSaleResponse": {
        "summary": "Credit Card Sale Transaction",
        "description": "A successful credit card sale transaction",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "123456",
          "transactionid": "8558644015",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "sale",
          "response_code": "100"
        }
      },
      "CreditCardDeclinedResponse": {
        "summary": "Credit Card Transaction Declined",
        "description": "Credit card transaction has been declined",
        "value": {
          "response": "2",
          "responsetext": "DECLINE",
          "authcode": "",
          "transactionid": "8558718571",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "sale",
          "response_code": "200"
        }
      },
      "CreditCardAuthResponse": {
        "summary": "Credit Card Transaction Authorized",
        "description": "Credit card transaction with the given amount has been successfully authorized",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "123456",
          "transactionid": "8558644015",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "auth",
          "response_code": "100"
        }
      },
      "CreditCardValidateResponse": {
        "summary": "Credit Card Transaction Validated",
        "description": "Credit card transaction has been successfully validated",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "",
          "transactionid": "8559444951",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "validate",
          "response_code": "100"
        }
      },
      "CreditCardCreditResponse": {
        "summary": "Credit Card Transaction Credited",
        "description": "Amount has been credited to the credit card",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "",
          "transactionid": "8559453367",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "credit",
          "response_code": "100"
        }
      },
      "CreditCardOfflineResponse": {
        "summary": "Credit Card Offline Transaction Created",
        "description": "Offline credit card transaction has been created",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "",
          "transactionid": "8558644018",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "offline",
          "response_code": "100"
        }
      },
      "CreditCardRefundResponse": {
        "summary": "Credit Card Transaction Refunded",
        "description": "Credit card transaction has been successfully refunded",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "123456",
          "transactionid": "8564972358",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "refund",
          "response_code": "100"
        }
      },
      "CreditCardVoidResponse": {
        "summary": "Credit Card Transaction Voided",
        "description": "Credit card transaction has been successfully voided",
        "value": {
          "response": "1",
          "responsetext": "Transaction Void Successful",
          "authcode": "123456",
          "transactionid": "8564830211",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "void",
          "response_code": "100"
        }
      },
      "CreditCardCaptureResponse": {
        "summary": "Credit Card Transaction Captured",
        "description": "Credit card transaction with the given amount has been successfully captured",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "123456",
          "transactionid": "8564830211",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "capture",
          "response_code": "100"
        }
      },
      "CreditCardPartialPayment": {
        "summary": "Credit Card Partial Payment",
        "description": "Partial payment for credit card sale transaction created",
        "value": {
          "response": "1",
          "responsetext": "APPROVED",
          "authcode": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "sale",
          "response_code": "100",
          "partial_payment_id": "123456789",
          "partial_payment_balance": "70",
          "amount_authorized": "30"
        }
      },
      "CreditCardPartialPaymentInFull": {
        "summary": "Partial Payment Pay in Full",
        "description": "Partial payment payed in full",
        "value": {
          "response": "1",
          "responsetext": "APPROVED",
          "authcode": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "complete_partial_payment",
          "response_code": "100",
          "partial_payment_id": "123456789",
          "partial_payment_balance": "0",
          "amount_authorized": "70"
        }
      },
      "ACHSaleResponse": {
        "summary": "ACH Sale Transaction",
        "description": "A successful ACH sale transaction",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "123456",
          "transactionid": "8561989100",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "sale",
          "response_code": "100"
        }
      },
      "ACHRefundResponse": {
        "summary": "ACH Transaction Refunded",
        "description": "ACH transaction has been successfully refunded",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "123456",
          "transactionid": "8564972359",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "refund",
          "response_code": "100"
        }
      },
      "ACHVoidResponse": {
        "summary": "ACH Transaction Voided",
        "description": "ACH transaction has been successfully voided",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "123456",
          "transactionid": "8564875333",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "void",
          "response_code": "100"
        }
      },
      "CashSaleResponse": {
        "summary": "Cash Sale Transaction",
        "description": "A successful cash sale transaction",
        "value": {
          "response": "1",
          "responsetext": "APPROVED",
          "authcode": "",
          "transactionid": "8561993922",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "sale",
          "response_code": "100"
        }
      },
      "AuthUsingCustomerVaultResponse": {
        "summary": "Authorize using Customer Vault",
        "description": "Authorize transaction using Customer Vault",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "123456",
          "transactionid": "8567955102",
          "avsresponse": "N",
          "cvvresponse": "",
          "orderid": "",
          "type": "auth",
          "response_code": "100",
          "customer_vault_id": "2007428916"
        }
      },
      "SaleUsingCustomerVaultResponse": {
        "summary": "Sale using Customer Vault",
        "description": "Process Sale transaction using Customer Vault",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "123456",
          "transactionid": "8567955102",
          "avsresponse": "N",
          "cvvresponse": "",
          "orderid": "",
          "type": "sale",
          "response_code": "100",
          "customer_vault_id": "2007428916"
        }
      },
      "ValidateUsingCustomerVaultResponse": {
        "summary": "Validate using Customer Vault",
        "description": "Validate using Customer Vault",
        "value": {
          "response": "1",
          "responsetext": "SUCCESS",
          "authcode": "",
          "transactionid": "8567973031",
          "avsresponse": "N",
          "cvvresponse": "",
          "orderid": "",
          "type": "validate",
          "response_code": "100",
          "customer_vault_id": "2007428916"
        }
      },
      "InvoiceCreated": {
        "summary": "Invoice Created",
        "description": "Invoice has been created successfully",
        "value": {
          "response": "1",
          "responsetext": "Invoice Sent To test@example.com",
          "authcode": "",
          "invoice_id": "8543919398",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "add_invoice",
          "response_code": "100",
          "payment_terms": "Due Upon Receipt"
        }
      },
      "InvoiceUpdated": {
        "summary": "Invoice Updated",
        "description": "Invoice has been updated successfully",
        "value": {
          "response": "1",
          "responsetext": "Invoice Updated Successfully",
          "authcode": "",
          "invoice_id": "8543919398",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "update_invoice",
          "response_code": "100",
          "payment_terms": "Due Upon Receipt"
        }
      },
      "InvoiceSent": {
        "summary": "Invoice Sent",
        "description": "Invoice has been sent successfully",
        "value": {
          "response": "1",
          "responsetext": "Invoice Sent To test@example.com",
          "authcode": "",
          "invoice_id": "8543919398",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "send_invoice",
          "response_code": "100"
        }
      },
      "InvoiceClosed": {
        "summary": "Invoice Closed",
        "description": "Invoice has been closed successfully",
        "value": {
          "response": "1",
          "responsetext": "Invoice Closed Successfully",
          "authcode": "",
          "invoice_id": "8543919398",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "close_invoice",
          "response_code": "100"
        }
      },
      "InvoiceClosedAlready": {
        "summary": "Error - Invoice Closed Already",
        "description": "[ERROR] Invoice is Closed already",
        "value": {
          "response": "3",
          "responsetext": "Invoice is already closed. REFID:1122290008",
          "authcode": "",
          "invoice_id": "8543919398",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "close_invoice",
          "response_code": "300"
        }
      },
      "BillingCreated": {
        "summary": "Billing Information Created",
        "description": "Billing Information has been created",
        "value": {
          "response": "1",
          "responsetext": "Billing Information Added",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100",
          "customer_vault_id": "1622014144"
        }
      },
      "BillingUpdated": {
        "summary": "Billing Information Updated",
        "description": "Billing Information has been updated",
        "value": {
          "response": "1",
          "responsetext": "Billing Information Updated",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100",
          "customer_vault_id": "1622014144"
        }
      },
      "BillingDeleted": {
        "summary": "Billing Information Deleted",
        "description": "Billing Information has been deleted",
        "value": {
          "response": "1",
          "responsetext": "Billing Information Deleted",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100",
          "customer_vault_id": "1622014144"
        }
      },
      "PlanCreated": {
        "summary": "Plan Created",
        "description": "Plan has been created successfully",
        "value": {
          "response": "1",
          "responsetext": "Plan Added",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100"
        }
      },
      "PlanUpdated": {
        "summary": "Plan Updated",
        "description": "Plan has been updated successfully",
        "value": {
          "response": "1",
          "responsetext": "Plan Edit Successful",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100"
        }
      },
      "SubscriptionAdded": {
        "summary": "Subscription Added",
        "description": "Subscription Added",
        "value": {
          "response": "1",
          "responsetext": "Subscription added",
          "authcode": "",
          "transactionid": "8548988955",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100",
          "subscription_id": "8548988955"
        }
      },
      "SubscriptionUpdated": {
        "summary": "Subscription Updated",
        "description": "Subscription Added",
        "value": {
          "response": "1",
          "responsetext": "Subscription Updated",
          "authcode": "",
          "transactionid": "8548988955",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100",
          "subscription_id": "8548988955"
        }
      },
      "SubscriptionDeleted": {
        "summary": "Subscription Deleted",
        "description": "The Given Subscription Deleted",
        "value": {
          "response": "1",
          "responsetext": "Recurring Transaction Deleted",
          "authcode": "",
          "transactionid": "8550030567",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100",
          "subscription_id": "8550030567"
        }
      },
      "DeclinedResponse": {
        "summary": "Failed to Create Plan",
        "description": "Failed to create a new plan",
        "value": {
          "response": "3",
          "responsetext": "There is already a plan using the SKU you have specified. REFID:1203610329",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100"
        }
      },
      "TransactionUpdated": {
        "summary": "Transaction Updated",
        "description": "Transaction has been updated successfully",
        "value": {
          "response": "1",
          "responsetext": "Transaction Updated Successfully",
          "authcode": "123456",
          "transactionid": "8558644015",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "123456789",
          "response_code": "100"
        }
      },
      "CustomerCreated": {
        "summary": "Customer Created",
        "description": "Customer has been created successfully",
        "value": {
          "response": "1",
          "responsetext": "Customer Added",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100",
          "customer_vault_id": "1184146651"
        }
      },
      "CustomerDeleted": {
        "summary": "Customer Deleted",
        "description": "Customer has been deleted successfully",
        "value": {
          "response": "1",
          "responsetext": "Customer Deleted",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "100"
        }
      },
      "CustomerUpdateFailed": {
        "summary": "Customer Update Failed",
        "description": "Update customer request has failed",
        "value": {
          "response": "3",
          "responsetext": "Invalid Customer Vault Id REFID:1095356952",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "300",
          "customer_vault_id": "TestCustomer1"
        }
      },
      "ProductAdded": {
        "summary": "Product Added",
        "description": "Product added successfully",
        "value": {
          "response": "1",
          "responsetext": "Product Added",
          "product_id": "8610653943",
          "product_sku": "32463230005",
          "product_description": "Phone Case",
          "product_cost": "15.50",
          "product_currency": "USD",
          "product_commodity_code": "",
          "product_unit_of_measure": "NAR",
          "product_tax_amount": "",
          "product_discount_amount": "",
          "product_image_name": "",
          "product_category": ""
        }
      },
      "ProductAddedFail": {
        "summary": "Product Added Fail",
        "description": "Product not added",
        "value": {
          "response": "3",
          "responsetext": "Product SKU, description, cost, and currency are required.\nREFID:1185534822",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "300"
        }
      },
      "ProductUpdated": {
        "summary": "Product Updated",
        "description": "Product updated successfully",
        "value": {
          "response": "1",
          "responsetext": "Product Updated",
          "product_id": "8610675975",
          "product_sku": "32463230006",
          "product_description": "1 Gallon Milk",
          "product_cost": "15.5000",
          "product_currency": "USD",
          "product_commodity_code": "",
          "product_unit_of_measure": "NAR",
          "product_tax_amount": "0.00",
          "product_discount_amount": "0.00",
          "product_image_name": "",
          "product_category": ""
        }
      },
      "ProductUpdatedFail": {
        "summary": "Product Update Failed",
        "description": "Product update failed",
        "value": {
          "response": "3",
          "responsetext": "Object not found REFID:1159407847",
          "authcode": "",
          "transactionid": "",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "",
          "response_code": "300"
        }
      },
      "ProductDeleted": {
        "summary": "Product Deleted",
        "description": "Product deleted successfully",
        "value": {
          "response": "1",
          "responsetext": "Product Deleted",
          "product_id": "8610675975"
        }
      },
      "CredentialOnFileApprovedResponse": {
        "summary": "Credential On File - Approved transaction",
        "description": "Approved transaction. Store/use this transaction for the follow up request.",
        "value": {
          "response": "1",
          "responsetext": "Approved",
          "authcode": "123456",
          "transactionid": "8558644015",
          "avsresponse": "",
          "cvvresponse": "",
          "orderid": "",
          "type": "sale",
          "response_code": "100"
        }
      },
      "auth-success": {
        "summary": "Successful Authorization",
        "description": "This transaction was successfully authorized.",
        "value": {
          "event_id": "322ac05a-cf6c-4c16-948a-3048d007f742",
          "event_type": "transaction.auth.success",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "transaction_id": "8584341675",
            "transaction_type": "cc",
            "condition": "pending",
            "processor_id": "ccprocessora",
            "ponumber": "",
            "order_description": "",
            "order_id": "",
            "customerid": "",
            "customertaxid": "",
            "website": "",
            "shipping": "",
            "currency": "USD",
            "tax": "",
            "surcharge": "",
            "convenience_fee": "",
            "misc_fee": "",
            "misc_fee_name": "",
            "cash_discount": "",
            "tip": "",
            "requested_amount": "10.00",
            "shipping_carrier": "",
            "tracking_number": "",
            "shipping_date": "",
            "partial_payment_id": "",
            "partial_payment_balance": "",
            "platform_id": "",
            "authorization_code": "123456",
            "social_security_number": "",
            "drivers_license_number": "",
            "drivers_license_state": "",
            "drivers_license_dob": "",
            "duty_amount": "0.00",
            "discount_amount": "0.00",
            "national_tax_amount": "0.00",
            "summary_commodity_code": "",
            "alternate_tax_amount": "0.00",
            "vat_tax_amount": "0.00",
            "vat_tax_rate": "0.00",
            "billing_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "shipping_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "M",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "4",
              "cc_bin": "",
              "cc_type": "Visa",
              "feature_token": ""
            },
            "merchant_defined_fields": {},
            "action": {
              "amount": "10.00",
              "action_type": "auth",
              "date": "20230801113700",
              "success": "1",
              "ip_address": "123.123.123.123",
              "source": "api",
              "api_method": "direct_post",
              "username": "test",
              "response_text": "SUCCESS",
              "response_code": "100",
              "processor_response_text": "",
              "tap_to_mobile": false,
              "processor_response_code": "",
              "device_license_number": "",
              "device_nickname": ""
            }
          }
        }
      },
      "auth-failed": {
        "summary": "Failed Authorization",
        "description": "The authorization request was declined by the processor.",
        "value": {
          "event_id": "322ac05a-cf6c-4c16-948a-3048d007f742",
          "event_type": "transaction.auth.failure",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "transaction_id": "8597004002",
            "transaction_type": "cc",
            "condition": "failed",
            "processor_id": "ccprocessora",
            "ponumber": "",
            "order_description": "",
            "order_id": "",
            "customerid": "",
            "customertaxid": "",
            "website": "",
            "shipping": "",
            "currency": "USD",
            "tax": "",
            "surcharge": "",
            "convenience_fee": "",
            "misc_fee": "",
            "misc_fee_name": "",
            "cash_discount": "",
            "tip": "",
            "requested_amount": "0.50",
            "shipping_carrier": "",
            "tracking_number": "",
            "shipping_date": "",
            "partial_payment_id": "",
            "partial_payment_balance": "",
            "platform_id": "",
            "authorization_code": "123456",
            "social_security_number": "",
            "drivers_license_number": "",
            "drivers_license_state": "",
            "drivers_license_dob": "",
            "duty_amount": "0.00",
            "discount_amount": "0.00",
            "national_tax_amount": "0.00",
            "summary_commodity_code": "",
            "alternate_tax_amount": "0.00",
            "vat_tax_amount": "0.00",
            "vat_tax_rate": "0.00",
            "billing_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "shipping_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "M",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "4",
              "cc_bin": "",
              "cc_type": "Visa",
              "feature_token": ""
            },
            "merchant_defined_fields": {},
            "action": {
              "amount": "10.00",
              "action_type": "auth",
              "date": "20230801113700",
              "success": "0",
              "ip_address": "123.123.123.123",
              "source": "api",
              "api_method": "direct_post",
              "username": "test",
              "response_text": "DECLINE",
              "response_code": "200",
              "processor_response_text": "",
              "tap_to_mobile": false,
              "processor_response_code": "",
              "device_license_number": "",
              "device_nickname": ""
            }
          }
        }
      },
      "capture-success": {
        "summary": "Transaction captured successfully",
        "description": "Transaction captured successfully",
        "value": {
          "event_id": "e5267749-c235-45c9-b93e-21f4379b94d1",
          "event_type": "transaction.capture.success",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "transaction_id": "8584341675",
            "transaction_type": "cc",
            "condition": "pendingsettlement",
            "processor_id": "ccprocessora",
            "ponumber": "",
            "order_description": "",
            "order_id": "",
            "customerid": "",
            "customertaxid": "",
            "website": "",
            "shipping": "0.00",
            "currency": "USD",
            "tax": "0.00",
            "surcharge": "",
            "convenience_fee": "",
            "misc_fee": "",
            "misc_fee_name": "",
            "cash_discount": "",
            "tip": "",
            "requested_amount": "10.00",
            "shipping_carrier": "",
            "tracking_number": "",
            "shipping_date": "",
            "partial_payment_id": "",
            "partial_payment_balance": "",
            "platform_id": "",
            "authorization_code": "123456",
            "social_security_number": "",
            "drivers_license_number": "",
            "drivers_license_state": "",
            "drivers_license_dob": "",
            "duty_amount": "0.00",
            "discount_amount": "0.00",
            "national_tax_amount": "0.00",
            "summary_commodity_code": "",
            "alternate_tax_amount": "0.00",
            "vat_tax_amount": "0.00",
            "vat_tax_rate": "0.00",
            "billing_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "shipping_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "M",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "4",
              "cc_bin": "",
              "cc_type": "Visa",
              "feature_token": ""
            },
            "merchant_defined_fields": {},
            "action": {
              "amount": "10.00",
              "action_type": "capture",
              "date": "20230801113955",
              "success": "1",
              "ip_address": "123.123.123.123",
              "source": "api",
              "api_method": "direct_post",
              "username": "test",
              "response_text": "SUCCESS",
              "response_code": "100",
              "processor_response_text": "",
              "tap_to_mobile": false,
              "processor_response_code": "",
              "device_license_number": "",
              "device_nickname": ""
            }
          }
        }
      },
      "sale-success": {
        "summary": "Sale transaction was successful",
        "description": "Sale transaction was successful",
        "value": {
          "event_id": "2aa1bb86-c790-4231-a46e-7cc544a8dc5c",
          "event_type": "transaction.sale.success",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "transaction_id": "8584364761",
            "transaction_type": "cc",
            "condition": "pendingsettlement",
            "processor_id": "ccprocessora",
            "ponumber": "",
            "order_description": "",
            "order_id": "",
            "customerid": "",
            "customertaxid": "",
            "website": "",
            "shipping": "",
            "currency": "USD",
            "tax": "",
            "surcharge": "",
            "convenience_fee": "",
            "misc_fee": "",
            "misc_fee_name": "",
            "cash_discount": "",
            "tip": "",
            "requested_amount": "10.00",
            "shipping_carrier": "",
            "tracking_number": "",
            "shipping_date": "",
            "partial_payment_id": "",
            "partial_payment_balance": "",
            "platform_id": "",
            "authorization_code": "123456",
            "social_security_number": "",
            "drivers_license_number": "",
            "drivers_license_state": "",
            "drivers_license_dob": "",
            "duty_amount": "0.00",
            "discount_amount": "0.00",
            "national_tax_amount": "0.00",
            "summary_commodity_code": "",
            "alternate_tax_amount": "0.00",
            "vat_tax_amount": "0.00",
            "vat_tax_rate": "0.00",
            "billing_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "shipping_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "M",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "4",
              "cc_bin": "",
              "cc_type": "Visa",
              "feature_token": ""
            },
            "merchant_defined_fields": {},
            "action": {
              "amount": "10.00",
              "action_type": "sale",
              "date": "20230801114200",
              "success": "1",
              "ip_address": "123.123.123.123",
              "source": "api",
              "api_method": "direct_post",
              "username": "test",
              "response_text": "SUCCESS",
              "response_code": "100",
              "processor_response_text": "",
              "tap_to_mobile": false,
              "processor_response_code": "",
              "device_license_number": "",
              "device_nickname": ""
            }
          }
        }
      },
      "sale-failure": {
        "summary": "Sale transaction failed",
        "description": "Sale transaction failed",
        "value": {
          "event_id": "a4807d52-4e40-4e93-92e2-b6d2dad3ddd9",
          "event_type": "transaction.sale.failure",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "transaction_id": "8584372177",
            "transaction_type": "cc",
            "condition": "failed",
            "processor_id": "ccprocessora",
            "ponumber": "",
            "order_description": "",
            "order_id": "",
            "customerid": "",
            "customertaxid": "",
            "website": "",
            "shipping": "",
            "currency": "USD",
            "tax": "",
            "surcharge": "",
            "convenience_fee": "",
            "misc_fee": "",
            "misc_fee_name": "",
            "cash_discount": "",
            "tip": "",
            "requested_amount": "0.50",
            "shipping_carrier": "",
            "tracking_number": "",
            "shipping_date": "",
            "partial_payment_id": "",
            "partial_payment_balance": "",
            "platform_id": "",
            "authorization_code": "",
            "social_security_number": "",
            "drivers_license_number": "",
            "drivers_license_state": "",
            "drivers_license_dob": "",
            "duty_amount": "0.00",
            "discount_amount": "0.00",
            "national_tax_amount": "0.00",
            "summary_commodity_code": "",
            "alternate_tax_amount": "0.00",
            "vat_tax_amount": "0.00",
            "vat_tax_rate": "0.00",
            "billing_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "shipping_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "M",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "4",
              "cc_bin": "",
              "cc_type": "Visa",
              "feature_token": ""
            },
            "merchant_defined_fields": {},
            "action": {
              "amount": "0.50",
              "action_type": "sale",
              "date": "20230801114355",
              "success": "0",
              "ip_address": "123.123.123.123",
              "source": "api",
              "api_method": "direct_post",
              "username": "test",
              "response_text": "DECLINE",
              "response_code": "200",
              "processor_response_text": "",
              "tap_to_mobile": false,
              "processor_response_code": "",
              "device_license_number": "",
              "device_nickname": ""
            }
          }
        }
      },
      "void-success": {
        "summary": "Void transaction was successful",
        "description": "Void transaction was successful",
        "value": {
          "event_id": "56fce295-ee70-46a1-83c2-1f423c43c34c",
          "event_type": "transaction.void.success",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "transaction_id": "8584341675",
            "transaction_type": "cc",
            "condition": "canceled",
            "processor_id": "ccprocessora",
            "ponumber": "",
            "order_description": "",
            "order_id": "",
            "customerid": "",
            "customertaxid": "",
            "website": "",
            "shipping": "0.00",
            "currency": "USD",
            "tax": "0.00",
            "surcharge": "",
            "convenience_fee": "",
            "misc_fee": "",
            "misc_fee_name": "",
            "cash_discount": "",
            "tip": "",
            "requested_amount": "10.00",
            "shipping_carrier": "",
            "tracking_number": "",
            "shipping_date": "",
            "partial_payment_id": "",
            "partial_payment_balance": "",
            "platform_id": "",
            "authorization_code": "123456",
            "social_security_number": "",
            "drivers_license_number": "",
            "drivers_license_state": "",
            "drivers_license_dob": "",
            "duty_amount": "0.00",
            "discount_amount": "0.00",
            "national_tax_amount": "0.00",
            "summary_commodity_code": "",
            "alternate_tax_amount": "0.00",
            "vat_tax_amount": "0.00",
            "vat_tax_rate": "0.00",
            "billing_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "shipping_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "M",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "4",
              "cc_bin": "",
              "cc_type": "Visa",
              "feature_token": ""
            },
            "merchant_defined_fields": {},
            "action": {
              "amount": "10.00",
              "action_type": "void",
              "date": "20230801115329",
              "success": "1",
              "ip_address": "123.123.123.123",
              "source": "api",
              "api_method": "direct_post",
              "username": "test",
              "response_text": "SUCCESS",
              "response_code": "100",
              "processor_response_text": "",
              "tap_to_mobile": false,
              "processor_response_code": "",
              "device_license_number": "",
              "device_nickname": ""
            }
          }
        }
      },
      "refund-success": {
        "summary": "Transaction refunded successfully",
        "description": "Transaction refunded successfully",
        "value": {
          "event_id": "e5267749-c235-45c9-b93e-21f4379b94d1",
          "event_type": "transaction.refund.success",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "transaction_id": "8597047042",
            "transaction_type": "cc",
            "condition": "pendingsettlement",
            "processor_id": "ccprocessora",
            "ponumber": "",
            "order_description": "",
            "order_id": "",
            "customerid": "",
            "customertaxid": "",
            "website": "",
            "shipping": "0.00",
            "currency": "USD",
            "tax": "0.00",
            "surcharge": "",
            "convenience_fee": "",
            "misc_fee": "",
            "misc_fee_name": "",
            "cash_discount": "",
            "tip": "",
            "requested_amount": "-1.50",
            "shipping_carrier": "",
            "tracking_number": "",
            "shipping_date": "",
            "partial_payment_id": "",
            "partial_payment_balance": "",
            "platform_id": "",
            "authorization_code": "123456",
            "social_security_number": "",
            "drivers_license_number": "",
            "drivers_license_state": "",
            "drivers_license_dob": "",
            "duty_amount": "0.00",
            "discount_amount": "0.00",
            "national_tax_amount": "0.00",
            "summary_commodity_code": "",
            "alternate_tax_amount": "0.00",
            "vat_tax_amount": "0.00",
            "vat_tax_rate": "0.00",
            "billing_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "shipping_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "4",
              "cc_bin": "",
              "cc_type": "Visa",
              "feature_token": ""
            },
            "merchant_defined_fields": {},
            "action": {
              "amount": "-1.50",
              "action_type": "refund",
              "date": "20230804155935",
              "success": "1",
              "ip_address": "123.123.123.123",
              "source": "api",
              "api_method": "direct_post",
              "username": "test",
              "response_text": "SUCCESS",
              "response_code": "100",
              "processor_response_text": "",
              "tap_to_mobile": false,
              "processor_response_code": "",
              "device_license_number": "",
              "device_nickname": ""
            }
          }
        }
      },
      "validate-success": {
        "summary": "Validate transaction was successful",
        "description": "Validate transaction was successful",
        "value": {
          "event_id": "7c19bb37-8679-4ffb-b431-41ae49d8ff75",
          "event_type": "transaction.validate.success",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "transaction_id": "8584364761",
            "transaction_type": "cc",
            "condition": "complete",
            "processor_id": "ccprocessora",
            "ponumber": "",
            "order_description": "",
            "order_id": "",
            "customerid": "",
            "customertaxid": "",
            "website": "",
            "shipping": "",
            "currency": "USD",
            "tax": "",
            "surcharge": "",
            "convenience_fee": "",
            "misc_fee": "",
            "misc_fee_name": "",
            "cash_discount": "",
            "tip": "",
            "requested_amount": "",
            "shipping_carrier": "",
            "tracking_number": "",
            "shipping_date": "",
            "partial_payment_id": "",
            "partial_payment_balance": "",
            "platform_id": "",
            "authorization_code": "",
            "social_security_number": "",
            "drivers_license_number": "",
            "drivers_license_state": "",
            "drivers_license_dob": "",
            "duty_amount": "0.00",
            "discount_amount": "0.00",
            "national_tax_amount": "0.00",
            "summary_commodity_code": "",
            "alternate_tax_amount": "0.00",
            "vat_tax_amount": "0.00",
            "vat_tax_rate": "0.00",
            "billing_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "shipping_address": {
              "first_name": "",
              "last_name": "",
              "address_1": "",
              "address_2": "",
              "company": "",
              "city": "",
              "state": "",
              "postal_code": "",
              "country": "",
              "email": "",
              "phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "M",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "4",
              "cc_bin": "",
              "cc_type": "Visa",
              "feature_token": ""
            },
            "merchant_defined_fields": {},
            "action": {
              "amount": "0",
              "action_type": "validate",
              "date": "20230804160357",
              "success": "1",
              "ip_address": "123.123.123.123",
              "source": "api",
              "api_method": "direct_post",
              "username": "test",
              "response_text": "SUCCESS",
              "response_code": "100",
              "processor_response_text": "",
              "tap_to_mobile": false,
              "processor_response_code": "",
              "device_license_number": "",
              "device_nickname": ""
            }
          }
        }
      },
      "plan-added": {
        "summary": "Recurring Plan Added",
        "description": "Recurring Plan has been added",
        "value": {
          "event_id": "35f56738-4755-4cd9-9068-ea9e83d60d2e",
          "event_type": "recurring.plan.add",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "plan": {
              "id": "TestPlanId1",
              "name": "Test Plan",
              "amount": "10.00",
              "day_frequency": "",
              "payments": "Until canceled",
              "month_frequency": "1",
              "day_of_month": "15"
            }
          }
        }
      },
      "plan-updated": {
        "summary": "Recurring Plan Updated",
        "description": "Recurring Plan has been updated",
        "value": {
          "event_id": "35f56738-4755-4cd9-9068-ea9e83d60d2e",
          "event_type": "recurring.plan.update",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "plan": {
              "id": "",
              "name": "Test Plan Updated",
              "amount": "20.00",
              "day_frequency": "",
              "payments": "Until canceled",
              "month_frequency": "",
              "day_of_month": ""
            }
          }
        }
      },
      "plan-deleted": {
        "summary": "Recurring Plan Deleted",
        "description": "Recurring Plan has been deleted",
        "value": {
          "event_id": "35f56738-4755-4cd9-9068-ea9e83d60d2e",
          "event_type": "recurring.plan.delete",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "plan": {
              "id": "TestPlanId1",
              "name": "Test Plan Updated",
              "amount": "20.00",
              "day_frequency": "15",
              "payments": "Until canceled",
              "month_frequency": "1",
              "day_of_month": "0"
            }
          }
        }
      },
      "subscription-added": {
        "summary": "Subscription Added",
        "description": "A new subscription has been added.",
        "value": {
          "event_id": "5f5706a2-aec2-4d69-b699-32e5745cf1fd",
          "event_type": "recurring.subscription.add",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "subscription_id": "8608342724",
            "subscription_type": "cc",
            "processor_id": "",
            "next_charge_date": "1970-01-01",
            "completed_payments": "0",
            "attempted_payments": "0",
            "remaining_payments": "Until canceled",
            "ponumber": "",
            "order_id": "",
            "order_description": "",
            "shipping": "",
            "tax": "",
            "website": "",
            "plan": {
              "id": "TestPlanId1",
              "name": "Test Plan",
              "amount": "10.00",
              "day_frequency": "",
              "payments": "Until canceled",
              "month_frequency": "1",
              "day_of_month": "15"
            },
            "billing_address": {
              "first_name": "John",
              "last_name": "Smith",
              "address_1": "123 Lovely Lane",
              "address_2": "",
              "company": "",
              "city": "New York City",
              "state": "NY",
              "postal_code": "11111",
              "country": "US",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "",
              "cc_bin": "",
              "cc_type": "Visa"
            }
          }
        }
      },
      "subscription-updated": {
        "summary": "Subscription Updated",
        "description": "A new subscription has been updated.",
        "value": {
          "event_id": "9f4c6478-e875-44d5-a83c-e2afebdaab86",
          "event_type": "recurring.subscription.update",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "subscription_id": "8608342724",
            "subscription_type": "cc",
            "processor_id": "",
            "next_charge_date": "2023-09-15",
            "completed_payments": "0",
            "attempted_payments": "0",
            "remaining_payments": "Until canceled",
            "ponumber": "",
            "order_id": "",
            "order_description": "",
            "shipping": "0.00",
            "tax": "0.00",
            "website": "",
            "plan": {
              "id": "",
              "name": "",
              "amount": "10.00",
              "day_frequency": "",
              "payments": "Until canceled",
              "month_frequency": "1",
              "day_of_month": "15"
            },
            "billing_address": {
              "first_name": "John",
              "last_name": "Smith",
              "address_1": "123 Lovely Lane",
              "address_2": "",
              "company": "",
              "city": "New York City",
              "state": "NY",
              "postal_code": "11111",
              "country": "US",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "",
              "cc_bin": "",
              "cc_type": "Visa"
            }
          }
        }
      },
      "subscription-deleted": {
        "summary": "Subscription Deleted",
        "description": "A new subscription has been deleted.",
        "value": {
          "event_id": "a1c0839a-4156-4f7c-a875-dc9411e2d3a6",
          "event_type": "recurring.subscription.delete",
          "event_body": {
            "merchant": {
              "id": "944025",
              "name": "Test merchant account"
            },
            "features": {
              "is_test_mode": true
            },
            "subscription_id": "8608342724",
            "subscription_type": "cc",
            "processor_id": "",
            "next_charge_date": "2023-09-15",
            "completed_payments": "0",
            "attempted_payments": "0",
            "remaining_payments": "Until canceled",
            "ponumber": "",
            "order_id": "",
            "order_description": "",
            "shipping": "0.00",
            "tax": "0.00",
            "website": "",
            "plan": {
              "id": "",
              "name": "",
              "amount": "10.00",
              "day_frequency": "",
              "payments": "Until canceled",
              "month_frequency": "1",
              "day_of_month": "15"
            },
            "billing_address": {
              "first_name": "John",
              "last_name": "Smith",
              "address_1": "123 Lovely Lane",
              "address_2": "",
              "company": "",
              "city": "New York City",
              "state": "NY",
              "postal_code": "11111",
              "country": "US",
              "email": "",
              "phone": "",
              "cell_phone": "",
              "fax": ""
            },
            "card": {
              "cc_number": "411111******1111",
              "cc_exp": "1025",
              "cavv": "",
              "cavv_result": "",
              "xid": "",
              "eci": "",
              "avs_response": "",
              "csc_response": "",
              "cardholder_auth": "",
              "cc_start_date": "",
              "cc_issue_number": "",
              "card_balance": "",
              "card_available_balance": "",
              "entry_mode": "",
              "cc_bin": "",
              "cc_type": "Visa"
            }
          }
        }
      },
      "settlement-completed": {
        "summary": "Settlement Batch Completed",
        "description": "Settlement batch completed",
        "value": {
          "event_id": "11750910-bd03-4f9a-871a-786203df177f",
          "event_type": "settlement.batch.complete",
          "event_body": {
            "batch_id": "12345678",
            "count": 4,
            "amount": "402.81",
            "merchant": {
              "id": "123456",
              "name": "Test Account"
            },
            "processor": {
              "id": "ccprocessor",
              "name": "CC Processor",
              "type": "cc"
            },
            "by_card_type": {
              "visa": {
                "count": 4,
                "amount": "402.81"
              }
            },
            "transaction_ids": [
              "1234000000",
              "1234000001",
              "1234000002",
              "1234000003"
            ]
          }
        }
      },
      "settlement-failed": {
        "summary": "Settlement Batch Failed",
        "description": "Settlement batch failed",
        "value": {
          "event_id": "dfe8156d-5dd9-43ac-8928-3cf70ef74108",
          "event_type": "settlement.batch.failure",
          "event_body": {
            "batch_id": "123456",
            "merchant": {
              "id": "123456",
              "name": "Test Merchant"
            },
            "processor": {
              "id": "ccprocessor",
              "name": "CC Processor",
              "type": "cc"
            }
          }
        }
      },
      "acu.summary.automaticallyupdated": {
        "summary": "Automatically Updated",
        "description": "Automatically updated",
        "value": {
          "event_id": "7958c536-88f0-47f4-bb55-54575259a3be",
          "event_type": "acu.summary.automaticallyupdated",
          "event_body": {
            "updated_date": "2022-08-22",
            "merchant": {
              "id": 123456,
              "name": "Test Account"
            },
            "cards_checked": {
              "customer_vault": {
                "checked": 376,
                "updated": 4
              },
              "subscriptions": {
                "checked": 434,
                "updated": 3
              }
            },
            "vault_count_updated_cards": 1,
            "vault_updated_cards": [
              {
                "customer_vault_id": "308229500",
                "billing_id": "1781228768",
                "cc_number": "445701******0009",
                "cc_exp": "01/50",
                "first_name": "Bob",
                "last_name": "Smith",
                "email": "bsmith@example.com",
                "phone": "+14801112222"
              }
            ],
            "vault_count_updated_expiration_dates": 3,
            "vault_updated_expiration_dates": [
              {
                "customer_vault_id": "2061222895",
                "billing_id": "350282046",
                "cc_number": "400000******0002",
                "cc_exp": "11/70",
                "first_name": "Bob",
                "last_name": "Smith",
                "email": "bobsmith@company.com",
                "phone": "4801112222"
              },
              {
                "customer_vault_id": "1039486483",
                "billing_id": "1408598861",
                "cc_number": "400000******0034",
                "cc_exp": "11/70",
                "first_name": "Jane",
                "last_name": "Smith",
                "email": "jane@organization.org",
                "phone": "+12125551222"
              },
              {
                "customer_vault_id": "1033346428",
                "billing_id": "1460247050",
                "cc_number": "520000******0007",
                "cc_exp": "12/33",
                "first_name": "Steve",
                "last_name": "Customer",
                "email": "steve@customer.com",
                "phone": "+13104053434"
              }
            ],
            "recurring_count_updated_cards": 2,
            "recurring_updated_cards": [
              {
                "subscription_id": "281474976710720",
                "cc_number": "445701******0459",
                "cc_exp": "01/50",
                "first_name": "",
                "last_name": "",
                "email": "",
                "phone": ""
              },
              {
                "subscription_id": "281474976710726",
                "cc_number": "445701******1123",
                "cc_exp": "01/50",
                "first_name": "Frank",
                "last_name": "Jones",
                "email": "fjones@example.com",
                "phone": "6021234567"
              }
            ],
            "recurring_count_updated_expiration_dates": 1,
            "recurring_updated_expiration_dates": [
              {
                "subscription_id": "281474976710725",
                "cc_number": "400000******3223",
                "cc_exp": "11/70",
                "first_name": "Susan",
                "last_name": "Harris",
                "email": "harris@company.com",
                "phone": "3125551212"
              }
            ]
          }
        }
      },
      "acu.summary.closedaccount": {
        "summary": "Closed Account",
        "description": "Closed Account",
        "value": {
          "event_id": "7bbd4af6-4075-4902-af56-9fc59ab71362",
          "event_type": "acu.summary.closedaccount",
          "event_body": {
            "updated_date": "2022-08-23",
            "merchant": {
              "id": 123456,
              "name": "Test Account"
            },
            "cards_checked": {
              "customer_vault": {
                "checked": 123,
                "updated": 1
              },
              "subscriptions": {
                "checked": 232,
                "updated": 1
              }
            },
            "vault_count_updated_closed_account": 1,
            "vault_updates": [
              {
                "customer_vault_id": "281474976710722",
                "billing_id": "230304034",
                "cc_number": "434343******0123",
                "cc_exp": "11/25",
                "first_name": "Longterm",
                "last_name": "Client",
                "email": "sample@customer.com",
                "phone": "6025551213"
              }
            ],
            "recurring_count_updated_closed_account": 1,
            "recurring_updates": [
              {
                "subscription_id": "281474976710727",
                "cc_number": "601101******0002",
                "cc_exp": "11/32",
                "first_name": "Bob",
                "last_name": "Smith",
                "email": "bsmith@example.co.uk",
                "phone": "+440111122222"
              }
            ]
          }
        }
      },
      "acu.summary.contactcustomer": {
        "summary": "Contact Support",
        "description": "Contact Support",
        "value": {
          "event_id": "7bbd4af6-4075-4902-af56-9fc59ab71362",
          "event_type": "acu.summary.contactcustomer",
          "event_body": {
            "updated_date": "2022-08-23",
            "merchant": {
              "id": 123456,
              "name": "Test Account"
            },
            "cards_checked": {
              "customer_vault": {
                "checked": 123,
                "updated": 2
              },
              "subscriptions": {
                "checked": 232,
                "updated": 1
              }
            },
            "vault_count_updated_contact_customer": 2,
            "vault_updates": [
              {
                "customer_vault_id": "40403043545",
                "billing_id": "34544356",
                "cc_number": "445343******7432",
                "cc_exp": "06/29",
                "first_name": "Happy",
                "last_name": "Customer",
                "email": "frequent@shopper.com",
                "phone": "5555559999"
              },
              {
                "customer_vault_id": "281474976710722",
                "billing_id": "230304034",
                "cc_number": "434343******0123",
                "cc_exp": "11/25",
                "first_name": "Bill",
                "last_name": "Thompson",
                "email": "bill@anothercustomer.com",
                "phone": "6025551213"
              }
            ],
            "recurring_count_updated_contact_customer": 1,
            "recurring_updates": [
              {
                "subscription_id": "323232232445",
                "cc_number": "465333******4232",
                "cc_exp": "04/30",
                "first_name": "Recurring",
                "last_name": "Customer",
                "email": "buy@repeatedly.com",
                "phone": "8185552323"
              }
            ]
          }
        }
      },
      "chargeback.batch.complete": {
        "summary": "Chargeback Batch Completed",
        "description": "Chargeback Batch Completed",
        "value": {
          "event_id": "7bbd4af6-4075-4902-af56-9fc59ab71362",
          "event_type": "chargeback.batch.complete",
          "event_body": {
            "merchant": {
              "id": "123456",
              "name": "Test Account"
            },
            "processor": {
              "id": "ccprocessor",
              "name": "CC Processor",
              "type": "cc"
            },
            "count": 1,
            "chargeback_amount": "12.34",
            "chargebacks": [
              {
                "id": "12345678",
                "date": "2023-08-11",
                "customer_name": "John Doe",
                "cc_number": "411111******1111",
                "amount": "12.34",
                "reason": "Cardholder Does Not Recognize"
              }
            ]
          }
        }
      }
    },
    "schemas": {
      "SecurityKey": {
        "type": "string",
        "description": "API Security Key assigned to a merchant account. New keys can be generated from the merchant control panel in Settings > Security Keys"
      },
      "DeviceUnencryptedRetailMagneticStripeData": {
        "type": "object",
        "properties": {
          "track_1": {
            "type": "string",
            "description": "Raw Magnetic Stripe Data."
          },
          "track_2": {
            "type": "string",
            "description": "Raw Magnetic Stripe Data."
          },
          "track_3": {
            "type": "string",
            "description": "Raw Magnetic Stripe Data."
          }
        }
      },
      "PartialPaymentInfo": {
        "type": "object",
        "properties": {
          "partial_payment_id": {
            "type": "string",
            "description": "Unique identifier returned when making the original transaction. This should only be used for secondary transactions."
          }
        }
      },
      "Amount": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "string",
            "description": "Total amount to be charged.\n  \nFormat: `x.xx`"
          }
        }
      },
      "Descriptor": {
        "type": "object",
        "properties": {
          "descriptor": {
            "type": "string",
            "description": "Set payment descriptor on supported processors."
          },
          "descriptor_phone": {
            "type": "string",
            "description": "Set payment descriptor phone on supported processors."
          },
          "descriptor_address": {
            "type": "string",
            "description": "Set payment descriptor address on supported processors."
          },
          "descriptor_city": {
            "type": "string",
            "description": "Set payment descriptor city on supported processors."
          },
          "descriptor_state": {
            "type": "string",
            "description": "Set payment descriptor state on supported processors."
          },
          "descriptor_postal": {
            "type": "string",
            "description": "Set payment descriptor postal code on supported processors."
          },
          "descriptor_country": {
            "type": "string",
            "description": "Set payment descriptor country on supported processors."
          },
          "descriptor_mcc": {
            "type": "string",
            "description": "Set payment descriptor mcc on supported processors."
          },
          "descriptor_merchant_id": {
            "type": "string",
            "description": "Set payment descriptor merchant id on supported processors."
          },
          "descriptor_url": {
            "type": "string",
            "description": "Set payment descriptor url on supported processors."
          }
        }
      },
      "DriversLicense": {
        "type": "object",
        "properties": {
          "drivers_license_number": {
            "type": "string",
            "description": "Driver's license number."
          },
          "drivers_license_dob": {
            "type": "string",
            "description": "Driver's license date of birth."
          },
          "drivers_license_state": {
            "type": "string",
            "description": "The state that issued the customer's driver's license."
          }
        }
      },
      "Shipping": {
        "type": "object",
        "properties": {
          "shipping_firstname": {
            "type": "string",
            "description": "Shipping first name"
          },
          "shipping_lastname": {
            "type": "string",
            "description": "Shipping last name"
          },
          "shipping_company": {
            "type": "string",
            "description": "Shipping company"
          },
          "shipping_address1": {
            "type": "string",
            "description": "Shipping address"
          },
          "shipping_address2": {
            "type": "string",
            "description": "Shipping address, line 2"
          },
          "shipping_city": {
            "type": "string",
            "description": "Shipping city"
          },
          "shipping_state": {
            "type": "string",
            "description": "Shipping state.\n  \nFormat: `CC`"
          },
          "shipping_zip": {
            "type": "string",
            "description": "Shipping zip code"
          },
          "shipping_country": {
            "type": "string",
            "description": "Shipping country. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
          },
          "shipping_email": {
            "type": "string",
            "format": "email",
            "description": "Shipping email address"
          }
        }
      },
      "MerchantDefinedField": {
        "type": "object",
        "properties": {
          "merchant_defined_field_1": {
            "type": "string",
            "description": "Merchant defined field. You can pass custom information in up to 20 fields.\n\nFormat: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc..."
          }
        }
      },
      "CustomerVaultFields": {
        "type": "object",
        "properties": {
          "customer_vault": {
            "type": "string",
            "enum": [
              "add_customer",
              "update_customer"
            ],
            "description": "Associate payment information with a Customer Vault record if the transaction is successful.",
            "x-group-key": "Customer Vault"
          },
          "customer_vault_id": {
            "type": "string",
            "description": "Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id.",
            "x-group-key": "Customer Vault"
          }
        }
      },
      "StoredCredentialsFields": {
        "type": "object",
        "properties": {
          "initiated_by": {
            "type": "string",
            "enum": [
              "customer",
              "merchant"
            ],
            "description": "**Stored Credentials (CIT/MIT):** Who initiated the transaction."
          },
          "initial_transaction_id": {
            "type": "string",
            "description": "**Stored Credentials (CIT/MIT):** Original payment gateway transaction id."
          },
          "stored_credential_indicator": {
            "type": "string",
            "enum": [
              "stored",
              "used"
            ],
            "description": "**Stored Credentials (CIT/MIT):** The indicator of the stored credential.\n\nUse **'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.\n\nUse **'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."
          }
        }
      },
      "LevelThreeOrderFields": {
        "type": "object",
        "properties": {
          "shipping": {
            "type": "number",
            "description": "**Level II/III - Order Field:** Freight or shipping amount included in the transaction amount. Default - `0.00`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Order"
          },
          "tax": {
            "type": "number",
            "description": "**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`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Order"
          },
          "ponumber": {
            "type": "string",
            "description": "**Level II/III - Order Field:** Purchase order number",
            "x-group-key": "Level III - Order"
          },
          "orderid": {
            "type": "string",
            "description": "**Level III - Order Field:** Identifier assigned by the merchant. This defaults to gateway transaction id.",
            "x-group-key": "Level III - Order"
          },
          "shipping_country": {
            "type": "string",
            "description": "**Level III - Order Field:** Shipping country (e.g. US).\n \nFormat: `CC` - ISO 3166-1 alpha-2",
            "x-group-key": "Level III - Order"
          },
          "shipping_postal": {
            "type": "string",
            "description": "**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.",
            "x-group-key": "Level III - Order"
          },
          "ship_from_postal": {
            "type": "string",
            "description": "**Level III - Order Field:** Postal/ZIP code of the address from where purchased goods are being shipped, defaults to merchant profile postal code.",
            "x-group-key": "Level III - Order"
          },
          "summary_commodity_code": {
            "type": "string",
            "description": "**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.",
            "x-group-key": "Level III - Order"
          },
          "duty_amount": {
            "type": "number",
            "description": "**Level III - Order Field:** Amount included in the transaction amount associated with the import of purchased goods. Default - `0.00`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Order"
          },
          "discount_amount": {
            "type": "number",
            "description": "**Level III - Order Field:** Amount included in the transaction amount of any discount applied to complete order by the merchant. Default - `0.00`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Order"
          },
          "national_tax_amount": {
            "type": "number",
            "description": "**Level III - Order Field:** The national tax amount included in the transaction amount. Default - `0.00`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Order"
          },
          "alternate_tax_amount": {
            "type": "number",
            "description": "**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`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Order"
          },
          "alternate_tax_id": {
            "type": "string",
            "description": "**Level III - Order Field:** Tax identification number of the merchant that reported the alternate tax amount.",
            "x-group-key": "Level III - Order"
          },
          "vat_tax_amount": {
            "type": "number",
            "description": "**Level III - Order Field:** Contains the amount of any value added taxes which can be associated with the purchased item. Default - `0.00`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Order"
          },
          "vat_tax_rate": {
            "type": "number",
            "description": "**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`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Order"
          },
          "vat_invoice_reference_number": {
            "type": "string",
            "description": "**Level III - Order Field:** Invoice number that is associated with the VAT invoice.",
            "x-group-key": "Level III - Order"
          },
          "customer_vat_registration": {
            "type": "string",
            "description": "**Level III - Order Field:** Value added tax registration number supplied by the cardholder.",
            "x-group-key": "Level III - Order"
          },
          "merchant_vat_registration": {
            "type": "string",
            "description": "**Level III - Order Field:** Government assigned tax identification number of the merchant for whom the goods or services were purchased from.",
            "x-group-key": "Level III - Order"
          },
          "order_date": {
            "type": "string",
            "format": "date",
            "description": "**Level III - Order Field:** Purchase order date, defaults to the date of the transaction.\n\nFormat: `YYMMDD`",
            "x-group-key": "Level III - Order"
          }
        }
      },
      "LevelThreeLineItemDetailFields": {
        "type": "object",
        "properties": {
          "item_product_code_1": {
            "type": "string",
            "description": "**Level III - Line Item:** Merchant defined description code of the item being purchased.\n\n*Up to 99 sets of item_* fields are allowed.*",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_description_1": {
            "type": "string",
            "description": "**Level III - Line Item:** Description of the item(s) being supplied.",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_commodity_code_1": {
            "type": "string",
            "description": "**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.",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_unit_of_measure_1": {
            "type": "string",
            "description": "**Level III - Line Item:** Code for units of measurement as used in international trade. Default - `EACH`.",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_unit_cost_1": {
            "type": "number",
            "description": "**Level III - Line Item:** Unit cost of item purchased, may contain up to 4 decimal places.",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_quantity_1": {
            "type": "integer",
            "description": "**Level III - Line Item:** Quantity of the item(s) being purchased. Default - `1`.",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_total_amount_1": {
            "type": "number",
            "description": "**Level III - Line Item:** Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_tax_amount_1": {
            "type": "number",
            "description": "**Level III - Line Item:** Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default - `0.00`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_tax_rate_1": {
            "type": "number",
            "description": "**Level III - Line Item:** Percentage representing the value-added tax applied. Default - `0.00`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_discount_amount_1": {
            "type": "number",
            "description": "**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_#'.",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_discount_rate_1": {
            "type": "number",
            "description": "**Level III - Line Item:** Discount rate for the line item. Default - `0.00`.\n\nFormat: `x.xx`",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_tax_type_1": {
            "type": "string",
            "description": "**Level III - Line Item:** Type of value-added taxes that are being used.",
            "x-group-key": "Level III - Line Item(s)"
          },
          "item_alternate_tax_id_1": {
            "type": "string",
            "description": "**Level III - Line Item:** Tax identification number of the merchant that reported the alternate tax amount.",
            "x-group-key": "Level III - Line Item(s)"
          }
        }
      },
      "PaymentFacilitatorFields": {
        "type": "object",
        "properties": {
          "payment_facilitator_id": {
            "type": "string",
            "description": "**Payment Facilitator:** Payment Facilitator/Aggregator/ISO's ID Number",
            "x-group-key": "Payment Facilitator"
          },
          "submerchant_id": {
            "type": "string",
            "description": "**Payment Facilitator:** Sub-merchant Account ID",
            "x-group-key": "Payment Facilitator"
          },
          "submerchant_name": {
            "type": "string",
            "description": "**Payment Facilitator:** Sub-merchant's Name",
            "x-group-key": "Payment Facilitator"
          },
          "submerchant_address": {
            "type": "string",
            "description": "**Payment Facilitator:** Sub-merchant's Address",
            "x-group-key": "Payment Facilitator"
          },
          "submerchant_city": {
            "type": "string",
            "description": "**Payment Facilitator:** Sub-merchant's City",
            "x-group-key": "Payment Facilitator"
          },
          "submerchant_state": {
            "type": "string",
            "description": "**Payment Facilitator:** Sub-merchant's State",
            "x-group-key": "Payment Facilitator"
          },
          "submerchant_postal": {
            "type": "string",
            "description": "**Payment Facilitator:** Sub-merchant's Zip/Postal Code",
            "x-group-key": "Payment Facilitator"
          },
          "submerchant_country": {
            "type": "string",
            "description": "**Payment Facilitator:** Sub-merchant's Country",
            "x-group-key": "Payment Facilitator"
          },
          "submerchant_phone": {
            "type": "string",
            "description": "**Payment Facilitator:** Sub-merchant's Phone Number",
            "x-group-key": "Payment Facilitator"
          },
          "submerchant_email": {
            "type": "string",
            "format": "email",
            "description": "**Payment Facilitator:** Sub-merchant's Email Address",
            "x-group-key": "Payment Facilitator"
          }
        }
      },
      "BaseTransaction": {
        "allOf": [
          {
            "type": "object",
            "properties": {
              "payment_token": {
                "type": "string",
                "description": "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": {
                "type": "string",
                "minLength": 32,
                "maxLength": 32,
                "description": "A single use session ID used by Kount to link the transaction and Data Collector information together.\n\n* Should be generated every time a payment form is loaded by the cardholder.\n* Should be random/unpredictable (do not use sequential IDs).\n* Should not be reused within a 30 day period.\n\nThis 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).\n\nFormat: `alphanumeric`"
              },
              "applepay_payment_data": {
                "type": "string",
                "description": "The encrypted token created when integration directly to the Apple Pay SDK."
              },
              "googlepay_payment_data": {
                "type": "string",
                "description": "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": {
                "type": "string",
                "description": "Surcharge amount.\n  \nFormat: `x.xx`"
              },
              "convenience_fee": {
                "type": "string",
                "description": "Convenience fee amount.\n  \nFormat: `x.xx`"
              },
              "misc_fee": {
                "type": "string",
                "description": "Miscellaneous fee amount.\n  \nFormat: `x.xx`"
              },
              "misc_fee_name": {
                "type": "string",
                "description": "Custom miscellaneous fee name.\n  \nDefault: `Miscellaneous Fee`"
              },
              "tip": {
                "type": "number",
                "description": "The final tip amount, included in the transaction, associated with the purchase.\n  \nFormat: `x.xx`"
              },
              "currency": {
                "type": "string",
                "description": "The transaction currency.\n  \nFormat: `ISO 4217`"
              },
              "processor_id": {
                "type": "string",
                "description": "If using Multiple MIDs, route to this processor (*processor_id* is obtained under Settings → Transaction Routing in the Control Panel)."
              },
              "dup_seconds": {
                "type": "integer",
                "maximum": 7862400,
                "description": "Sets the time in seconds for duplicate transaction checking on supported processors. Set to *0* to disable duplicate checking."
              }
            }
          },
          {
            "$ref": "#/components/schemas/Descriptor"
          },
          {
            "type": "object",
            "properties": {
              "billing_method": {
                "type": "string",
                "enum": [
                  "initial_recurring",
                  "recurring",
                  "installment"
                ],
                "description": "Recurring or installment classification for the processor.\n\n- `initial_recurring`: First transaction in a recurring sequence only.\n- `recurring`: Later charges in that sequence.\n- `installment`: Installment transactions; use `billing_number` and `billing_total` on supported processors.\n\nWhich values apply depends on the processor."
              },
              "billing_number": {
                "type": "integer",
                "minimum": 0,
                "maximum": 99,
                "description": "Specify installment billing number, on supported processors. For use when `billing_method` is set to \"installment\"."
              },
              "billing_total": {
                "type": "string",
                "description": "Specify installment billing total on supported processors. For use when `billing_method` is set to \"installment\"."
              },
              "order_template": {
                "type": "string",
                "description": "Order template ID."
              },
              "order_description": {
                "type": "string",
                "description": "Order description."
              },
              "orderid": {
                "type": "string",
                "description": "Order Id."
              },
              "ipaddress": {
                "type": "string",
                "description": "IP address of cardholder, this field is recommended.\n  \nFormat: `xxx.xxx.xxx.xxx`"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "first_name": {
                "type": "string",
                "description": "Cardholder's first name."
              },
              "last_name": {
                "type": "string",
                "description": "Cardholder's last name"
              },
              "company": {
                "type": "string",
                "description": "Cardholder's company"
              },
              "address1": {
                "type": "string",
                "description": "Card billing address"
              },
              "address2": {
                "type": "string",
                "description": "Card billing address, line 2"
              },
              "city": {
                "type": "string",
                "description": "Card billing city"
              },
              "state": {
                "type": "string",
                "description": "Card billing state.\n  \nFormat: `CC`"
              },
              "zip": {
                "type": "string",
                "description": "Card billing zip code"
              },
              "country": {
                "type": "string",
                "description": "Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
              },
              "phone": {
                "type": "string",
                "description": "Billing phone number"
              },
              "fax": {
                "type": "string",
                "description": "Billing fax number"
              },
              "email": {
                "type": "string",
                "format": "email",
                "description": "Billing email address"
              }
            }
          },
          {
            "$ref": "#/components/schemas/DriversLicense"
          },
          {
            "$ref": "#/components/schemas/Shipping"
          },
          {
            "$ref": "#/components/schemas/MerchantDefinedField"
          },
          {
            "type": "object",
            "properties": {
              "customer_receipt": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, when the customer is charged, they will be sent a transaction receipt."
              },
              "cardholder_auth": {
                "type": "string",
                "enum": [
                  "verified",
                  "attempted"
                ],
                "description": "Set 3D Secure condition. Value used to determine E-commerce indicator (ECI).\n  \n**Required for 3D Secure transactions**"
              },
              "cavv": {
                "type": "string",
                "description": "Cardholder authentication verification value.\n  \nFormat: `base64 encoded` **Required for 3D Secure transactions**"
              },
              "xid": {
                "type": "string",
                "description": "Cardholder authentication transaction id.\n  \nFormat: `base64 encoded` **Required for 3D Secure transactions**"
              },
              "three_ds_version": {
                "type": "string",
                "enum": [
                  "2.0.0",
                  "2.2.0"
                ],
                "description": "3DSecure version. **Required for 3D Secure transactions**"
              },
              "directory_server_id": {
                "type": "string",
                "description": "Directory Server Transaction ID. May be provided as part of 3DSecure 2.0 authentication.\n  \nFormat: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`"
              },
              "source_transaction_id": {
                "type": "string",
                "description": "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": {
                "type": "string",
                "description": "Set to 'Y' if you have Pinless Debit Conversion enabled but want to opt out for this transaction. Feature applies to selected processors only."
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "recurring": {
                "type": "string",
                "enum": [
                  "add_subscription"
                ],
                "description": "**Recurring Field:** Recurring action to be processed.",
                "x-group-key": "Recurring"
              },
              "plan_id": {
                "type": "string",
                "description": "**Recurring Field:** Create a subscription tied to a Plan ID if the sale/auth transaction is successful.\n\nRequired when **recurring** variable is set to `add_subscription`",
                "x-group-key": "Recurring"
              },
              "plan_payments": {
                "type": "integer",
                "description": "**Recurring Field:** The number of payments before the recurring plan is complete.\n\nNote: Use '0' for until canceled\n\nRequired when **recurring** variable is set to `add_subscription`",
                "x-group-key": "Recurring"
              },
              "plan_amount": {
                "type": "number",
                "description": "**Recurring Field:** The plan amount to be charged each billing cycle.\n\nFormat: `x.xx`\n\nRequired when **recurring** variable is set to `add_subscription`",
                "x-group-key": "Recurring"
              },
              "month_frequency": {
                "type": "integer",
                "minimum": 1,
                "maximum": 24,
                "description": "**Recurring Field:** How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'. \n\nRequired when **recurring** variable is set to `add_subscription`",
                "x-group-key": "Recurring"
              },
              "day_of_month": {
                "type": "integer",
                "minimum": 1,
                "maximum": 31,
                "description": "**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\n\nRequired when **recurring** variable is set to `add_subscription`",
                "x-group-key": "Recurring"
              },
              "day_frequency": {
                "type": "integer",
                "description": "**Recurring Field:** How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'.\n\nRequired when **recurring** variable is set to `add_subscription`",
                "x-group-key": "Recurring"
              },
              "start_date": {
                "type": "string",
                "format": "date",
                "description": "**Recurring Field:** The first day that the customer will be charged.\n\nFormat: `YYYYMMDD`\n\nRequired when **recurring** variable is set to `add_subscription`",
                "x-group-key": "Recurring"
              }
            }
          },
          {
            "$ref": "#/components/schemas/CustomerVaultFields"
          },
          {
            "$ref": "#/components/schemas/StoredCredentialsFields"
          },
          {
            "$ref": "#/components/schemas/LevelThreeOrderFields"
          },
          {
            "$ref": "#/components/schemas/LevelThreeLineItemDetailFields"
          },
          {
            "$ref": "#/components/schemas/PaymentFacilitatorFields"
          }
        ]
      },
      "SignatureImage": {
        "type": "object",
        "properties": {
          "signature_image": {
            "type": "string",
            "description": "Cardholder signature image.\n  \nFormat: `base64 encoded raw PNG image. (16kiB maximum)`"
          }
        }
      },
      "DeviceUnencryptedRetailMagneticStripeDataRequest": {
        "title": "Device Sale (Unencrypted Retail Magnetic Stripe Data)",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "track_1",
              "track_2",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "description": "The type of transaction to be processed. Must be one of: `auth`,`sale`,`credit`,`offline`,`validate`"
              },
              "partial_payments": {
                "type": "string",
                "enum": [
                  "settle_partial",
                  "payment_in_full"
                ],
                "description": "`settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off.\n\n`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "$ref": "#/components/schemas/DeviceUnencryptedRetailMagneticStripeData"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "DeviceMagTekMagensaEncryptedMagneticStripeData": {
        "type": "object",
        "properties": {
          "magnesafe_track_1": {
            "type": "string",
            "description": "Raw MagTek Magensa Data."
          },
          "magnesafe_track_2": {
            "type": "string",
            "description": "Raw MagTek Magensa Data."
          },
          "magnesafe_magneprint": {
            "type": "string",
            "description": "Raw MagTek Magensa Data."
          },
          "magnesafe_ksn": {
            "type": "string",
            "description": "Raw MagTek Magensa Data."
          },
          "magnesafe_magneprint_status": {
            "type": "string",
            "description": "Raw MagTek Magensa Data."
          }
        }
      },
      "DeviceMagTekMagensaEncryptedMagneticStripeDataRequest": {
        "title": "Device Sale (MagTek Magensa Encrypted Magnetic Stripe Data)",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "magnesafe_track_1",
              "magnesafe_track_2",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "description": "The type of transaction to be processed. Must be one of: `auth`,`sale`,`credit`,`offline`,`validate`"
              },
              "partial_payments": {
                "type": "string",
                "enum": [
                  "settle_partial",
                  "payment_in_full"
                ],
                "description": "`settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off.\n\n`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "$ref": "#/components/schemas/DeviceMagTekMagensaEncryptedMagneticStripeData"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "DeviceIDTechM130EncryptedSwipeData": {
        "type": "object",
        "properties": {
          "encrypted_track_1": {
            "type": "string",
            "description": "Raw encrypted data."
          },
          "encrypted_track_2": {
            "type": "string",
            "description": "Raw encrypted data."
          },
          "encrypted_track_3": {
            "type": "string",
            "description": "Raw encrypted data."
          },
          "encrypted_ksn": {
            "type": "string",
            "description": "Raw encrypted data."
          }
        }
      },
      "DeviceIDTechM130EncryptedSwipeDataRequest": {
        "title": "Device Sale (IDTech M130 Encrypted Swipe Data)",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "encrypted_track_1",
              "encrypted_track_2",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "description": "The type of transaction to be processed. Must be one of: `auth`,`sale`,`credit`,`offline`,`validate`"
              },
              "partial_payments": {
                "type": "string",
                "enum": [
                  "settle_partial",
                  "payment_in_full"
                ],
                "description": "`settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off.\n\n`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "$ref": "#/components/schemas/DeviceIDTechM130EncryptedSwipeData"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "DeviceIDTechM130EncryptedKeyedData": {
        "type": "object",
        "properties": {
          "encrypted_data": {
            "type": "string",
            "description": "Raw encrypted data."
          }
        }
      },
      "DeviceIDTechM130EncryptedKeyedDataRequest": {
        "title": "Device Sale (IDTech M130 Encrypted Keyed Data)",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "encrypted_data",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "description": "The type of transaction to be processed. Must be one of: `auth`,`sale`,`credit`,`offline`,`validate`"
              },
              "partial_payments": {
                "type": "string",
                "enum": [
                  "settle_partial",
                  "payment_in_full"
                ],
                "description": "`settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off.\n\n`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "$ref": "#/components/schemas/DeviceIDTechM130EncryptedKeyedData"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "DeviceIngenicoTelium2ChipCardData": {
        "type": "object",
        "properties": {
          "entry_mode": {
            "type": "string",
            "description": "The type of transaction data to be processed. Must be `emv_icc`"
          },
          "emv_auth_request_data": {
            "type": "string",
            "description": "EMV Data for the transaction as received from the EMV Chip Card SDK."
          },
          "emv_device": {
            "type": "string",
            "description": "The EMV - capable card reader. Must be `ingenico_rba`"
          },
          "verification_method": {
            "type": "string",
            "enum": [
              "signature",
              "offline_pin",
              "offline_pin_signature",
              "none"
            ],
            "description": "Method used to verify the EMV transaction."
          },
          "encrypted_ksn": {
            "type": "string",
            "description": "Raw encrypted data."
          },
          "encrypted_track_2": {
            "type": "string",
            "description": "Raw encrypted data."
          }
        }
      },
      "DeviceIngenicoTelium2ChipCardDataRequest": {
        "title": "Device Sale (Ingenico Telium 2 Chip Card Data)",
        "allOf": [
          {
            "type": "object",
            "required": [
              "entry_mode",
              "emv_auth_request_data",
              "emv_device",
              "verification_method",
              "encrypted_ksn",
              "encrypted_track_2",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "description": "The type of transaction to be processed. Must be one of: `auth`,`sale`,`credit`,`offline`,`validate`"
              },
              "partial_payments": {
                "type": "string",
                "enum": [
                  "settle_partial",
                  "payment_in_full"
                ],
                "description": "`settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off.\n\n`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "$ref": "#/components/schemas/DeviceIngenicoTelium2ChipCardData"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "DeviceIngenicoTelium2SwipeData": {
        "type": "object",
        "properties": {
          "entry_mode": {
            "type": "string",
            "enum": [
              "swiped",
              "swiped_emv_fallback"
            ],
            "description": "The type of transaction data to be processed."
          },
          "emv_device": {
            "type": "string",
            "description": "The EMV - capable card reader. Must be `ingenico_rba`"
          },
          "encrypted_ksn": {
            "type": "string",
            "description": "Raw encrypted data."
          },
          "encrypted_track_1": {
            "type": "string",
            "description": "Raw encrypted data."
          },
          "encrypted_track_2": {
            "type": "string",
            "description": "Raw encrypted data."
          }
        }
      },
      "DeviceIngenicoTelium2SwipeDataRequest": {
        "title": "Device Sale (Ingenico Telium 2 Swipe Data)",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "entry_mode",
              "emv_device",
              "encrypted_track_1",
              "encrypted_track_2",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "description": "The type of transaction to be processed. Must be one of: `auth`,`sale`,`credit`,`offline`,`validate`"
              },
              "partial_payments": {
                "type": "string",
                "enum": [
                  "settle_partial",
                  "payment_in_full"
                ],
                "description": "`settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off.\n\n`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "$ref": "#/components/schemas/DeviceIngenicoTelium2SwipeData"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "DeviceIngenicoTelium2NFCData": {
        "type": "object",
        "properties": {
          "entry_mode": {
            "type": "string",
            "description": "The type of transaction data to be processed. Must be `nfc_msd`"
          },
          "emv_device": {
            "type": "string",
            "description": "The EMV - capable card reader. Must be `ingenico_rba`"
          },
          "encrypted_ksn": {
            "type": "string",
            "description": "Raw encrypted data."
          },
          "encrypted_track_2": {
            "type": "string",
            "description": "Raw encrypted data."
          }
        }
      },
      "DeviceIngenicoTelium2NFCDataRequest": {
        "title": "Device Sale (Ingenico Telium 2 NFC Data)",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "entry_mode",
              "emv_device",
              "encrypted_track_2",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "description": "The type of transaction to be processed. Must be one of: `auth`,`sale`,`credit`,`offline`,`validate`"
              },
              "partial_payments": {
                "type": "string",
                "enum": [
                  "settle_partial",
                  "payment_in_full"
                ],
                "description": "`settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off.\n\n`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "$ref": "#/components/schemas/DeviceIngenicoTelium2NFCData"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "DeviceIngenicoTelium2KeyedData": {
        "type": "object",
        "properties": {
          "entry_mode": {
            "type": "string",
            "description": "The type of transaction data to be processed. Must be `keyed`"
          },
          "emv_device": {
            "type": "string",
            "description": "The EMV - capable card reader. Must be `ingenico_rba`"
          },
          "encrypted_ksn": {
            "type": "string",
            "description": "Raw encrypted data."
          },
          "encrypted_track_2": {
            "type": "string",
            "description": "Raw encrypted data."
          }
        }
      },
      "DeviceIngenicoTelium2KeyedDataRequest": {
        "title": "Device Sale (Ingenico Telium 2 Keyed Data)",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "entry_mode",
              "emv_device",
              "encrypted_track_2",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "description": "The type of transaction to be processed. Must be one of: `auth`,`sale`,`credit`,`offline`,`validate`"
              },
              "partial_payments": {
                "type": "string",
                "enum": [
                  "settle_partial",
                  "payment_in_full"
                ],
                "description": "`settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off.\n\n`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "$ref": "#/components/schemas/DeviceIngenicoTelium2KeyedData"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "CreditCard": {
        "type": "object",
        "properties": {
          "ccnumber": {
            "type": "string",
            "enum": [
              "4111111111111111",
              "5431111111111111",
              "6011000991300009",
              "341111111111111",
              "30205252489926",
              "3541963594572595",
              "6799990100000000019"
            ],
            "description": "Credit card number.\n\n<details>\n<summary>Allowed Card Numbers:</summary>\n\n| Card Type         | Test Card Number     |\n|:------------------|:---------------------|\n| Visa              | 4111111111111111     |\n| MasterCard        | 5431111111111111     |\n| Discover          | 6011000991300009     |\n| American Express  | 341111111111111      |\n| Diner's Club      | 30205252489926       |\n| JCB               | 3541963594572595     |\n| Maestro           | 6799990100000000019  |\n</details>"
          },
          "ccexp": {
            "type": "string",
            "description": "Credit card expiration date.\n  \nFormat: `MMYY`"
          }
        }
      },
      "CreditCardWithCvv": {
        "allOf": [
          {
            "$ref": "#/components/schemas/CreditCard"
          },
          {
            "type": "object",
            "properties": {
              "cvv": {
                "type": "string",
                "description": "The card security code. While this is not required, it is strongly recommended."
              }
            }
          }
        ]
      },
      "Industry": {
        "type": "object",
        "properties": {
          "industry": {
            "type": "string",
            "enum": [
              "ecommerce",
              "moto",
              "retail",
              "restaurant",
              "lodging"
            ],
            "description": "The industry parameter is supported across multiple transaction types. Its purpose is to identify the merchant industry type for processing"
          }
        }
      },
      "CustomerTokenVaultFields": {
        "type": "object",
        "properties": {
          "network_tokenize": {
            "type": "boolean <integer>",
            "enum": [
              "0",
              "1"
            ],
            "description": "Overrides the Customer Token Vault settings and tokenizes the transaction if eligible. Default - `0`.",
            "x-group-key": "Customer Token Vault"
          }
        }
      },
      "CreditCardSaleRequest": {
        "title": "Credit Card - Sale",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "ccnumber",
              "ccexp",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "description": "The type of transaction to be processed. Must be `sale`"
              },
              "partial_payments": {
                "type": "string",
                "enum": [
                  "settle_partial",
                  "payment_in_full"
                ],
                "description": "`settle_partial`: Settles any amount of tender collected (captured partial auth's and approved partial sales) at cut off.\n\n`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/CreditCardWithCvv"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/Industry"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          },
          {
            "$ref": "#/components/schemas/CustomerTokenVaultFields"
          }
        ]
      },
      "CreditCardAuthorizeRequest": {
        "title": "Credit Card - Authorize",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "ccnumber",
              "ccexp",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "auth"
                ],
                "description": "The type of transaction to be processed."
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/CreditCardWithCvv"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/Industry"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          },
          {
            "$ref": "#/components/schemas/CustomerTokenVaultFields"
          }
        ]
      },
      "CreditCardCaptureRequest": {
        "title": "Credit Card - Capture",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "transactionid",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "capture"
                ],
                "description": "The type of transaction to be processed."
              },
              "transactionid": {
                "type": "string",
                "description": "Original payment gateway transaction id."
              },
              "amount": {
                "type": "string",
                "description": "Total amount to be settled. This amount must be equal to or less than the original authorized amount.\n  \nFormat: `x.xx`"
              },
              "tracking_number": {
                "type": "string",
                "description": "Shipping tracking number."
              },
              "shipping_carrier": {
                "type": "string",
                "enum": [
                  "ups",
                  "fedex",
                  "dhl",
                  "usps"
                ],
                "description": "Shipping carrier."
              },
              "orderid": {
                "type": "string",
                "description": "Order ID."
              }
            }
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "CreditCardValidateRequest": {
        "title": "Credit Card - Validate",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "ccnumber",
              "ccexp",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "validate"
                ],
                "description": "The type of transaction to be processed."
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/CreditCardWithCvv"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "CreditCardCreditRequest": {
        "title": "Credit Card - Credit",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "ccnumber",
              "ccexp",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "credit"
                ],
                "description": "The type of transaction to be processed."
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/CreditCardWithCvv"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/Industry"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          },
          {
            "$ref": "#/components/schemas/CustomerTokenVaultFields"
          }
        ]
      },
      "CreditCardOfflineRequest": {
        "title": "Credit Card - Offline",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "ccnumber",
              "ccexp",
              "amount",
              "authorization_code",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "offline"
                ],
                "description": "The type of transaction to be processed. **Note** that offline transactions need to be enabled."
              },
              "authorization_code": {
                "type": "string",
                "description": "Specify authorization code."
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/CreditCardWithCvv"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/Industry"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "CreditCardPaymentInFullPartialRequest": {
        "title": "Credit Card - Complete Partial Payment in Full",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "ccnumber",
              "ccexp",
              "amount",
              "partial_payment_id",
              "partial_payments",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "complete_partial_payment"
                ],
                "description": "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": {
                "type": "string",
                "enum": [
                  "payment_in_full"
                ],
                "description": "`payment_in_full`: Required that any split tendered transaction is collected in-full before settlement gets initiated."
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/PartialPaymentInfo"
          },
          {
            "$ref": "#/components/schemas/CreditCardWithCvv"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "$ref": "#/components/schemas/Industry"
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "VoidRequest": {
        "title": "Void Transaction",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "transactionid",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "void"
                ],
                "description": "The type of transaction to be processed."
              },
              "transactionid": {
                "type": "string",
                "description": "Original payment gateway transaction id."
              },
              "payment": {
                "type": "string",
                "enum": [
                  "check",
                  "creditcard"
                ],
                "description": "**Required for ACH** The type of payment. Default - `creditcard`."
              },
              "void_reason": {
                "type": "string",
                "enum": [
                  "fraud",
                  "user_cancel",
                  "icc_rejected",
                  "icc_card_removed",
                  "icc_no_confirmation",
                  "pos_timeout"
                ],
                "description": "**Conditionally Required** if Transaction is EMV. Reason the EMV transaction is being voided."
              }
            }
          }
        ]
      },
      "RefundAmount": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "string",
            "description": "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.\n  \nFormat: `x.xx`"
          }
        }
      },
      "RefundRequest": {
        "title": "Refund Transaction",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "transactionid",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "refund"
                ],
                "description": "The type of transaction to be processed."
              },
              "transactionid": {
                "type": "string",
                "description": "Original payment gateway transaction id."
              },
              "payment": {
                "type": "string",
                "enum": [
                  "check",
                  "creditcard"
                ],
                "description": "**Required for ACH** The type of payment. Default - `creditcard`."
              }
            }
          },
          {
            "$ref": "#/components/schemas/RefundAmount"
          }
        ]
      },
      "ACH": {
        "type": "object",
        "properties": {
          "checkname": {
            "type": "string",
            "description": "The name on the customer's ACH account."
          },
          "checkaba": {
            "type": "string",
            "minLength": 9,
            "maxLength": 9,
            "description": "The customer's bank routing number."
          },
          "checkaccount": {
            "type": "string",
            "description": "The customer's bank account number."
          },
          "account_holder_type": {
            "type": "string",
            "enum": [
              "business",
              "personal"
            ],
            "description": "The type of ACH account the customer has."
          },
          "account_type": {
            "type": "string",
            "enum": [
              "checking",
              "savings"
            ],
            "description": "The type of ACH account the customer has."
          },
          "sec_code": {
            "type": "string",
            "enum": [
              "PPD",
              "WEB",
              "TEL",
              "CCD"
            ],
            "description": "The Standard Entry Class code of the ACH transaction."
          }
        }
      },
      "ACHSaleRequest": {
        "title": "ACH - Sale",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "checkname",
              "checkaba",
              "checkaccount",
              "amount",
              "payment",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "sale"
                ],
                "description": "The type of transaction to be processed."
              },
              "payment": {
                "type": "string",
                "description": "The type of payment.",
                "enum": [
                  "check"
                ]
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/ACH"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "type": "object",
            "properties": {
              "social_security_number": {
                "type": "string",
                "description": "Customer's social security number, checked against bad check writers database if check verification is enabled."
              }
            }
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "ACHCreditRequest": {
        "title": "ACH - Credit",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "checkname",
              "checkaba",
              "checkaccount",
              "payment",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "credit"
                ],
                "description": "The type of transaction to be processed. Note that credits need to be enabled."
              },
              "payment": {
                "type": "string",
                "description": "The type of payment.",
                "enum": [
                  "check",
                  "cash"
                ]
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/ACH"
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "type": "object",
            "properties": {
              "social_security_number": {
                "type": "string",
                "description": "Customer's social security number, checked against bad check writers database if check verification is enabled."
              }
            }
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "CashSaleRequest": {
        "title": "Cash - Sale",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "payment",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "sale"
                ],
                "description": "The type of transaction to be processed."
              },
              "payment": {
                "type": "string",
                "description": "The type of payment.",
                "enum": [
                  "cash"
                ]
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/BaseTransaction"
          },
          {
            "type": "object",
            "properties": {
              "social_security_number": {
                "type": "string",
                "description": "Customer's social security number, checked against bad check writers database if check verification is enabled."
              }
            }
          },
          {
            "$ref": "#/components/schemas/SignatureImage"
          }
        ]
      },
      "AuthUsingCustomerVault": {
        "title": "Authorize Using Customer Vault",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "customer_vault_id",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "auth"
                ],
                "description": "The type of transaction to be processed."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id."
              },
              "billing_id": {
                "type": "string",
                "description": "Billing id assigned to specific billing record. Billing id should be used when calling a Vault record with multiple billings added."
              }
            }
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/Industry"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/CustomerTokenVaultFields"
          }
        ]
      },
      "CreditUsingCustomerVault": {
        "title": "Credit transaction Using Customer Vault",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "customer_vault_id",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "credit"
                ],
                "description": "The type of transaction to be processed."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id."
              },
              "billing_id": {
                "type": "string",
                "description": "Billing id assigned to specific billing record. Billing id should be used when calling a Vault record with multiple billings added."
              }
            }
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/Industry"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/CustomerTokenVaultFields"
          }
        ]
      },
      "OfflineUsingCustomerVault": {
        "title": "Offline transaction Using Customer Vault",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "customer_vault_id",
              "amount",
              "authorization_code",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "offline"
                ],
                "description": "The type of transaction to be processed."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id."
              },
              "authorization_code": {
                "type": "string",
                "description": "Specify authorization code."
              },
              "billing_id": {
                "type": "string",
                "description": "Billing id assigned to specific billing record. Billing id should be used when calling a Vault record with multiple billings added."
              }
            }
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          }
        ]
      },
      "SaleUsingCustomerVault": {
        "title": "Sale Using Customer Vault",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "customer_vault_id",
              "amount",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "sale"
                ],
                "description": "The type of transaction to be processed."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id."
              },
              "billing_id": {
                "type": "string",
                "description": "Billing id assigned to specific billing record. Billing id should be used when calling a Vault record with multiple billings added."
              }
            }
          },
          {
            "$ref": "#/components/schemas/Amount"
          },
          {
            "$ref": "#/components/schemas/Industry"
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          },
          {
            "$ref": "#/components/schemas/CustomerTokenVaultFields"
          }
        ]
      },
      "ValidateUsingCustomerVault": {
        "title": "Validate Using Customer Vault",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "customer_vault_id",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "type": {
                "type": "string",
                "enum": [
                  "validate"
                ],
                "description": "The type of transaction to be processed."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id."
              },
              "billing_id": {
                "type": "string",
                "description": "Billing id assigned to specific billing record. Billing id should be used when calling a Vault record with multiple billings added."
              }
            }
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 20 `merchant_defined_field_#` are allowed."
            }
          }
        ]
      },
      "ProductInformation": {
        "type": "object",
        "properties": {
          "item_product_code_1": {
            "type": "string",
            "description": "Merchant defined description code of the item being purchased."
          },
          "item_description_1": {
            "type": "string",
            "description": "Description of the item(s) being supplied."
          },
          "item_commodity_code_1": {
            "type": "string",
            "description": "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": {
            "type": "string",
            "description": "Code for units of measurement as used in international trade. Default: 'EACH'"
          },
          "item_unit_cost_1": {
            "type": "number",
            "description": "Unit cost of item purchased, may contain up to 4 decimal places.",
            "format": "float"
          },
          "item_quantity_1": {
            "type": "integer",
            "description": "Quantity of the item(s) being purchased. Default: '1'"
          },
          "item_total_amount_1": {
            "type": "number",
            "description": "Purchase amount associated with the item. Defaults to: 'item_unit_cost_#' x 'item_quantity_#' rounded to the nearest penny.",
            "format": "float"
          },
          "item_tax_amount_1": {
            "type": "number",
            "description": "Amount of sales tax on specific item. Amount should not be included in 'total_amount_#'. Default: '0.00'",
            "format": "float"
          },
          "item_tax_rate_1": {
            "type": "number",
            "description": "Percentage representing the value-added tax applied. Default: '0.00'",
            "format": "float"
          },
          "item_discount_amount_1": {
            "type": "number",
            "description": "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_#'.",
            "format": "float"
          },
          "item_discount_rate_1": {
            "type": "number",
            "description": "Discount rate for the line item. 1% = 1.00. Default: '0.00'",
            "format": "float"
          },
          "item_tax_type_1": {
            "type": "string",
            "description": "Type of value-added taxes that are being used."
          },
          "item_alternate_tax_id_1": {
            "type": "string",
            "description": "Tax identification number of the merchant that reported the alternate tax amount."
          }
        }
      },
      "CreateInvoice": {
        "title": "Create Invoice",
        "allOf": [
          {
            "required": [
              "invoicing",
              "amount",
              "email",
              "security_key"
            ]
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 99 sets of item_* fields are allowed. Up to 20 merchant_defined_field_* are allowed."
            }
          },
          {
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "invoicing": {
                "type": "string",
                "enum": [
                  "add_invoice"
                ],
                "description": "Create a new invoice and email it to the customer."
              },
              "amount": {
                "type": "string",
                "description": "Total amount to be invoiced. Must be greater than 0.00.\n\nFormat: x.xx"
              },
              "email": {
                "type": "string",
                "description": "Billing email address"
              },
              "payment_terms": {
                "type": "string",
                "description": "When the invoice should be paid. Values: 'upon_receipt', or integers from 0-999. Default - `upon_receipt`."
              },
              "payment_methods_allowed": {
                "type": "string",
                "description": "What payment methods a customer may use when paying invoice.\n\nDefaults to all available payment methods available in your merchant account\nValues: 'cc', 'ck', and 'cs'. Multiple payment types can be selected by comma-separating values."
              },
              "processor_id": {
                "type": "string",
                "description": "If using Multiple MIDs, route to this processor (processor_id is obtained under Settings → Transaction Routing in the Control Panel).\n\nIf allowing multiple payment types, one processor_id can be selected per payment type by submitting comma-separated values."
              },
              "currency": {
                "type": "string",
                "description": "The transaction currency.\n\nFormat: ISO 4217"
              },
              "order_description": {
                "type": "string",
                "description": "Order description. Legacy variable includes: orderdescription"
              },
              "orderid": {
                "type": "string",
                "description": "Order ID."
              },
              "customer_id": {
                "type": "string",
                "description": "Customer ID."
              },
              "customer_tax_id": {
                "type": "string",
                "description": "Customer Tax ID."
              },
              "tax": {
                "type": "number",
                "description": "Total sales tax amount.",
                "format": "float"
              },
              "shipping": {
                "type": "number",
                "description": "Total shipping amount.",
                "format": "float"
              },
              "ponumber": {
                "type": "string",
                "description": "Original purchase order."
              },
              "first_name": {
                "type": "string",
                "description": "Cardholder's first name. Legacy variable includes: firstname"
              },
              "last_name": {
                "type": "string",
                "description": "Cardholder's last name. Legacy variable includes: lastname"
              },
              "company": {
                "type": "string",
                "description": "Cardholder's company."
              },
              "address1": {
                "type": "string",
                "description": "Card billing address."
              },
              "address2": {
                "type": "string",
                "description": "Card billing address, line 2."
              },
              "city": {
                "type": "string",
                "description": "Card billing city."
              },
              "state": {
                "type": "string",
                "description": "Card billing state.\n  \nFormat: `CC`"
              },
              "zip": {
                "type": "string",
                "description": "Card billing zip code."
              },
              "country": {
                "type": "string",
                "description": "Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
              },
              "phone": {
                "type": "string",
                "description": "Billing phone number."
              },
              "fax": {
                "type": "string",
                "description": "Billing fax number."
              },
              "website": {
                "type": "string",
                "description": "Customer website."
              },
              "shipping_firstname": {
                "type": "string",
                "description": "Shipping first name."
              },
              "shipping_lastname": {
                "type": "string",
                "description": "Shipping last name."
              },
              "shipping_company": {
                "type": "string",
                "description": "Shipping company."
              },
              "shipping_address1": {
                "type": "string",
                "description": "Shipping address."
              },
              "shipping_address2": {
                "type": "string",
                "description": "Shipping address, line 2."
              },
              "shipping_city": {
                "type": "string",
                "description": "Shipping city."
              },
              "shipping_state": {
                "type": "string",
                "description": "Shipping state.\n  \nFormat: `CC`"
              },
              "shipping_zip": {
                "type": "string",
                "description": "Shipping zip code."
              },
              "shipping_country": {
                "type": "string",
                "description": "Shipping country. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
              },
              "shipping_email": {
                "type": "string",
                "description": "Shipping email address."
              },
              "merchant_defined_field_1": {
                "type": "string",
                "description": "Merchant defined field which can be set up in merchant control panel under Settings->Merchant Defined Fields. You can pass custom information in up to 20 fields.\n\nFormat: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc..."
              }
            }
          },
          {
            "$ref": "#/components/schemas/ProductInformation"
          }
        ]
      },
      "UpdateInvoice": {
        "title": "Update Invoice",
        "allOf": [
          {
            "required": [
              "invoicing",
              "invoice_id",
              "security_key"
            ]
          },
          {
            "additionalProperties": {
              "type": "string",
              "description": "Up to 99 sets of item_* fields are allowed. Up to 20 merchant_defined_field_* are allowed."
            }
          },
          {
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "invoicing": {
                "type": "string",
                "enum": [
                  "update_invoice"
                ],
                "description": "Update invoice"
              },
              "invoice_id": {
                "type": "string",
                "description": "The invoice ID to be updated."
              },
              "amount": {
                "type": "string",
                "description": "Total amount to be invoiced. Must be greater than 0.00.\n\nFormat: x.xx"
              },
              "email": {
                "type": "string",
                "description": "Billing email address"
              },
              "payment_terms": {
                "type": "string",
                "description": "When the invoice should be paid. Values: 'upon_receipt', or integers from 0-999. Default - `upon_receipt`."
              },
              "payment_methods_allowed": {
                "type": "string",
                "description": "What payment methods a customer may use when paying invoice.\n\nDefaults to all available payment methods available in your merchant account\nValues: 'cc', 'ck', and 'cs'. Multiple payment types can be selected by comma-separating values."
              },
              "processor_id": {
                "type": "string",
                "description": "If using Multiple MIDs, route to this processor (processor_id is obtained under Settings → Transaction Routing in the Control Panel).\n\nIf allowing multiple payment types, one processor_id can be selected per payment type by submitting comma-separated values."
              },
              "order_description": {
                "type": "string",
                "description": "Order description. Legacy variable includes: orderdescription"
              },
              "orderid": {
                "type": "string",
                "description": "Order ID."
              },
              "customer_id": {
                "type": "string",
                "description": "Customer ID."
              },
              "customer_tax_id": {
                "type": "string",
                "description": "Customer Tax ID."
              },
              "tax": {
                "type": "number",
                "description": "Total sales tax amount.",
                "format": "float"
              },
              "shipping": {
                "type": "number",
                "description": "Total shipping amount.",
                "format": "float"
              },
              "ponumber": {
                "type": "string",
                "description": "Original purchase order."
              },
              "first_name": {
                "type": "string",
                "description": "Cardholder's first name. Legacy variable includes: firstname"
              },
              "last_name": {
                "type": "string",
                "description": "Cardholder's last name. Legacy variable includes: lastname"
              },
              "company": {
                "type": "string",
                "description": "Cardholder's company."
              },
              "address1": {
                "type": "string",
                "description": "Card billing address."
              },
              "address2": {
                "type": "string",
                "description": "Card billing address, line 2."
              },
              "city": {
                "type": "string",
                "description": "Card billing city."
              },
              "state": {
                "type": "string",
                "description": "Card billing state.\n  \nFormat: `CC`"
              },
              "zip": {
                "type": "string",
                "description": "Card billing zip code."
              },
              "country": {
                "type": "string",
                "description": "Card billing country. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
              },
              "phone": {
                "type": "string",
                "description": "Billing phone number."
              },
              "fax": {
                "type": "string",
                "description": "Billing fax number."
              },
              "website": {
                "type": "string",
                "description": "Customer website."
              },
              "shipping_firstname": {
                "type": "string",
                "description": "Shipping first name."
              },
              "shipping_lastname": {
                "type": "string",
                "description": "Shipping last name."
              },
              "shipping_company": {
                "type": "string",
                "description": "Shipping company."
              },
              "shipping_address1": {
                "type": "string",
                "description": "Shipping address."
              },
              "shipping_address2": {
                "type": "string",
                "description": "Shipping address, line 2."
              },
              "shipping_city": {
                "type": "string",
                "description": "Shipping city."
              },
              "shipping_state": {
                "type": "string",
                "description": "Shipping state.\n  \nFormat: `CC`"
              },
              "shipping_zip": {
                "type": "string",
                "description": "Shipping zip code."
              },
              "shipping_country": {
                "type": "string",
                "description": "Shipping country. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
              },
              "shipping_email": {
                "type": "string",
                "description": "Shipping email address."
              },
              "merchant_defined_field_1": {
                "type": "string",
                "description": "Merchant defined field which can be set up in merchant control panel under Settings->Merchant Defined Fields. You can pass custom information in up to 20 fields.\n\nFormat: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc..."
              }
            }
          },
          {
            "$ref": "#/components/schemas/ProductInformation"
          }
        ]
      },
      "SendInvoice": {
        "title": "Send Invoice",
        "allOf": [
          {
            "required": [
              "invoicing",
              "invoice_id",
              "security_key"
            ]
          },
          {
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "invoicing": {
                "type": "string",
                "enum": [
                  "send_invoice"
                ],
                "description": "Send an existing invoice to a customer."
              },
              "invoice_id": {
                "type": "string",
                "description": "The invoice ID to be emailed."
              }
            }
          }
        ]
      },
      "CloseInvoice": {
        "title": "Close Invoice",
        "allOf": [
          {
            "required": [
              "invoicing",
              "invoice_id",
              "security_key"
            ]
          },
          {
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "invoicing": {
                "type": "string",
                "enum": [
                  "close_invoice"
                ],
                "description": "The invoice to be closed."
              },
              "invoice_id": {
                "type": "string",
                "description": "The invoice ID to be closed."
              }
            }
          }
        ]
      },
      "OrderDetails": {
        "type": "object",
        "properties": {
          "orderid": {
            "type": "string",
            "description": "Order id"
          },
          "order_description": {
            "type": "string",
            "description": "Order Description."
          }
        }
      },
      "BillingDetails": {
        "type": "object",
        "properties": {
          "first_name": {
            "type": "string",
            "description": "Cardholder's first name."
          },
          "last_name": {
            "type": "string",
            "description": "Cardholder's last name."
          },
          "address1": {
            "type": "string",
            "description": "Card billing address."
          },
          "city": {
            "type": "string",
            "description": "Card billing city"
          },
          "state": {
            "type": "string",
            "description": "Card billing state.\n  \nFormat: `CC`"
          },
          "zip": {
            "type": "string",
            "description": "Card billing postal code."
          },
          "country": {
            "type": "string",
            "description": "Card billing country code. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
          },
          "phone": {
            "type": "string",
            "description": "Billing phone number."
          },
          "email": {
            "type": "string",
            "description": "Billing email address."
          },
          "company": {
            "type": "string",
            "description": "Cardholder's company."
          },
          "address2": {
            "type": "string",
            "description": "Card billing address, line 2."
          },
          "fax": {
            "type": "string",
            "description": "Billing fax number."
          }
        }
      },
      "ShippingDetails": {
        "type": "object",
        "title": "Shipping details with phone and fax",
        "allOf": [
          {
            "$ref": "#/components/schemas/Shipping"
          },
          {
            "type": "object",
            "properties": {
              "shipping_phone": {
                "type": "string",
                "description": "Shipping phone number."
              },
              "shipping_fax": {
                "type": "string",
                "description": "Shipping fax number."
              }
            }
          }
        ]
      },
      "CreateCustomer": {
        "type": "object",
        "title": "Create Customer",
        "allOf": [
          {
            "required": [
              "customer_vault",
              "ccnumber",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "customer_vault": {
                "type": "string",
                "enum": [
                  "add_customer"
                ],
                "description": "Create a secure Customer Vault record."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id."
              },
              "billing_id": {
                "type": "string",
                "description": "Billing id to be assigned or updated. If none is provided, one will be created or the billing id with priority '1' will be updated."
              },
              "payment_token": {
                "type": "string",
                "description": "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)."
              },
              "applepay_payment_data": {
                "type": "string",
                "description": "The encrypted token created when integration directly to the Apple Pay SDK."
              },
              "googlepay_payment_data": {
                "type": "string",
                "description": "The encrypted token created when integration directly to the Google Pay SDK."
              },
              "currency": {
                "type": "string",
                "description": "Set transaction currency."
              },
              "payment": {
                "type": "string",
                "enum": [
                  "creditcard",
                  "check"
                ],
                "description": "Set payment type to ACH or credit card."
              },
              "shipping_id": {
                "type": "string",
                "description": "Shipping entry id. If none is provided, one will be created or the billing id with priority '1' will be updated."
              },
              "source_transaction_id": {
                "type": "string",
                "description": "Specifies a payment gateway transaction id in order to associate payment information with a Customer Vault record."
              },
              "acu_enabled": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, credit card will be evaluated and sent based upon Automatic Card Updater settings. If set to false, credit card will not be submitted for updates when Automatic Card Updater runs. Default: 'true'"
              }
            }
          },
          {
            "$ref": "#/components/schemas/CreditCard"
          },
          {
            "$ref": "#/components/schemas/ACH"
          },
          {
            "$ref": "#/components/schemas/OrderDetails"
          },
          {
            "$ref": "#/components/schemas/BillingDetails"
          },
          {
            "$ref": "#/components/schemas/ShippingDetails"
          },
          {
            "$ref": "#/components/schemas/MerchantDefinedField"
          }
        ]
      },
      "CreateCustomerDigitalWallet": {
        "type": "object",
        "title": "Create Customer with Digital Wallet",
        "allOf": [
          {
            "required": [
              "customer_vault",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "customer_vault": {
                "type": "string",
                "enum": [
                  "add_customer"
                ],
                "description": "Create a secure Customer Vault record."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id. If not set, the payment gateway will randomly generate a Customer Vault id."
              },
              "billing_id": {
                "type": "string",
                "description": "Billing id to be assigned or updated. If none is provided, one will be created or the billing id with priority '1' will be updated."
              },
              "payment_token": {
                "type": "string",
                "description": "The tokenized version of the customer's wallet 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)."
              },
              "applepay_payment_data": {
                "type": "string",
                "description": "The encrypted payment data from the Apple Pay SDK."
              },
              "googlepay_payment_data": {
                "type": "string",
                "description": "The encrypted token created when integration directly to the Google Pay SDK."
              },
              "currency": {
                "type": "string",
                "description": "Set transaction currency."
              },
              "shipping_id": {
                "type": "string",
                "description": "Shipping entry id. If none is provided, one will be created or the billing id with priority '1' will be updated."
              },
              "source_transaction_id": {
                "type": "string",
                "description": "Specifies a payment gateway transaction id in order to associate payment information with a Customer Vault record."
              },
              "acu_enabled": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, credit card will be evaluated and sent based upon Automatic Card Updater settings. If set to false, credit card will not be submitted for updates when Automatic Card Updater runs. Default: 'true'"
              }
            }
          },
          {
            "$ref": "#/components/schemas/OrderDetails"
          },
          {
            "$ref": "#/components/schemas/BillingDetails"
          },
          {
            "$ref": "#/components/schemas/ShippingDetails"
          },
          {
            "$ref": "#/components/schemas/MerchantDefinedField"
          }
        ]
      },
      "UpdateCustomer": {
        "type": "object",
        "title": "Update Customer",
        "allOf": [
          {
            "required": [
              "customer_vault",
              "customer_vault_id",
              "ccnumber",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "customer_vault": {
                "type": "string",
                "enum": [
                  "update_customer"
                ],
                "description": "Update a secure Customer Vault record."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id."
              },
              "billing_id": {
                "type": "string",
                "description": "Billing id to be assigned or updated. If none is provided, one will be created or the billing id with priority '1' will be updated."
              },
              "payment_token": {
                "type": "string",
                "description": "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)."
              },
              "applepay_payment_data": {
                "type": "string",
                "description": "The encrypted token created when integration directly to the Apple Pay SDK."
              },
              "googlepay_payment_data": {
                "type": "string",
                "description": "The encrypted token created when integration directly to the Google Pay SDK."
              },
              "currency": {
                "type": "string",
                "description": "Set transaction currency."
              },
              "payment": {
                "type": "string",
                "enum": [
                  "creditcard",
                  "check"
                ],
                "description": "Set payment type to ACH or credit card."
              },
              "shipping_id": {
                "type": "string",
                "description": "Shipping entry id. If none is provided, one will be created or the billing id with priority '1' will be updated."
              },
              "source_transaction_id": {
                "type": "string",
                "description": "Specifies a payment gateway transaction id in order to associate payment information with a Customer Vault record."
              },
              "acu_enabled": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, credit card will be evaluated and sent based upon Automatic Card Updater settings. If set to false, credit card will not be submitted for updates when Automatic Card Updater runs. Default: 'true'"
              }
            }
          },
          {
            "$ref": "#/components/schemas/CreditCard"
          },
          {
            "$ref": "#/components/schemas/ACH"
          },
          {
            "$ref": "#/components/schemas/OrderDetails"
          },
          {
            "$ref": "#/components/schemas/BillingDetails"
          },
          {
            "$ref": "#/components/schemas/ShippingDetails"
          },
          {
            "$ref": "#/components/schemas/MerchantDefinedField"
          }
        ]
      },
      "DeleteCustomer": {
        "type": "object",
        "title": "Delete Customer",
        "required": [
          "customer_vault",
          "customer_vault_id",
          "security_key"
        ],
        "properties": {
          "security_key": {
            "$ref": "#/components/schemas/SecurityKey"
          },
          "customer_vault": {
            "type": "string",
            "enum": [
              "delete_customer"
            ],
            "description": "Deletes a secure Customer Vault record."
          },
          "customer_vault_id": {
            "type": "string",
            "description": "Specifies a Customer Vault id."
          }
        }
      },
      "CreateBilling": {
        "type": "object",
        "title": "Create Billing",
        "allOf": [
          {
            "required": [
              "customer_vault",
              "customer_vault_id",
              "ccnumber",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "customer_vault": {
                "type": "string",
                "enum": [
                  "add_billing"
                ],
                "description": "Create a billing record for the given Customer Vault record."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id."
              },
              "billing_id": {
                "type": "string",
                "description": "Specifies a billing id."
              }
            }
          },
          {
            "$ref": "#/components/schemas/CreditCard"
          },
          {
            "$ref": "#/components/schemas/BillingDetails"
          }
        ]
      },
      "UpdateBilling": {
        "type": "object",
        "title": "Update Billing",
        "allOf": [
          {
            "required": [
              "customer_vault",
              "customer_vault_id",
              "billing_id",
              "ccnumber",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "customer_vault": {
                "type": "string",
                "enum": [
                  "update_billing"
                ],
                "description": "Update a billing record for the given Customer Vault record."
              },
              "customer_vault_id": {
                "type": "string",
                "description": "Specifies a Customer Vault id."
              },
              "billing_id": {
                "type": "string",
                "description": "Specifies a billing id. If not set"
              }
            }
          },
          {
            "$ref": "#/components/schemas/CreditCard"
          },
          {
            "$ref": "#/components/schemas/BillingDetails"
          }
        ]
      },
      "DeleteBilling": {
        "type": "object",
        "title": "Delete Billing",
        "required": [
          "customer_vault",
          "customer_vault_id",
          "billing_id",
          "security_key"
        ],
        "properties": {
          "security_key": {
            "$ref": "#/components/schemas/SecurityKey"
          },
          "customer_vault": {
            "type": "string",
            "enum": [
              "delete_billing"
            ],
            "description": "Delete a billing record for the given Customer Vault record."
          },
          "customer_vault_id": {
            "type": "string",
            "description": "Specifies a Customer Vault id."
          },
          "billing_id": {
            "type": "string",
            "description": "Specifies a billing id."
          }
        }
      },
      "RecurringFields": {
        "type": "object",
        "properties": {
          "plan_payments": {
            "type": "integer",
            "description": "The number of payments before the recurring plan is complete.\n\nNote: Use '0' for until canceled"
          },
          "plan_amount": {
            "type": "number",
            "description": "The plan amount to be charged each billing cycle.\n\nFormat: `x.xx`"
          }
        }
      },
      "RecurringFieldsWithPlanId": {
        "allOf": [
          {
            "type": "object",
            "properties": {
              "plan_id": {
                "type": "string",
                "description": "Create a subscription tied to a Plan ID if the sale/auth transaction is successful."
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFields"
          }
        ]
      },
      "RecurringDailyFields": {
        "type": "object",
        "properties": {
          "day_frequency": {
            "type": "integer",
            "description": "How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'."
          }
        }
      },
      "AddPlanWithNDayChargeRequest": {
        "title": "Add Daily Plan",
        "allOf": [
          {
            "required": [
              "recurring",
              "plan_payments",
              "plan_amount",
              "plan_name",
              "plan_id",
              "day_frequency",
              "security_key"
            ],
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "add_plan"
                ],
                "description": "Add a recurring plan that subscriptions can be added to in the future."
              },
              "plan_name": {
                "type": "string",
                "description": "The display name of the plan."
              },
              "start_date": {
                "type": "string",
                "format": "date",
                "description": "The first day that the customer will be charged.\n\nFormat: `YYYYMMDD`\n\n",
                "x-group-key": "Recurring"
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFieldsWithPlanId"
          },
          {
            "$ref": "#/components/schemas/RecurringDailyFields"
          }
        ]
      },
      "RecurringMonthlyFields": {
        "type": "object",
        "properties": {
          "month_frequency": {
            "type": "integer",
            "minimum": 1,
            "maximum": 24,
            "description": "How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'."
          },
          "day_of_month": {
            "type": "integer",
            "minimum": 1,
            "maximum": 31,
            "description": "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."
          }
        }
      },
      "AddPlanWithMonthlyChargeRequest": {
        "title": "Add Monthly Plan",
        "allOf": [
          {
            "required": [
              "recurring",
              "plan_payments",
              "plan_amount",
              "plan_name",
              "plan_id",
              "month_frequency",
              "day_of_month",
              "security_key"
            ],
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "add_plan"
                ],
                "description": "Add a recurring plan that subscriptions can be added to in the future."
              },
              "plan_name": {
                "type": "string",
                "description": "The display name of the plan."
              },
              "start_date": {
                "type": "string",
                "format": "date",
                "description": "The first day that the customer will be charged.\n\nFormat: `YYYYMMDD`",
                "x-group-key": "Recurring"
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFieldsWithPlanId"
          },
          {
            "$ref": "#/components/schemas/RecurringMonthlyFields"
          }
        ]
      },
      "EditPlanWithNDayChargeRequest": {
        "title": "Edit Daily Plan",
        "allOf": [
          {
            "required": [
              "recurring",
              "current_plan_id",
              "day_frequency",
              "security_key"
            ],
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "edit_plan"
                ],
                "description": "Edit an existing recurring plan.\n\nValue: 'edit_plan' - Be careful when editing an existing plan, as all customers signed up for this plan will have their billing changed based on your edits."
              },
              "current_plan_id": {
                "type": "string",
                "description": "Only relevant for editing an existing plan, the value will be the 'plan_id' that will be edited in this request."
              },
              "plan_name": {
                "type": "string",
                "description": "The display name of the plan."
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFieldsWithPlanId"
          },
          {
            "$ref": "#/components/schemas/RecurringDailyFields"
          }
        ]
      },
      "EditPlanWithMonthlyChargeRequest": {
        "title": "Edit Monthly Plan",
        "allOf": [
          {
            "required": [
              "recurring",
              "current_plan_id",
              "month_frequency",
              "day_of_month",
              "security_key"
            ],
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "edit_plan"
                ],
                "description": "Edit an existing recurring plan.\n\nValue: 'edit_plan' - Be careful when editing an existing plan, as all customers signed up for this plan will have their billing changed based on your edits."
              },
              "current_plan_id": {
                "type": "string",
                "description": "Only relevant for editing an existing plan, the value will be the 'plan_id' that will be edited in this request."
              },
              "plan_name": {
                "type": "string",
                "description": "The display name of the plan."
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFieldsWithPlanId"
          },
          {
            "$ref": "#/components/schemas/RecurringMonthlyFields"
          }
        ]
      },
      "BaseSubscription": {
        "allOf": [
          {
            "type": "object",
            "properties": {
              "start_date": {
                "type": "string",
                "format": "date",
                "description": "The first day that the customer will be charged. Format: `YYYYMMDD`"
              },
              "payment_token": {
                "type": "string",
                "description": "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)."
              },
              "applepay_payment_data": {
                "type": "string",
                "description": "The encrypted token created when integration directly to the Apple Pay SDK."
              },
              "googlepay_payment_data": {
                "type": "string",
                "description": "The encrypted token created when integration directly to the Google Pay SDK."
              },
              "first_name": {
                "type": "string",
                "description": "Cardholder's first name"
              },
              "last_name": {
                "type": "string",
                "description": "Cardholder's last name"
              },
              "address1": {
                "type": "string",
                "description": "Card billing address."
              },
              "city": {
                "type": "string",
                "description": "Card billing city"
              },
              "state": {
                "type": "string",
                "description": "Card billing state.\n  \nFormat: `CC`"
              },
              "zip": {
                "type": "string",
                "description": "Card billing postal code"
              },
              "country": {
                "type": "string",
                "description": "Card billing country code. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
              },
              "phone": {
                "type": "string",
                "description": "Billing phone number"
              },
              "email": {
                "type": "string",
                "description": "Billing email address"
              },
              "company": {
                "type": "string",
                "description": "Cardholder's company"
              },
              "address2": {
                "type": "string",
                "description": "Card billing address, line 2"
              },
              "fax": {
                "type": "string",
                "description": "Billing fax number"
              },
              "orderid": {
                "type": "string",
                "description": "Order ID"
              },
              "order_date": {
                "type": "string",
                "description": "Order Date"
              },
              "order_description": {
                "type": "string",
                "description": "Order Description"
              },
              "merchant_defined_field_1": {
                "type": "string",
                "description": "Merchant defined field which can be set up in merchant control panel under Settings->Merchant Defined Fields. You can pass custom information in up to 20 fields.\n\nFormat: `merchant_defined_field_1=Value1`, `merchant_defined_field_2=Value2`, etc..."
              },
              "ponumber": {
                "type": "string",
                "description": "Cardholder's purchase order number"
              },
              "processor_id": {
                "type": "string",
                "description": "If using Multiple MIDs, route to this processor (processor_id is obtained under Settings->Transaction Routing in the Control Panel)"
              },
              "customer_receipt": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, when the customer is charged, they will be sent a transaction receipt"
              },
              "source_transaction_id": {
                "type": "string",
                "description": "Specifies a payment gateway transaction id in order to associate payment information with a Subscription record"
              }
            }
          }
        ]
      },
      "SubscribeToPlanUsingCreditCard": {
        "title": "Subscribe to Plan Using Credit Card",
        "allOf": [
          {
            "required": [
              "recurring",
              "plan_id",
              "ccnumber",
              "ccexp",
              "security_key"
            ],
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "add_subscription"
                ],
                "description": "Associate payment information with a recurring plan"
              },
              "plan_id": {
                "type": "string",
                "description": "The plan ID of the plan that the subscription will be associated with"
              },
              "payment": {
                "type": "string",
                "enum": [
                  "creditcard"
                ],
                "description": "The type of payment. Default - `creditcard`."
              }
            }
          },
          {
            "$ref": "#/components/schemas/CreditCard"
          },
          {
            "type": "object",
            "properties": {
              "currency": {
                "type": "string",
                "description": "Set transaction currency."
              },
              "acu_enabled": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, credit card will be evaluated and sent based upon Automatic Card Updater settings. If set to false, credit card will not be submitted for updates when Automatic Card Updater runs. Default - `true`."
              }
            }
          },
          {
            "$ref": "#/components/schemas/BaseSubscription"
          }
        ]
      },
      "SubscribeToPlanUsingACH": {
        "title": "Subscribe to Plan Using ACH",
        "allOf": [
          {
            "required": [
              "recurring",
              "plan_id",
              "checkname",
              "checkaccount",
              "checkaba",
              "payment",
              "security_key"
            ],
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "add_subscription"
                ],
                "description": "Associate payment information with a recurring plan"
              },
              "plan_id": {
                "type": "string",
                "description": "The plan ID of the plan that the subscription will be associated with"
              },
              "payment": {
                "type": "string",
                "enum": [
                  "check"
                ],
                "description": "The type of payment"
              }
            }
          },
          {
            "$ref": "#/components/schemas/ACH"
          },
          {
            "type": "object",
            "properties": {
              "currency": {
                "type": "string",
                "description": "Set transaction currency"
              }
            }
          },
          {
            "$ref": "#/components/schemas/BaseSubscription"
          }
        ]
      },
      "AddCustomSubscriptionMonthlyChargeACH": {
        "title": "Add a Custom Subscription Monthly Charge ACH",
        "allOf": [
          {
            "type": "object",
            "required": [
              "recurring",
              "plan_payments",
              "plan_amount",
              "month_frequency",
              "day_of_month",
              "checkname",
              "checkaccount",
              "checkaba",
              "payment",
              "security_key"
            ]
          },
          {
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "add_subscription"
                ],
                "description": "Add a custom recurring subscription that is NOT associated with an existing plan"
              },
              "payment": {
                "type": "string",
                "enum": [
                  "check"
                ],
                "description": "The type of payment"
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFields"
          },
          {
            "$ref": "#/components/schemas/RecurringMonthlyFields"
          },
          {
            "$ref": "#/components/schemas/ACH"
          },
          {
            "$ref": "#/components/schemas/BaseSubscription"
          },
          {
            "type": "object",
            "properties": {
              "paused_subscription": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, the subscription will be paused."
              }
            }
          }
        ]
      },
      "AddCustomSubscriptionMonthlyChargeCC": {
        "title": "Add a Custom Subscription Monthly Charge Credit Card",
        "allOf": [
          {
            "type": "object",
            "required": [
              "recurring",
              "plan_payments",
              "plan_amount",
              "month_frequency",
              "day_of_month",
              "ccnumber",
              "ccexp",
              "security_key"
            ]
          },
          {
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "add_subscription"
                ],
                "description": "Add a custom recurring subscription that is NOT associated with an existing plan"
              },
              "payment": {
                "type": "string",
                "enum": [
                  "creditcard"
                ],
                "description": "The type of payment"
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFields"
          },
          {
            "$ref": "#/components/schemas/RecurringMonthlyFields"
          },
          {
            "$ref": "#/components/schemas/CreditCard"
          },
          {
            "$ref": "#/components/schemas/BaseSubscription"
          },
          {
            "type": "object",
            "properties": {
              "acu_enabled": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, credit card will be evaluated and sent based upon Automatic Card Updater settings. If set to false, credit card will not be submitted for updates when Automatic Card Updater runs. Default - `true`."
              },
              "paused_subscription": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, the subscription will be paused."
              }
            }
          }
        ]
      },
      "AddCustomSubscriptionMonthlyChargeDigitalWallet": {
        "title": "Add a Custom Subscription Monthly Charge Digital Wallet",
        "allOf": [
          {
            "type": "object",
            "required": [
              "recurring",
              "plan_payments",
              "plan_amount",
              "month_frequency",
              "day_of_month",
              "security_key"
            ]
          },
          {
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "add_subscription"
                ],
                "description": "Add a custom recurring subscription that is NOT associated with an existing plan"
              },
              "applepay_payment_data": {
                "type": "string",
                "description": "The encrypted payment data from the Apple Pay SDK.  Required when data collected directly from Apple Pay SDK."
              },
              "googlepay_payment_data": {
                "type": "string",
                "description": "The encrypted payment data from the Google Pay SDK.  Required when data collected directly from the Google Pay SDK."
              },
              "payment_token": {
                "type": "string",
                "description": "The tokenized version of the customer's wallet 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. Usable for either Apple Pay or Google Pay. Existing integrations may also supply a token from [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology)."
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFields"
          },
          {
            "$ref": "#/components/schemas/RecurringMonthlyFields"
          },
          {
            "$ref": "#/components/schemas/BaseSubscription"
          },
          {
            "type": "object",
            "properties": {
              "acu_enabled": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, credit card will be evaluated and sent based upon Automatic Card Updater settings. If set to false, credit card will not be submitted for updates when Automatic Card Updater runs. Default - `true`."
              },
              "paused_subscription": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, the subscription will be paused."
              }
            }
          }
        ]
      },
      "AddCustomSubscriptionNDayChargeACH": {
        "title": "Add a Custom Subscription Daily Charge ACH",
        "allOf": [
          {
            "type": "object",
            "required": [
              "recurring",
              "plan_payments",
              "plan_amount",
              "day_frequency",
              "checkname",
              "checkaccount",
              "checkaba",
              "payment",
              "security_key"
            ]
          },
          {
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "add_subscription"
                ],
                "description": "Add a custom recurring subscription that is NOT associated with an existing plan"
              },
              "payment": {
                "type": "string",
                "enum": [
                  "check"
                ],
                "description": "The type of payment"
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFields"
          },
          {
            "$ref": "#/components/schemas/RecurringDailyFields"
          },
          {
            "$ref": "#/components/schemas/ACH"
          },
          {
            "$ref": "#/components/schemas/BaseSubscription"
          },
          {
            "type": "object",
            "properties": {
              "paused_subscription": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, the subscription will be paused."
              }
            }
          }
        ]
      },
      "AddCustomSubscriptionNDayChargeCC": {
        "title": "Add a Custom Subscription Daily Charge Credit Card",
        "allOf": [
          {
            "type": "object",
            "required": [
              "recurring",
              "plan_payments",
              "plan_amount",
              "day_frequency",
              "ccnumber",
              "ccexp",
              "security_key"
            ]
          },
          {
            "type": "object",
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "add_subscription"
                ],
                "description": "Add a custom recurring subscription that is NOT associated with an existing plan"
              },
              "payment": {
                "type": "string",
                "enum": [
                  "creditcard"
                ],
                "description": "The type of payment"
              }
            }
          },
          {
            "$ref": "#/components/schemas/RecurringFields"
          },
          {
            "$ref": "#/components/schemas/RecurringDailyFields"
          },
          {
            "$ref": "#/components/schemas/CreditCard"
          },
          {
            "$ref": "#/components/schemas/BaseSubscription"
          },
          {
            "type": "object",
            "properties": {
              "acu_enabled": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, credit card will be evaluated and sent based upon Automatic Card Updater settings. If set to false, credit card will not be submitted for updates when Automatic Card Updater runs. Default - `true`."
              },
              "paused_subscription": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, the subscription will be paused."
              }
            }
          }
        ]
      },
      "UpdateSubscription": {
        "title": "Update Subscription",
        "allOf": [
          {
            "type": "object",
            "required": [
              "recurring",
              "subscription_id",
              "ccnumber",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "update_subscription"
                ],
                "description": "Update the subscription's billing information."
              },
              "subscription_id": {
                "type": "string",
                "description": "The subscription ID that will be updated."
              },
              "plan_payments": {
                "type": "integer",
                "description": "The number of payments before the recurring plan is complete. \n \nNotes: '0' for until canceled"
              },
              "plan_amount": {
                "type": "number",
                "description": "The plan amount to be charged each billing cycle.\n\nFormat: `x.xx`"
              },
              "acu_enabled": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, credit card will be evaluated and sent based upon Automatic Card Updater settings. If set to false, credit card will not be submitted for updates when Automatic Card Updater runs. Default - `true`."
              },
              "paused_subscription": {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ],
                "description": "If set to true, the subscription will be paused."
              }
            }
          },
          {
            "$ref": "#/components/schemas/BaseSubscription"
          },
          {
            "$ref": "#/components/schemas/RecurringMonthlyFields"
          },
          {
            "$ref": "#/components/schemas/RecurringDailyFields"
          },
          {
            "$ref": "#/components/schemas/ACH"
          },
          {
            "$ref": "#/components/schemas/CreditCard"
          }
        ]
      },
      "DeleteSubscription": {
        "title": "Delete Subscription",
        "allOf": [
          {
            "type": "object",
            "required": [
              "recurring",
              "subscription_id",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "recurring": {
                "type": "string",
                "enum": [
                  "delete_subscription"
                ],
                "description": "Delete the subscription. Customer will no longer be charged."
              },
              "subscription_id": {
                "type": "string",
                "description": "The subscription ID that will be deleted."
              }
            }
          }
        ]
      },
      "BaseUpdateTransaction": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "update"
            ],
            "description": "Type of transactions."
          },
          "transactionid": {
            "type": "string",
            "description": "Original payment gateway transaction id"
          },
          "tracking_number": {
            "type": "integer",
            "description": "Shipping tracking number"
          },
          "shipping": {
            "type": "number",
            "description": "Total shipping amount.\n\nFormat: `x.xx`"
          },
          "shipping_postal": {
            "type": "integer",
            "description": "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": {
            "type": "string",
            "description": "Shipping Country Code. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
          },
          "shipping_carrier": {
            "type": "string",
            "enum": [
              "ups",
              "fedex",
              "dhl",
              "usps"
            ],
            "description": "Shipping carrier."
          },
          "shipping_date": {
            "type": "string",
            "format": "date",
            "description": "Shipping date.\n\nFormat: `YYYYMMDD`"
          },
          "order_description": {
            "type": "string",
            "description": "Order Description.\n\nLegacy variable includes: orderdescription"
          },
          "customer_receipt": {
            "type": "boolean",
            "enum": [
              true,
              false
            ],
            "description": "If set to true, when the customer is charged, they will be sent a transaction receipt."
          },
          "signature_image": {
            "type": "string",
            "description": "Cardholder signature image.\n\nFormat: `base64 encoded raw PNG image. (16kiB maximum)`"
          },
          "ponumber": {
            "type": "string",
            "description": "Cardholder's purchase order number."
          },
          "summary_commodity_code": {
            "type": "string",
            "minLength": 4,
            "maxLength": 4,
            "description": "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": {
            "type": "number",
            "description": "Amount included in the transaction amount associated with the import of purchased goods.\n\nFormat: `x.xx`"
          },
          "discount_amount": {
            "type": "number",
            "description": "Amount included in the transaction amount of any discount applied to complete order by the merchant.\n\nFormat: `x.xx`"
          }
        }
      },
      "Tax": {
        "type": "object",
        "properties": {
          "tax": {
            "type": "number",
            "format": "float",
            "description": "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": {
            "type": "number",
            "description": "The national tax amount included in the transaction amount.\n\nFormat: `x.xx`"
          },
          "alternate_tax_amount": {
            "type": "number",
            "description": "Second tax amount included in the transaction amount in countries where more than one type of tax can be applied to the purchases.\n\nFormat: `x.xx`"
          },
          "alternate_tax_id": {
            "type": "integer",
            "description": "Tax identification number of the merchant that reported the alternate tax amount."
          },
          "vat_tax_amount": {
            "type": "number",
            "description": "Contains the amount of any value added taxes which can be associated with the purchased item."
          },
          "vat_tax_rate": {
            "type": "number",
            "format": "float",
            "description": "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": {
            "type": "number",
            "description": "Invoice number that is associated with the VAT invoice."
          },
          "customer_vat_registration": {
            "type": "number",
            "description": "Value added tax registration number supplied by the cardholder."
          },
          "merchant_vat_registration": {
            "type": "number",
            "description": "Government assigned tax identification number of the merchant for whom the goods or services were purchased from."
          }
        }
      },
      "TransactionUpdateRequest": {
        "title": "Update Transaction",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "transactionid",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "payment": {
                "type": "string",
                "enum": [
                  "creditcard"
                ],
                "description": "The type of payment."
              }
            }
          },
          {
            "$ref": "#/components/schemas/BaseUpdateTransaction"
          },
          {
            "$ref": "#/components/schemas/Tax"
          },
          {
            "$ref": "#/components/schemas/MerchantDefinedField"
          }
        ]
      },
      "ACHTransactionUpdateRequest": {
        "title": "Update ACH Transaction",
        "allOf": [
          {
            "type": "object",
            "required": [
              "type",
              "transactionid",
              "payment",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "payment": {
                "type": "string",
                "enum": [
                  "check"
                ],
                "description": "The type of payment."
              }
            }
          },
          {
            "$ref": "#/components/schemas/BaseUpdateTransaction"
          },
          {
            "$ref": "#/components/schemas/Tax"
          },
          {
            "$ref": "#/components/schemas/MerchantDefinedField"
          }
        ]
      },
      "ProductCommon": {
        "type": "object",
        "properties": {
          "product_description": {
            "type": "string",
            "description": "The user-facing name of the product.\n\nExamples: `1 Gallon Milk` or `Phone Case`"
          },
          "product_cost": {
            "type": "number",
            "format": "float",
            "description": "The cost of the product before any tax or discounts.\n\nMust be greater than `0.00`"
          },
          "product_currency": {
            "type": "string",
            "enum": [
              "USD",
              "EUR"
            ],
            "description": "The currency for the product’s price."
          },
          "product_unit_of_measure": {
            "type": "string",
            "enum": [
              "NAR",
              "TDK",
              "MTQ"
            ],
            "description": "The unit of measure for the product. Default - `NAR`"
          },
          "product_tax_amount": {
            "type": "number",
            "format": "float",
            "description": "The tax that should be added to the product cost. This is a fixed amount, not a percentage.\nExample: `1.54`"
          },
          "product_discount_amount": {
            "type": "number",
            "format": "float",
            "description": "The discount that will subtracted from the cost of the product."
          },
          "product_image_data": {
            "type": "string",
            "description": "Image for the product, size must be 2MB or smaller.\n\nFormat: `base64 encoded JPG, PNG, or GIF`\n\n`Required` for image upload."
          },
          "product_image_name": {
            "type": "string",
            "description": "The file name of the image being added with product_image_data.\n\nExamples: `product.png` or `sku-1234.jpg`\n\n`Required` for image upload."
          }
        }
      },
      "AddProductRequest": {
        "title": "Add Product",
        "allOf": [
          {
            "type": "object",
            "required": [
              "products",
              "product_sku",
              "product_description",
              "product_cost",
              "product_currency",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "products": {
                "type": "string",
                "enum": [
                  "add_product"
                ],
                "description": "Add a product to the Product Manager."
              },
              "product_sku": {
                "type": "string",
                "description": "The unique alpha-numeric SKU for this product. An error will be returned if the SKU is already in use by another product.\n\nExamples: `000001`"
              }
            }
          },
          {
            "$ref": "#/components/schemas/ProductCommon"
          }
        ]
      },
      "UpdateProductRequest": {
        "title": "Update Product",
        "allOf": [
          {
            "type": "object",
            "required": [
              "products",
              "product_id",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "products": {
                "type": "string",
                "enum": [
                  "update_product"
                ],
                "description": "Update a product already in the Product Manager."
              },
              "product_id": {
                "type": "string",
                "description": "The automatically generated ID for the product. This was returned in the `add_product` API response, or can be found in the UI under the Product Details page in the Product Manager.\n\nExample: `5538585252`"
              }
            }
          },
          {
            "$ref": "#/components/schemas/ProductCommon"
          }
        ]
      },
      "DeleteProductRequest": {
        "title": "Delete Product",
        "allOf": [
          {
            "type": "object",
            "required": [
              "products",
              "product_id",
              "security_key"
            ],
            "properties": {
              "security_key": {
                "$ref": "#/components/schemas/SecurityKey"
              },
              "products": {
                "type": "string",
                "enum": [
                  "delete_product"
                ],
                "description": "Update a product already in the Product Manager."
              },
              "product_id": {
                "type": "string",
                "description": "The automatically generated ID for the product. This was returned in the `add_product` API response, or can be found in the UI under the Product Details page in the Product Manager.\n\nExample: `5538585252`"
              }
            }
          }
        ]
      },
      "Response": {
        "type": "object",
        "title": "Response",
        "properties": {
          "response": {
            "type": "string",
            "enum": [
              "1",
              "2",
              "3"
            ],
            "description": "Status code for the operation. (1) - success, (2) - failed, (3) system error"
          },
          "responsetext": {
            "type": "string",
            "description": "Textual description of the operation's result."
          },
          "authcode": {
            "type": "string",
            "description": "Authorization code for the operation."
          },
          "amount_authorized": {
            "type": "string",
            "description": "(Conditional) This will optionally come back when requesting partial payment. Authorization amount."
          },
          "transactionid": {
            "type": "string",
            "description": "(Conditional - Payment) Payment gateway transaction id."
          },
          "invoice_id": {
            "type": "string",
            "description": "(Conditional - Invoice) Identifier for the invoice."
          },
          "avsresponse": {
            "type": "string",
            "description": "Address Verification Service response code."
          },
          "cvvresponse": {
            "type": "string",
            "description": "Card Verification Value response."
          },
          "orderid": {
            "type": "string",
            "description": "Identifier for an order related to this invoice."
          },
          "type": {
            "type": "string",
            "enum": [
              "sale",
              "auth",
              "validate",
              "credit",
              "offline",
              "capture",
              "void",
              "refund",
              "complete_partial_payment",
              "add_invoice",
              "update_invoice",
              "send_invoice",
              "close_invoice",
              "add_plan",
              "edit_plan",
              "add_subscription",
              ""
            ],
            "description": "Type of operation that this response is for."
          },
          "partial_payment_id": {
            "type": "string",
            "description": "(Conditional) This will optionally come back when requesting partial payment. A numeric identifier which is used when submitting subsequent transactions."
          },
          "partial_payment_balance": {
            "type": "string",
            "description": "(Conditional) This will optionally come back when requesting partial payment. The payment's remaining balance."
          },
          "platform_id": {
            "type": "string",
            "description": "Platform ID associated with the transaction."
          },
          "response_code": {
            "type": "string",
            "description": "Another status or result code for the operation. See [Response Code Table](#section/Appendixes/Payment-API-Response-Codes)"
          },
          "subscription_id": {
            "type": "string",
            "description": "(Conditional - Subscription) The subscription ID that was created"
          },
          "emv_auth_response_data": {
            "type": "string",
            "description": "(Conditional) This will optionally come back when any chip card data is provided on the authorization. This data needs to be sent back to the SDK after an authorization."
          },
          "payment_terms": {
            "type": "string",
            "description": "(Conditional - Invoice) The terms of payment for the invoice."
          },
          "customer_vault_id": {
            "type": "string",
            "description": "(Conditional - Customer Vault) The original customer_vault_id passed in the transaction request or the resulting customer_vault_id created on an approved transaction.\n\nNote: Only returned when the \"Customer Vault\" service is active."
          },
          "kount_score": {
            "type": "string",
            "description": "The Kount \"Omniscore\" indicating the level of risk on a given transaction. The higher the score, the lower the risk.\n\nNote: Only returned when the \"Kount\" service is active."
          }
        }
      },
      "ProductResponse": {
        "type": "object",
        "title": "Response - Products",
        "properties": {
          "response": {
            "type": "string",
            "enum": [
              "1",
              "2",
              "3"
            ],
            "description": "Status code for the operation. (1) - success, (2) - failed, (3) - system error"
          },
          "responsetext": {
            "type": "string",
            "description": "Textual description of the operation's result."
          },
          "product_id": {
            "type": "string",
            "description": "Product ID."
          },
          "product_sku": {
            "type": "string",
            "description": "(Conditional - returned for create/update requests) The unique alpha-numeric SKU for this product."
          },
          "product_description": {
            "type": "string",
            "description": "(Conditional - returned for create/update requests) The user-facing name of the product."
          },
          "product_cost": {
            "type": "string",
            "description": "(Conditional - returned for create/update requests) The cost of the product before any tax or discounts."
          },
          "product_currency": {
            "type": "string",
            "description": "(Conditional - returned for create/update requests) The currency for the product’s price"
          },
          "product_commodity_code": {
            "type": "string",
            "description": "(Conditional - returned for create/update requests) Product commodity code."
          },
          "product_unit_of_measure": {
            "type": "string",
            "enum": [
              "NAR",
              "TDK",
              "MTQ"
            ],
            "description": "(Conditional - returned for create/update requests) The unit of measure for the product. Default - `NAR`"
          },
          "product_tax_amount": {
            "type": "string",
            "description": "(Conditional - returned for create/update requests) The tax that should be added to the product cost."
          },
          "product_discount_amount": {
            "type": "string",
            "description": "(Conditional - returned for create/update requests) The discount that will subtracted from the cost of the product."
          },
          "product_image_name": {
            "type": "string",
            "description": "(Conditional - returned for create/update requests) The file name of the image being added with product_image_data."
          },
          "product_category": {
            "type": "string",
            "description": "(Conditional - returned for create/update requests) Product category."
          }
        }
      },
      "Merchant": {
        "type": "object",
        "title": "Merchant",
        "description": "Merchant Details",
        "properties": {
          "id": {
            "type": "string",
            "description": "Merchant identifier"
          },
          "name": {
            "type": "string",
            "description": "Merchant name"
          }
        }
      },
      "Features": {
        "type": "object",
        "title": "Features",
        "description": "Features associated with the transaction",
        "properties": {
          "is_test_mode": {
            "type": "boolean",
            "description": "Test mode status"
          }
        }
      },
      "BillingAddress": {
        "type": "object",
        "title": "Billing Address",
        "description": "Billing Address details",
        "properties": {
          "first_name": {
            "type": "string",
            "description": "The first name of the person associated with the billing address."
          },
          "last_name": {
            "type": "string",
            "description": "The last name of the person associated with the billing address."
          },
          "address_1": {
            "type": "string",
            "description": "The first line of the street address."
          },
          "address_2": {
            "type": "string",
            "description": "The second line of the street address."
          },
          "company": {
            "type": "string",
            "description": "The name of the company associated with the billing address."
          },
          "city": {
            "type": "string",
            "description": "The name of the city associated with the billing address."
          },
          "state": {
            "type": "string",
            "description": "The name of the state or province associated with the billing address.\n  \nFormat: `CC`"
          },
          "postal_code": {
            "type": "string",
            "description": "The postal code or zip code associated with the billing address."
          },
          "country": {
            "type": "string",
            "description": "The name of the country associated with the billing address. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
          },
          "email": {
            "type": "string",
            "format": "email",
            "description": "The email address associated with the billing address."
          },
          "phone": {
            "type": "string",
            "format": "phone",
            "description": "The phone number associated with the billing address."
          },
          "cell_phone": {
            "type": "string",
            "format": "phone",
            "description": "The cell phone number associated with the billing address."
          },
          "fax": {
            "type": "string",
            "format": "phone",
            "description": "The fax number associated with the billing address."
          }
        }
      },
      "ShippingAddress": {
        "type": "object",
        "title": "Shipping Address",
        "description": "Shipping Address details.",
        "properties": {
          "first_name": {
            "type": "string",
            "description": "The first name of the person associated with the shipping address."
          },
          "last_name": {
            "type": "string",
            "description": "The last name of the person associated with the shipping address."
          },
          "address_1": {
            "type": "string",
            "description": "The first line of the street address."
          },
          "address_2": {
            "type": "string",
            "description": "The second line of the street address."
          },
          "company": {
            "type": "string",
            "description": "The name of the company associated with the shipping address."
          },
          "city": {
            "type": "string",
            "description": "The city of the shipping address."
          },
          "state": {
            "type": "string",
            "description": "The state or province of the shipping address.\n  \nFormat: `CC`"
          },
          "postal_code": {
            "type": "string",
            "description": "The postal or zip code of the shipping address."
          },
          "country": {
            "type": "string",
            "description": "The country of the shipping address. *Country codes are as shown in ISO 3166-1 alpha-2*.\n  \nFormat: `CC`"
          },
          "email": {
            "type": "string",
            "description": "The email address associated with the shipping address."
          },
          "phone": {
            "type": "string",
            "description": "The phone number associated with the shipping address."
          },
          "fax": {
            "type": "string",
            "description": "The fax number associated with the shipping address."
          }
        }
      },
      "CardDetails": {
        "type": "object",
        "title": "Card Details",
        "description": "Details related to the credit card used in the transaction. Available for credit card transactions only.",
        "properties": {
          "cc_number": {
            "type": "string",
            "description": "Masked credit card number"
          },
          "cc_exp": {
            "type": "string",
            "description": "Credit card expiration date"
          },
          "cavv": {
            "type": "string",
            "description": "Cardholder Authentication Verification Value"
          },
          "cavv_result": {
            "type": "string",
            "description": "Cardholder Authentication Verification Value result"
          },
          "xid": {
            "type": "string",
            "description": "Cardholder authentication transaction id"
          },
          "eci": {
            "type": "string",
            "enum": [
              "01",
              "02",
              "05",
              "06",
              "07",
              "08",
              "09",
              ""
            ],
            "description": "Electronic Commerce Indicator"
          },
          "avs_response": {
            "type": "string",
            "description": "Address Verification Service response"
          },
          "csc_response": {
            "type": "string",
            "description": "Card Security Code response"
          },
          "cardholder_auth": {
            "type": "string",
            "enum": [
              "verified",
              "attempted",
              ""
            ],
            "description": "Cardholder Authentication response"
          },
          "cc_start_date": {
            "type": "string",
            "description": "Credit card start date"
          },
          "cc_issue_number": {
            "type": "string",
            "description": "Credit card issue number"
          },
          "card_balance": {
            "type": "string",
            "description": "Card balance"
          },
          "card_available_balance": {
            "type": "string",
            "description": "Card available balance"
          },
          "entry_mode": {
            "type": "string",
            "enum": [
              "0",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "7",
              "8"
            ],
            "description": "The type of transaction data to be processed.\n\n<details>\n<summary>Possible values:</summary>\n\n| Code  | Description         |\n|:------|:--------------------|\n| 0     | Unknown             |\n| 1     | Invalid             |\n| 2     | NFC MSD             |\n| 3     | Swiped              |\n| 4     | Keyed               |\n| 5     | EMV ICC             |\n| 6     | NFC EMV             |\n| 7     | Keyed - Fallback    |\n| 8     | Swiped - Fallback   |\n</details>"
          },
          "cc_bin": {
            "type": "string",
            "description": "Credit card BIN (first 6 digits)"
          },
          "cc_type": {
            "type": "string",
            "description": "Credit card type (visa, ..)"
          },
          "feature_token": {
            "type": "string",
            "description": "Feature token"
          }
        }
      },
      "ACHAccountHolderType": {
        "type": "string",
        "enum": [
          "business",
          "personal"
        ],
        "description": "The customer's ACH account entity."
      },
      "ACHAccountType": {
        "type": "string",
        "enum": [
          "checking",
          "savings"
        ],
        "description": "The customer's ACH account type."
      },
      "ACHSecCode": {
        "type": "string",
        "enum": [
          "PPD",
          "WEB",
          "TEL",
          "CCD"
        ],
        "description": "ACH standard entry class codes."
      },
      "CheckDetails": {
        "type": "object",
        "title": "Check Details",
        "description": "Details about a check payment. Available for ACH transactions only.",
        "properties": {
          "check_account": {
            "type": "string",
            "description": "The customer's bank account number."
          },
          "check_aba": {
            "type": "string",
            "description": "The customer's bank routing number."
          },
          "check_name": {
            "type": "string",
            "description": "The customer's name."
          },
          "account_holder_type": {
            "$ref": "#/components/schemas/ACHAccountHolderType"
          },
          "account_type": {
            "$ref": "#/components/schemas/ACHAccountType"
          },
          "sec_code": {
            "$ref": "#/components/schemas/ACHSecCode"
          }
        }
      },
      "EmvMetaData": {
        "type": "object",
        "title": "EMV Meta Data",
        "description": "Details about the EMV transaction",
        "properties": {
          "application_id": {
            "type": "string",
            "description": "EMV Application ID"
          },
          "application_label": {
            "type": "string",
            "description": "EMV Application Label"
          },
          "application_preferred_name": {
            "type": "string",
            "description": "EMV Application Preferred Name"
          },
          "transaction_status_info": {
            "type": "string",
            "description": "Transaction Status Information"
          },
          "application_pan_sequence_number": {
            "type": "string",
            "description": "EMV Application PAN Sequence Number"
          },
          "customer_verification_method": {
            "type": "string",
            "enum": [
              "signature",
              "offline_pin",
              "online_pin",
              "none",
              "offline_pin_signature",
              "consumer_device",
              "consumer_device_plus_signature",
              ""
            ],
            "description": "EMV Customer Verification Method"
          }
        }
      },
      "TransactionAction": {
        "type": "object",
        "title": "Transaction Action",
        "description": "Transaction Action details",
        "properties": {
          "amount": {
            "type": "string",
            "description": "Amount of the transaction",
            "format": "decimal"
          },
          "action_type": {
            "type": "string",
            "enum": [
              "auth",
              "capture",
              "sale",
              "void",
              "refund",
              "credit",
              "return",
              "validate"
            ],
            "description": "Type of transaction"
          },
          "date": {
            "type": "string",
            "format": "date-time",
            "description": "Date of the transaction"
          },
          "success": {
            "type": "string",
            "enum": [
              "0",
              "1"
            ],
            "description": "Transaction Success Flag (0 - Failed, 1 - Success)"
          },
          "ip_address": {
            "type": "string",
            "description": "IP Address of the transaction",
            "format": "ipv4"
          },
          "source": {
            "type": "string",
            "enum": [
              "api",
              "batch_upload",
              "mobile",
              "quickclick",
              "quickbooks",
              "recurring",
              "swipe",
              "virtual_terminal",
              "internal"
            ],
            "description": "Source of the transaction"
          },
          "api_method": {
            "type": "string",
            "description": "API Method used for the transaction (direct_post, ..)"
          },
          "username": {
            "type": "string",
            "description": "Username"
          },
          "response_text": {
            "type": "string",
            "enum": [
              "APPROVED",
              "SUCCESS",
              "DECLINE"
            ],
            "description": "Transaction Response Text"
          },
          "response_code": {
            "type": "string",
            "description": "Response Code (100 - OK, 200 - Declined)"
          },
          "processor_response_text": {
            "type": "string",
            "description": "Processor Response Text"
          },
          "processor_response_code": {
            "type": "string",
            "description": "Processor Response Code"
          },
          "tap_to_mobile": {
            "type": "boolean",
            "description": "Tap to Mobile Flag"
          },
          "device_license_number": {
            "type": "string",
            "description": "Mobile Device License Number"
          },
          "device_nickname": {
            "type": "string",
            "description": "Mobile Device Nickname"
          }
        }
      },
      "RecurringCardDetails": {
        "type": "object",
        "title": "Card Details",
        "description": "Details related to the credit card used in the transaction. Available for credit card transactions only.",
        "properties": {
          "cc_number": {
            "type": "string",
            "description": "Masked credit card number"
          },
          "cc_exp": {
            "type": "string",
            "description": "Credit card expiration date"
          },
          "cavv": {
            "type": "string",
            "description": "Cardholder Authentication Verification Value"
          },
          "cavv_result": {
            "type": "string",
            "description": "Cardholder Authentication Verification Value result"
          },
          "xid": {
            "type": "string",
            "description": "Cardholder authentication transaction id"
          },
          "eci": {
            "type": "string",
            "enum": [
              "01",
              "02",
              "05",
              "06",
              "07",
              "08",
              "09",
              ""
            ],
            "description": "Electronic Commerce Indicator"
          },
          "avs_response": {
            "type": "string",
            "description": "Address Verification Service response"
          },
          "csc_response": {
            "type": "string",
            "description": "Card Security Code response"
          },
          "cardholder_auth": {
            "type": "string",
            "enum": [
              "verified",
              "attempted",
              ""
            ],
            "description": "Cardholder Authentication response"
          },
          "cc_start_date": {
            "type": "string",
            "description": "Credit card start date"
          },
          "cc_issue_number": {
            "type": "string",
            "description": "Credit card issue number"
          },
          "card_balance": {
            "type": "string",
            "description": "Card balance"
          },
          "card_available_balance": {
            "type": "string",
            "description": "Card available balance"
          },
          "entry_mode": {
            "type": "string",
            "enum": [
              "0",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "7",
              "8",
              ""
            ],
            "description": "The type of transaction data to be processed.\n\n<details>\n<summary>Possible values:</summary>\n\n| Code  | Description         |\n|:------|:--------------------|\n| 0     | Unknown             |\n| 1     | Invalid             |\n| 2     | NFC MSD             |\n| 3     | Swiped              |\n| 4     | Keyed               |\n| 5     | EMV ICC             |\n| 6     | NFC EMV             |\n| 7     | Keyed - Fallback    |\n| 8     | Swiped - Fallback   |\n</details>"
          },
          "cc_bin": {
            "type": "string",
            "description": "Credit card BIN (first 6 digits)"
          },
          "cc_type": {
            "type": "string",
            "description": "Credit card type (visa, ..)"
          }
        }
      },
      "RecurringEventBody": {
        "type": "object",
        "title": "Subscription Event Body",
        "description": "Details about Subscription.",
        "required": [
          "merchant",
          "features",
          "plan"
        ],
        "properties": {
          "merchant": {
            "$ref": "#/components/schemas/Merchant"
          },
          "features": {
            "$ref": "#/components/schemas/Features"
          },
          "subscription_id": {
            "type": "string",
            "description": "Subscription ID"
          },
          "subscription_type": {
            "type": "string",
            "enum": [
              "cc",
              "ck"
            ],
            "description": "Subscription Type (cc - Credit Card, ck - Check)"
          },
          "processor_id": {
            "type": "string",
            "description": "Processor ID"
          },
          "next_charge_date": {
            "type": "string",
            "format": "date",
            "description": "Next Charge Date"
          },
          "completed_payments": {
            "type": "string",
            "format": "number",
            "description": "Completed Payments"
          },
          "attempted_payments": {
            "type": "string",
            "format": "number",
            "description": "Attempted Payments"
          },
          "remaining_payments": {
            "type": "string",
            "description": "Remaining Payments (`Until canceled` or number of remaining payments)"
          },
          "ponumber": {
            "type": "string",
            "description": "PO Number"
          },
          "order_id": {
            "type": "string",
            "description": "Order ID"
          },
          "order_description": {
            "type": "string",
            "description": "Order Description"
          },
          "shipping": {
            "type": "string",
            "description": "Shipping Details"
          },
          "tax": {
            "type": "string",
            "description": "Tax Details"
          },
          "website": {
            "type": "string",
            "description": "Website Details"
          },
          "plan": {
            "type": "object",
            "title": "Plan",
            "description": "Plan Details",
            "properties": {
              "id": {
                "type": "string",
                "description": "Plan ID"
              },
              "name": {
                "type": "string",
                "description": "Plan Name"
              },
              "amount": {
                "type": "string",
                "description": "Plan Amount"
              },
              "day_frequency": {
                "type": "string",
                "description": "Day Frequency"
              },
              "payments": {
                "type": "string",
                "description": "Payments Details"
              },
              "month_frequency": {
                "type": "string",
                "format": "number",
                "description": "Month Frequency"
              },
              "day_of_month": {
                "type": "string",
                "format": "number",
                "description": "Day of Month"
              }
            }
          },
          "billing_address": {
            "$ref": "#/components/schemas/BillingAddress"
          },
          "card": {
            "$ref": "#/components/schemas/RecurringCardDetails"
          },
          "check": {
            "$ref": "#/components/schemas/CheckDetails"
          }
        }
      },
      "TransactionSummary": {
        "type": "object",
        "title": "Transactions summary",
        "description": "Summary (number of transactions and total amount)",
        "properties": {
          "count": {
            "type": "integer",
            "format": "int64",
            "description": "Transactions Count"
          },
          "amount": {
            "type": "string",
            "format": "number",
            "description": "Transactions Amount"
          }
        }
      },
      "SettlementEventBody": {
        "type": "object",
        "title": "Settlement Event Body",
        "description": "Details about Settlement.",
        "required": [
          "batch_id",
          "merchant",
          "processor"
        ],
        "properties": {
          "batch_id": {
            "type": "string",
            "format": "int64",
            "description": "Batch ID"
          },
          "merchant": {
            "$ref": "#/components/schemas/Merchant"
          },
          "processor": {
            "type": "object",
            "title": "Processor",
            "description": "Processor Details",
            "properties": {
              "id": {
                "type": "string",
                "description": "Processor ID"
              },
              "name": {
                "type": "string",
                "description": "Processor Name"
              },
              "type": {
                "type": "string",
                "enum": [
                  "cc",
                  "ck"
                ],
                "description": "Processor Type (cc - Credit Card, ck - Check)"
              }
            }
          },
          "count": {
            "type": "integer",
            "format": "int64",
            "description": "Transactions Count"
          },
          "amount": {
            "type": "string",
            "format": "number",
            "description": "Transactions Amount"
          },
          "transaction_ids": {
            "type": "array",
            "description": "Transaction IDs",
            "items": {
              "type": "string",
              "description": "Transaction ID"
            }
          },
          "by_card_type": {
            "type": "object",
            "title": "By Card Type",
            "description": "Transactions by Card Type",
            "properties": {
              "visa": {
                "$ref": "#/components/schemas/TransactionSummary"
              },
              "mastercard": {
                "$ref": "#/components/schemas/TransactionSummary"
              },
              "amex": {
                "$ref": "#/components/schemas/TransactionSummary"
              },
              "discover": {
                "$ref": "#/components/schemas/TransactionSummary"
              },
              "diners": {
                "$ref": "#/components/schemas/TransactionSummary"
              },
              "jcb": {
                "$ref": "#/components/schemas/TransactionSummary"
              },
              "maestro": {
                "$ref": "#/components/schemas/TransactionSummary"
              },
              "ebt": {
                "$ref": "#/components/schemas/TransactionSummary"
              }
            },
            "additionalProperties": {
              "type": "object",
              "description": "Other card types"
            }
          }
        }
      },
      "AcuCustomerVaultDetails": {
        "type": "object",
        "description": "Details about a customer vault card with updated expiration date.",
        "properties": {
          "customer_vault_id": {
            "type": "string",
            "description": "The ID of the customer vault."
          },
          "billing_id": {
            "type": "string",
            "description": "The billing ID of the customer."
          },
          "cc_number": {
            "type": "string",
            "description": "The masked credit card number."
          },
          "cc_exp": {
            "type": "string",
            "description": "The updated expiration date of the credit card."
          },
          "first_name": {
            "type": "string",
            "description": "The first name of the customer."
          },
          "last_name": {
            "type": "string",
            "description": "The last name of the customer."
          },
          "email": {
            "type": "string",
            "description": "The email address of the customer."
          },
          "phone": {
            "type": "string",
            "description": "The phone number of the customer."
          }
        }
      },
      "AcuSubscriptionDetails": {
        "type": "object",
        "description": "Details about a recurring card that was updated.",
        "properties": {
          "subscription_id": {
            "type": "string",
            "description": "The ID of the subscription."
          },
          "cc_number": {
            "type": "string",
            "description": "The masked credit card number."
          },
          "cc_exp": {
            "type": "string",
            "description": "The expiration date of the credit card."
          },
          "first_name": {
            "type": "string",
            "description": "The first name of the customer."
          },
          "last_name": {
            "type": "string",
            "description": "The last name of the customer."
          },
          "email": {
            "type": "string",
            "description": "The email address of the customer."
          },
          "phone": {
            "type": "string",
            "description": "The phone number of the customer."
          }
        }
      },
      "AcuAutoUpdatedEventBody": {
        "type": "object",
        "title": "ACU Automatically Updated Event Body",
        "description": "Details about ACU Automatically Updated Event.",
        "required": [
          "updated_date",
          "merchant",
          "cards_checked"
        ],
        "properties": {
          "updated_date": {
            "type": "string",
            "format": "date",
            "description": "The update date."
          },
          "merchant": {
            "type": "object",
            "title": "Merchant",
            "description": "Merchant Details",
            "properties": {
              "id": {
                "type": "integer",
                "description": "Merchant identifier"
              },
              "name": {
                "type": "string",
                "description": "Merchant name"
              }
            }
          },
          "cards_checked": {
            "type": "object",
            "description": "Details about the cards that were checked.",
            "properties": {
              "customer_vault": {
                "type": "object",
                "description": "Details about the customer vault cards that were checked.",
                "properties": {
                  "checked": {
                    "type": "integer",
                    "description": "The number of customer vault cards that were checked."
                  },
                  "updated": {
                    "type": "integer",
                    "description": "The number of customer vault cards that were updated."
                  }
                }
              },
              "subscriptions": {
                "type": "object",
                "description": "Details about the subscription cards that were checked.",
                "properties": {
                  "checked": {
                    "type": "integer",
                    "description": "The number of subscription cards that were checked."
                  },
                  "updated": {
                    "type": "integer",
                    "description": "The number of subscription cards that were updated."
                  }
                }
              }
            }
          },
          "vault_count_updated_cards": {
            "type": "integer",
            "description": "The number of customer vault cards that were updated."
          },
          "vault_updated_cards": {
            "type": "array",
            "description": "Details about the customer vault cards that were updated.",
            "items": {
              "$ref": "#/components/schemas/AcuCustomerVaultDetails"
            }
          },
          "vault_count_updated_expiration_dates": {
            "type": "integer",
            "description": "The number of customer vault cards with updated expiration dates."
          },
          "vault_updated_expiration_dates": {
            "type": "array",
            "description": "Details about the customer vault cards with updated expiration dates.",
            "items": {
              "$ref": "#/components/schemas/AcuCustomerVaultDetails"
            }
          },
          "recurring_count_updated_cards": {
            "type": "integer",
            "description": "The number of recurring cards that were updated."
          },
          "recurring_updated_cards": {
            "type": "array",
            "description": "Details about the recurring cards that were updated.",
            "items": {
              "$ref": "#/components/schemas/AcuSubscriptionDetails"
            }
          },
          "recurring_count_updated_expiration_dates": {
            "type": "integer",
            "description": "The number of recurring cards with updated expiration dates."
          },
          "recurring_updated_expiration_dates": {
            "type": "array",
            "description": "Details about the recurring cards with updated expiration dates.",
            "items": {
              "$ref": "#/components/schemas/AcuSubscriptionDetails"
            }
          }
        }
      },
      "AcuClosedAccountEventBody": {
        "type": "object",
        "title": "ACU Closed Account Event Body",
        "description": "Details about ACU Closed Account Event.",
        "required": [
          "updated_date",
          "merchant",
          "cards_checked"
        ],
        "properties": {
          "updated_date": {
            "type": "string",
            "format": "date",
            "description": "The update date."
          },
          "merchant": {
            "type": "object",
            "description": "Details about the merchant.",
            "properties": {
              "id": {
                "type": "integer",
                "description": "The ID of the merchant."
              },
              "name": {
                "type": "string",
                "description": "The name of the merchant."
              }
            }
          },
          "cards_checked": {
            "type": "object",
            "description": "Details about the cards checked.",
            "properties": {
              "customer_vault": {
                "type": "object",
                "description": "Details about the customer vault.",
                "properties": {
                  "checked": {
                    "type": "integer",
                    "description": "The number of customer vaults checked."
                  },
                  "updated": {
                    "type": "integer",
                    "description": "The number of customer vaults updated."
                  }
                }
              },
              "subscriptions": {
                "type": "object",
                "description": "Details about the subscriptions.",
                "properties": {
                  "checked": {
                    "type": "integer",
                    "description": "The number of subscriptions checked."
                  },
                  "updated": {
                    "type": "integer",
                    "description": "The number of subscriptions updated."
                  }
                }
              }
            }
          },
          "vault_count_updated_closed_account": {
            "type": "integer",
            "description": "The number of vaults updated for the closed account."
          },
          "vault_updates": {
            "type": "array",
            "description": "Details about the vault updates.",
            "items": {
              "$ref": "#/components/schemas/AcuCustomerVaultDetails"
            }
          },
          "recurring_count_updated_closed_account": {
            "type": "integer",
            "description": "The number of recurring payments updated for the closed account."
          },
          "recurring_updates": {
            "type": "array",
            "description": "Details about the recurring payment updates.",
            "items": {
              "$ref": "#/components/schemas/AcuSubscriptionDetails"
            }
          }
        }
      },
      "AcuContactCustomerEventBody": {
        "type": "object",
        "title": "ACU Contact Customer Event Body",
        "description": "Details about ACU Contact Customer Event.",
        "required": [
          "updated_date",
          "merchant",
          "cards_checked"
        ],
        "properties": {
          "updated_date": {
            "type": "string",
            "format": "date",
            "description": "The date when the event was updated."
          },
          "merchant": {
            "type": "object",
            "description": "Details about the merchant.",
            "required": [
              "id",
              "name"
            ],
            "properties": {
              "id": {
                "type": "integer",
                "description": "The ID of the merchant."
              },
              "name": {
                "type": "string",
                "description": "The name of the merchant."
              }
            }
          },
          "cards_checked": {
            "type": "object",
            "description": "Details about the cards checked.",
            "required": [
              "customer_vault",
              "subscriptions"
            ],
            "properties": {
              "customer_vault": {
                "type": "object",
                "description": "Details about the customer vault.",
                "required": [
                  "checked",
                  "updated"
                ],
                "properties": {
                  "checked": {
                    "type": "integer",
                    "description": "The number of customer vaults checked."
                  },
                  "updated": {
                    "type": "integer",
                    "description": "The number of customer vaults updated."
                  }
                }
              },
              "subscriptions": {
                "type": "object",
                "description": "Details about the subscriptions.",
                "required": [
                  "checked",
                  "updated"
                ],
                "properties": {
                  "checked": {
                    "type": "integer",
                    "description": "The number of subscriptions checked."
                  },
                  "updated": {
                    "type": "integer",
                    "description": "The number of subscriptions updated."
                  }
                }
              }
            }
          },
          "vault_count_updated_contact_customer": {
            "type": "integer",
            "description": "The number of vaults updated."
          },
          "vault_updates": {
            "type": "array",
            "description": "Details about the vault updates.",
            "items": {
              "$ref": "#/components/schemas/AcuCustomerVaultDetails"
            }
          },
          "recurring_count_updated_contact_customer": {
            "type": "integer",
            "description": "The number of recurring subscriptions updated."
          },
          "recurring_updates": {
            "type": "array",
            "description": "Details about the recurring subscriptions updates.",
            "items": {
              "$ref": "#/components/schemas/AcuSubscriptionDetails"
            }
          }
        }
      }
    },
    "parameters": {
      "WebhookSignature": {
        "name": "Webhook-Signature",
        "in": "header",
        "required": true,
        "schema": {
          "type": "string"
        },
        "description": "Signature to validate the webhook event."
      }
    }
  },
  "x-tagGroups": [
    {
      "name": "REST API (recommended)",
      "tags": [
        "Payments",
        "Plans",
        "Subscriptions",
        "Products",
        "Invoicing",
        "Customers",
        "Devices"
      ]
    },
    {
      "name": "Classic API",
      "tags": [
        "Payment Processing",
        "Data and Transaction Reporting",
        "Webhook Events",
        "Gateway Features",
        "Processors and Services",
        "Apple Pay"
      ]
    }
  ],
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true
  }
}
```