NMI · Schema

Subscription Update Request

PaymentsPayment GatewayPayment ProcessingTokenizationRecurring BillingCustomer VaultFintechEmbedded PaymentsPayment Facilitation

Properties

Name Type Description
plan_amount number The plan amount to be charged each billing cycle. Format: `x.xx`
plan_payments integer The number of payments before the recurring plan is complete. Use '0' for until canceled
day_frequency integer How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'
month_frequency integer How often, in months, to charge the customer. Cannot be set with 'day_frequency'. Must be set with 'day_of_month'
day_of_month integer The day that the customer will be charged. Cannot be set with 'day_frequency'. Must be set with 'month_frequency'
paused_subscription boolean If set to true, the subscription will be paused
start_date string The date the subscription's next/first charge occurs. Format: `YYYYMMDD` (optionally `YYYYMMDDHHMMSS`).
payment_details object
billing_address object
shipping_address object
order_details object
merchant_defined_fields object
customer_vault object
cardholder_auth object
View JSON Schema on GitHub

JSON Schema

nmi-subscription-update-request-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/nmi/json-schema/nmi-subscription-update-request-schema.json",
  "title": "Subscription Update Request",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/nmi-subscriptions-api-openapi.yml#/components/schemas/SubscriptionUpdateRequest",
  "type": "object",
  "properties": {
    "plan_amount": {
      "type": "number",
      "minimum": 0,
      "description": "The plan amount to be charged each billing cycle. Format: `x.xx`"
    },
    "plan_payments": {
      "type": "integer",
      "minimum": 0,
      "maximum": 999,
      "description": "The number of payments before the recurring plan is complete. Use '0' for until canceled"
    },
    "day_frequency": {
      "type": "integer",
      "minimum": 1,
      "description": "How often, in days, to charge the customer. Cannot be set with 'month_frequency' or 'day_of_month'"
    },
    "month_frequency": {
      "type": "integer",
      "minimum": 1,
      "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'"
    },
    "paused_subscription": {
      "type": "boolean",
      "description": "If set to true, the subscription will be paused"
    },
    "start_date": {
      "type": "string",
      "minLength": 8,
      "maxLength": 14,
      "pattern": "^(\\d{8}|\\d{14})$",
      "description": "The date the subscription's next/first charge occurs. Format: `YYYYMMDD` (optionally `YYYYMMDDHHMMSS`)."
    },
    "payment_details": {
      "$ref": "#/$defs/PaymentDetails"
    },
    "billing_address": {
      "$ref": "#/$defs/BillingAddressRest"
    },
    "shipping_address": {
      "$ref": "#/$defs/ShippingAddressRest"
    },
    "order_details": {
      "$ref": "#/$defs/OrderDetailsRest"
    },
    "merchant_defined_fields": {
      "$ref": "#/$defs/MerchantDefinedFields"
    },
    "customer_vault": {
      "$ref": "#/$defs/CustomerVault"
    },
    "cardholder_auth": {
      "$ref": "#/$defs/CardholderAuth"
    }
  },
  "$defs": {
    "BillingAddressRest": {
      "type": "object",
      "title": "Billing Address & Information",
      "description": "Billing address for a payment transaction request.",
      "properties": {
        "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 `number` and `total` on supported processors.\n\nWhich values apply depends on the processor."
        },
        "number": {
          "type": "integer",
          "minimum": 0,
          "maximum": 99,
          "description": "Specify installment billing number, on supported processors. For use when `billing.method` is set to \"installment\""
        },
        "total": {
          "type": "number",
          "minimum": 0,
          "description": "Specify installment billing total on supported processors. For use when `billing.method` is set to \"installment\""
        },
        "first_name": {
          "type": "string",
          "maxLength": 50,
          "description": "Cardholder's first name"
        },
        "last_name": {
          "type": "string",
          "maxLength": 50,
          "description": "Cardholder's last name"
        },
        "company": {
          "type": "string",
          "maxLength": 100,
          "description": "Cardholder's company"
        },
        "address1": {
          "type": "string",
          "maxLength": 100,
          "description": "Card billing address"
        },
        "address2": {
          "type": "string",
          "maxLength": 100,
          "description": "Card billing address, line 2"
        },
        "city": {
          "type": "string",
          "maxLength": 50,
          "description": "Card billing city"
        },
        "state": {
          "type": "string",
          "maxLength": 50,
          "description": "Card billing state. Format: `CC`"
        },
        "zip": {
          "type": "string",
          "maxLength": 20,
          "description": "Card billing zip code"
        },
        "country": {
          "type": "string",
          "maxLength": 2,
          "description": "Card billing country. Country codes are as shown in ISO 3166-1 alpha-2. Format: `CC`"
        },
        "phone": {
          "type": "string",
          "description": "Billing phone number"
        },
        "email": {
          "type": "string",
          "format": "email",
          "description": "Billing email address"
        },
        "fax": {
          "type": "string",
          "maxLength": 50,
          "description": "Billing fax number"
        },
        "cell_phone": {
          "type": "string",
          "description": "Billing cell phone number"
        },
        "website": {
          "type": "string",
          "maxLength": 255,
          "description": "Website (invoice-specific field)"
        },
        "drivers_license_number": {
          "type": "string",
          "maxLength": 20,
          "description": "Driver's license number"
        },
        "drivers_license_dob": {
          "type": "string",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
          "description": "Driver's license date of birth. Format: `YYYY-MM-DD`"
        },
        "drivers_license_state": {
          "type": "string",
          "maxLength": 2,
          "description": "Driver's license state. Format: `CC`"
        },
        "payment_details": {
          "$ref": "#/$defs/PaymentDetails"
        },
        "cardholder_auth": {
          "$ref": "#/$defs/CardholderAuth"
        }
      }
    },
    "CardholderAuth": {
      "type": "object",
      "title": "Cardholder Authentication",
      "description": "Cardholder authentication data. Use the 3-D Secure variant for EMV authentication results. Use the Decrypted wallet variant for merchant-decrypted Apple Pay or Google Pay, which relays the cryptogram and ECI to the 3-D Secure fields.",
      "oneOf": [
        {
          "type": "object",
          "title": "3-D Secure",
          "description": "EMV 3-D Secure authentication result fields.",
          "additionalProperties": false,
          "required": [
            "status",
            "cavv"
          ],
          "properties": {
            "status": {
              "type": "string",
              "enum": [
                "verified",
                "attempted"
              ],
              "description": "Set 3D Secure condition. Value used to determine E-commerce indicator (ECI)."
            },
            "cavv": {
              "type": "string",
              "maxLength": 50,
              "description": "Cardholder authentication verification value from the 3-D Secure authentication response. Format: base64 encoded."
            },
            "xid": {
              "type": "string",
              "maxLength": 50,
              "description": "Cardholder authentication transaction id. Format: base64 encoded."
            },
            "three_ds_version": {
              "type": "string",
              "maxLength": 10,
              "description": "3DSecure version (for example `2.1.0` or `2.2.0`)."
            },
            "directory_server_id": {
              "type": "string",
              "maxLength": 50,
              "description": "Directory Server Transaction ID from 3DSecure 2.0 authentication. Format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
            }
          }
        },
        {
          "type": "object",
          "title": "Decrypted wallet (Apple Pay / Google Pay)",
          "description": "Wallet authentication for decrypted Apple Pay or Google Pay payments.",
          "additionalProperties": false,
          "required": [
            "cavv"
          ],
          "properties": {
            "cavv": {
              "type": "string",
              "maxLength": 50,
              "description": "Wallet payment cryptogram (submitted in the repurposed 3-D Secure `cavv` field)."
            },
            "eci": {
              "type": "string",
              "maxLength": 10,
              "description": "Electronic Commerce Indicator from the wallet payment data (submitted in the repurposed 3-D Secure `eci` field)."
            }
          }
        }
      ]
    },
    "CustomerVault": {
      "title": "Customer Vault",
      "description": "Either add a payment method to the vault, or use an existing vault record.",
      "oneOf": [
        {
          "$ref": "#/$defs/CustomerVaultAdd"
        },
        {
          "$ref": "#/$defs/CustomerVaultCharge"
        }
      ]
    },
    "CustomerVaultAdd": {
      "type": "object",
      "title": "Add payment method to customer vault",
      "description": "Store the inline `payment_details` from this request in the customer vault.",
      "additionalProperties": false,
      "required": [
        "add_to_vault"
      ],
      "properties": {
        "add_to_vault": {
          "type": "boolean",
          "description": "Set to `true` to store the payment method in the customer vault."
        },
        "id": {
          "type": "string",
          "maxLength": 36,
          "description": "Optional custom customer vault ID (max 36 characters). Generated if omitted."
        }
      }
    },
    "CustomerVaultCharge": {
      "type": "object",
      "title": "Use existing customer vault",
      "description": "Charge or validate an existing customer vault record. Do not send `payment_details`.",
      "additionalProperties": false,
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "maxLength": 36,
          "description": "Existing customer vault ID (max 36 characters)."
        },
        "billing_id": {
          "type": "string",
          "maxLength": 32,
          "description": "Billing profile ID to use. Defaults to the vault priority billing profile if omitted (max 32 characters)."
        },
        "shipping_id": {
          "type": "string",
          "maxLength": 32,
          "description": "Shipping profile ID to use. Defaults to the vault priority shipping profile if omitted (max 32 characters)."
        }
      }
    },
    "LineItem": {
      "type": "object",
      "title": "Line Item",
      "description": "Line item details for order details",
      "properties": {
        "product_code": {
          "type": "string",
          "maxLength": 50,
          "description": "Product code"
        },
        "description": {
          "type": "string",
          "maxLength": 255,
          "description": "Line item description"
        },
        "commodity_code": {
          "type": "string",
          "maxLength": 50,
          "description": "Commodity code"
        },
        "unit_of_measure": {
          "type": "string",
          "maxLength": 50,
          "description": "Unit of measure"
        },
        "unit_cost": {
          "type": "number",
          "minimum": 0,
          "description": "Unit cost"
        },
        "quantity": {
          "type": "integer",
          "minimum": 0,
          "maximum": 999999,
          "description": "Quantity"
        },
        "total_amount": {
          "type": "number",
          "minimum": 0,
          "description": "Total amount"
        },
        "tax_amount": {
          "type": "number",
          "minimum": 0,
          "description": "Tax amount"
        },
        "tax_rate": {
          "type": "number",
          "minimum": 0,
          "description": "Tax rate"
        },
        "discount_amount": {
          "type": "number",
          "minimum": 0,
          "description": "Discount amount"
        },
        "discount_rate": {
          "type": "number",
          "minimum": 0,
          "description": "Discount rate"
        },
        "tax_type": {
          "type": "string",
          "maxLength": 50,
          "description": "Tax type"
        },
        "alternate_tax_id": {
          "type": "string",
          "maxLength": 50,
          "description": "Alternate tax ID"
        }
      }
    },
    "MerchantDefinedFields": {
      "type": "object",
      "title": "Merchant Defined Fields",
      "description": "Custom fields configured in the merchant control panel under Settings → Merchant Defined Fields (`field_1` through `field_20`).",
      "properties": {
        "field_1": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 1"
        },
        "field_2": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 2"
        },
        "field_3": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 3"
        },
        "field_4": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 4"
        },
        "field_5": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 5"
        },
        "field_6": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 6"
        },
        "field_7": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 7"
        },
        "field_8": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 8"
        },
        "field_9": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 9"
        },
        "field_10": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 10"
        },
        "field_11": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 11"
        },
        "field_12": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 12"
        },
        "field_13": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 13"
        },
        "field_14": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 14"
        },
        "field_15": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 15"
        },
        "field_16": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 16"
        },
        "field_17": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 17"
        },
        "field_18": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 18"
        },
        "field_19": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 19"
        },
        "field_20": {
          "type": "string",
          "maxLength": 255,
          "description": "Merchant defined field 20"
        }
      }
    },
    "OrderDetailsRest": {
      "type": "object",
      "title": "Order Details",
      "description": "Order details and line items",
      "properties": {
        "template_id": {
          "type": "string",
          "maxLength": 50,
          "description": "Order template ID"
        },
        "description": {
          "type": "string",
          "maxLength": 100,
          "description": "Order description"
        },
        "id": {
          "type": "string",
          "maxLength": 50,
          "description": "Order ID (for payment requests)"
        },
        "order_id": {
          "type": "string",
          "maxLength": 255,
          "description": "Order ID (for invoice requests and responses)"
        },
        "customer_id": {
          "type": "string",
          "maxLength": 255,
          "description": "Customer ID (invoice-specific)"
        },
        "customer_tax_id": {
          "type": "string",
          "maxLength": 255,
          "description": "Customer tax ID (invoice-specific)"
        },
        "tax": {
          "type": "number",
          "minimum": 0,
          "description": "Tax amount"
        },
        "shipping": {
          "type": "number",
          "minimum": 0,
          "description": "Shipping amount"
        },
        "po_number": {
          "type": "string",
          "maxLength": 255,
          "description": "Purchase order number (maxLength 50 for payments, 255 for invoices)"
        },
        "shipping_postal_code": {
          "type": "string",
          "maxLength": 20,
          "description": "Shipping postal code"
        },
        "ship_from_postal_code": {
          "type": "string",
          "maxLength": 20,
          "description": "Ship from postal code"
        },
        "summary_commodity_code": {
          "type": "string",
          "maxLength": 50,
          "description": "Summary commodity code"
        },
        "duty_amount": {
          "type": "number",
          "minimum": 0,
          "description": "Duty amount"
        },
        "discount_amount": {
          "type": "number",
          "minimum": 0,
          "description": "Discount amount"
        },
        "national_tax_amount": {
          "type": "number",
          "minimum": 0,
          "description": "National tax amount"
        },
        "alternate_tax_amount": {
          "type": "number",
          "minimum": 0,
          "description": "Alternate tax amount"
        },
        "alternate_tax_id": {
          "type": "string",
          "maxLength": 50,
          "description": "Alternate tax ID"
        },
        "vat_tax_amount": {
          "type": "number",
          "minimum": 0,
          "description": "VAT tax amount"
        },
        "vat_tax_rate": {
          "type": "number",
          "minimum": 0,
          "description": "VAT tax rate"
        },
        "vat_invoice_reference_number": {
          "type": "string",
          "maxLength": 50,
          "description": "VAT invoice reference number"
        },
        "customer_vat_registration": {
          "type": "string",
          "maxLength": 50,
          "description": "Customer VAT registration"
        },
        "merchant_vat_registration": {
          "type": "string",
          "maxLength": 50,
          "description": "Merchant VAT registration"
        },
        "order_date": {
          "type": "string",
          "format": "date",
          "description": "Order date"
        },
        "order_description": {
          "type": "string",
          "maxLength": 255,
          "description": "Order description (maxLength 255 for both payments and invoices)"
        },
        "ip_address": {
          "type": "string",
          "description": "IP address of cardholder (IPv4 or IPv6). Format validated as IP address"
        },
        "line_items": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/LineItem"
          }
        }
      }
    },
    "PaymentDetails": {
      "title": "Payment Details",
      "description": "Payment method details. Exactly one variant: raw card data, ACH (check) data, **payment_token**, wallet payloads, or **retail card-present** data from a card reader. Do not combine fields from different variants.",
      "oneOf": [
        {
          "type": "object",
          "title": "Credit card",
          "description": "Non-tokenized credit card data.",
          "additionalProperties": false,
          "required": [
            "card_number",
            "card_exp"
          ],
          "properties": {
            "card_number": {
              "type": "string",
              "description": "Credit card number"
            },
            "card_exp": {
              "type": "string",
              "description": "Credit card expiration date. Format: `MMYY`"
            },
            "card_cvv": {
              "type": "string",
              "maxLength": 4,
              "description": "The card security code."
            }
          }
        },
        {
          "$ref": "#/$defs/RetailUnencryptedMagneticStripe"
        },
        {
          "$ref": "#/$defs/RetailMagTekMagensaEncryptedSwipe"
        },
        {
          "$ref": "#/$defs/RetailIdTechEncryptedSwipe"
        },
        {
          "$ref": "#/$defs/RetailIdTechEncryptedKeyed"
        },
        {
          "$ref": "#/$defs/RetailIngenicoChip"
        },
        {
          "$ref": "#/$defs/RetailIngenicoSwipe"
        },
        {
          "$ref": "#/$defs/RetailIngenicoNfc"
        },
        {
          "$ref": "#/$defs/RetailIngenicoKeyed"
        },
        {
          "$ref": "#/$defs/RetailMobileSdkEncryptedPayment"
        },
        {
          "type": "object",
          "title": "ACH / check",
          "description": "Bank account (ACH) details for this transaction.",
          "additionalProperties": false,
          "required": [
            "check_name",
            "check_aba",
            "check_account",
            "account_type",
            "account_holder_type",
            "sec_code"
          ],
          "properties": {
            "check_name": {
              "type": "string",
              "maxLength": 50,
              "description": "The name on the customer's ACH account"
            },
            "check_aba": {
              "type": "number",
              "description": "The customer's bank routing number"
            },
            "check_account": {
              "type": "number",
              "description": "The customer's bank account number"
            },
            "account_type": {
              "type": "string",
              "enum": [
                "checking",
                "savings"
              ],
              "description": "The type of ACH account the customer has"
            },
            "account_holder_type": {
              "type": "string",
              "enum": [
                "personal",
                "business"
              ],
              "description": "The type of ACH account the customer has"
            },
            "sec_code": {
              "type": "string",
              "enum": [
                "PPD",
                "WEB",
                "TEL",
                "CCD",
                "POP",
                "RCK"
              ],
              "description": "The Standard Entry Class code of the ACH transaction"
            },
            "check_number": {
              "type": "string",
              "maxLength": 20,
              "description": "Check number"
            }
          }
        },
        {
          "type": "object",
          "title": "Payment token",
          "description": "Single-use or vault token from [Payment Component](../docs/payment-component) or [Collect.js](https://secure.networkmerchants.com/merchants/resources/integration/integration_portal.php#cjs_methodology) (not Apple Pay / Google Pay).",
          "additionalProperties": false,
          "required": [
            "payment_token"
          ],
          "properties": {
            "payment_token": {
              "type": "string",
              "description": "The tokenized version of the customer's card or check information"
            }
          }
        },
        {
          "type": "object",
          "title": "Apple Pay",
          "description": "Encrypted payment data from the Apple Pay SDK.",
          "additionalProperties": false,
          "required": [
            "applepay_payment_data"
          ],
          "properties": {
            "applepay_payment_data": {
              "type": "string",
              "description": "The encrypted token created when integration directly to the Apple Pay SDK"
            }
          }
        },
        {
          "type": "object",
          "title": "Google Pay",
          "description": "Encrypted payment data from the Google Pay SDK.",
          "additionalProperties": false,
          "required": [
            "googlepay_payment_data"
          ],
          "properties": {
            "googlepay_payment_data": {
              "type": "string",
              "description": "The encrypted token created when integration directly to the Google Pay SDK"
            }
          }
        },
        {
          "type": "object",
          "title": "Decrypted Apple Pay",
          "description": "Merchant-decrypted Apple Pay payment data.",
          "additionalProperties": false,
          "required": [
            "decrypted_applepay_data",
            "card_number",
            "card_exp"
          ],
          "properties": {
            "decrypted_applepay_data": {
              "type": "boolean",
              "enum": [
                true
              ],
              "description": "Set to `true` when submitting merchant-decrypted Apple Pay data."
            },
            "card_number": {
              "type": "string",
              "description": "Credit card number"
            },
            "card_exp": {
              "type": "string",
              "description": "Credit card expiration date. Format: `MMYY`"
            }
          }
        },
        {
          "type": "object",
          "title": "Decrypted Google Pay",
          "description": "Merchant-decrypted Google Pay payment data.",
          "additionalProperties": false,
          "required": [
            "decrypted_googlepay_data",
            "card_number",
            "card_exp"
          ],
          "properties": {
            "decrypted_googlepay_data": {
              "type": "boolean",
              "enum": [
                true
              ],
              "description": "Set to `true` when submitting merchant-decrypted Google Pay data."
            },
            "card_number": {
              "type": "string",
              "description": "Credit card number"
            },
            "card_exp": {
              "type": "string",
              "description": "Credit card expiration date. Format: `MMYY`"
            }
          }
        }
      ]
    },
    "RetailIdTechEncryptedKeyed": {
      "type": "object",
      "title": "Retail ID Tech M130 encrypted keyed",
      "description": "Card-present encrypted keyed entry data from an ID Tech M130 reader. Set `industry` to `retail` on the payment request.",
      "additionalProperties": false,
      "required": [
        "encrypted_data"
      ],
      "properties": {
        "encrypted_data": {
          "type": "string",
          "description": "Raw encrypted data."
        }
      }
    },
    "RetailIdTechEncryptedSwipe": {
      "type": "object",
      "title": "Retail ID Tech M130 encrypted swipe",
      "description": "Card-present encrypted swipe data from an ID Tech M130 reader. Set `industry` to `retail` on the payment request.",
      "additionalProperties": false,
      "required": [
        "encrypted_track_1",
        "encrypted_track_2"
      ],
      "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."
        }
      }
    },
    "RetailIngenicoChip": {
      "type": "object",
      "title": "Retail Ingenico Telium 2 chip (EMV)",
      "description": "Card-present EMV chip payment from an Ingenico Telium 2 reader. Set `industry` to `retail` on the payment request.",
      "additionalProperties": false,
      "required": [
        "entry_mode",
        "emv_auth_request_data",
        "emv_device",
        "verification_method",
        "encrypted_ksn",
        "encrypted_track_2"
      ],
      "properties": {
        "entry_mode": {
          "type": "string",
          "enum": [
            "emv_icc"
          ],
          "description": "The type of transaction data to be processed."
        },
        "emv_auth_request_data": {
          "type": "string",
          "description": "EMV data for the transaction as received from the EMV chip card SDK."
        },
        "emv_device": {
          "type": "string",
          "enum": [
            "ingenico_rba"
          ],
          "description": "The EMV-capable card reader."
        },
        "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."
        }
      }
    },
    "RetailIngenicoKeyed": {
      "type": "object",
      "title": "Retail Ingenico Telium 2 keyed",
      "description": "Card-present encrypted keyed entry from an Ingenico Telium 2 reader. Set `industry` to `retail` on the payment request.",
      "additionalProperties": false,
      "required": [
        "entry_mode",
        "emv_device",
        "encrypted_ksn",
        "encrypted_track_2"
      ],
      "properties": {
        "entry_mode": {
          "type": "string",
          "enum": [
            "keyed"
          ],
          "description": "The type of transaction data to be processed."
        },
        "emv_device": {
          "type": "string",
          "enum": [
            "ingenico_rba"
          ],
          "description": "The EMV-capable card reader."
        },
        "encrypted_ksn": {
          "type": "string",
          "description": "Raw encrypted data."
        },
        "encrypted_track_2": {
          "type": "string",
          "description": "Raw encrypted data."
        }
      }
    },
    "RetailIngenicoNfc": {
      "type": "object",
      "title": "Retail Ingenico Telium 2 NFC",
      "description": "Card-present NFC payment from an Ingenico Telium 2 reader. Set `industry` to `retail` on the payment request.",
      "additionalProperties": false,
      "required": [
        "entry_mode",
        "emv_device",
        "encrypted_ksn",
        "encrypted_track_2"
      ],
      "properties": {
        "entry_mode": {
          "type": "string",
          "enum": [
            "nfc_msd"
          ],
          "description": "The type of transaction data to be processed."
        },
        "emv_device": {
          "type": "string",
          "enum": [
            "ingenico_rba"
          ],
          "description": "The EMV-capable card reader."
        },
        "encrypted_ksn": {
          "type": "string",
          "description": "Raw encrypted data."
        },
        "encrypted_track_2": {
          "type": "string",
          "description": "Raw encrypted data."
        }
      }
    },
    "RetailIngenicoSwipe": {
      "type": "object",
      "title": "Retail Ingenico Telium 2 swipe",
      "description": "Card-present encrypted swipe from an Ingenico Telium 2 reader. Set `industry` to `retail` on the payment request.",
      "additionalProperties": false,
      "required": [
        "entry_mode",
        "emv_device",
        "encrypted_ksn",
        "encrypted_track_1",
        "encrypted_track_2"
      ],
      "properties": {
        "entry_mode": {
          "type": "string",
          "enum": [
            "swiped",
            "swiped_emv_fallback"
          ],
          "description": "The type of transaction data to be processed."
        },
        "emv_device": {
          "type": "string",
          "enum": [
            "ingenico_rba"
          ],
          "description": "The EMV-capable card reader."
        },
        "encrypted_ksn": {
          "type": "st

# --- truncated at 32 KB (36 KB total) ---
# Full source: https://artifacts.apis.io/nmi/json-schema/nmi-subscription-update-request-schema.json

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/nmi-subscription-update-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.