NMI · Schema
Add processor
PaymentsPayment GatewayPayment ProcessingTokenizationRecurring BillingCustomer VaultFintechEmbedded PaymentsPayment Facilitation
Properties
| Name | Type | Description |
|---|---|---|
| processorFields | object | The processor-specific fields. |
| descriptor | object | The descriptor fields. |
| currencies | array | The allowed currencies for the processor. |
| accountClassification | string | The processor account classification. |
| billingType | string | The processor billing type. |
| paymentTypes | array | The allowed payment types for the processor. |
| maxTicketAmount | string | The maximum amount for a single transaction run through this processor. |
| maxMonthlyVolume | string | The maximum total amount that can be run through this processor in a single month. |
| applyToAllCardType | boolean | Whether the maxMonthlyVolume and maxTicketAmount should apply to all payment methods through this processor or not. |
| avsCvvPreCheck | string | The AVS/CVV precheck method for the processor. |
| skipAvsCvv | boolean | Whether to enable skipping AVS/CVV or not. |
| enableDuplicateChecking | boolean | Whether to enable duplicate checking or not. |
| allowMerchantOverride | boolean | Whether to allow the merchant to ignore the duplicate check on a per-transaction basis or not. |
| duplicateTime | string | The amount of time in seconds to look back to check if a transaction is a duplicate. |
| requiredFields | object | The fields that are required to be populated for each transaction. |
| processorName | string | The name for the processor. |
| mcc | string | The Merchant Category Code. |
| serviceId | string | The ID of the processor platform you want to board. |
| merchantId | string | The merchant's Gateway ID. |
| faceConfiguration | object | The FACe configuration for the processor. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/nmi/json-schema/nmi-add-processor-request-schema.json",
"title": "Add processor",
"x-generated": "2026-11-10",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/nmi-processors-and-services-api-openapi.yml#/components/schemas/AddProcessorRequest",
"allOf": [
{
"type": "object",
"required": [
"processorFields",
"currencies",
"paymentTypes",
"serviceId",
"accountClassification",
"maxMonthlyVolume",
"duplicateTime",
"processorName",
"mcc",
"merchantId"
],
"properties": {
"processorFields": {
"type": "object",
"description": "The processor-specific fields."
},
"descriptor": {
"type": "object",
"description": "The descriptor fields.",
"properties": {
"descriptor": {
"type": "string",
"description": "The descriptor."
},
"phone": {
"type": "string",
"description": "The descriptor phone number."
},
"city": {
"type": "string",
"description": "The descriptor city."
},
"state": {
"type": "string",
"description": "The descriptor state."
},
"url": {
"type": "string",
"description": "The descriptor URL."
}
}
},
"currencies": {
"type": "array",
"description": "The allowed currencies for the processor.",
"items": {
"type": "string"
}
},
"accountClassification": {
"type": "string",
"description": "The processor account classification."
},
"billingType": {
"type": "string",
"description": "The processor billing type."
},
"paymentTypes": {
"type": "array",
"description": "The allowed payment types for the processor.",
"items": {
"type": "string",
"enum": [
"visa",
"mastercard",
"amex",
"discover",
"diners",
"jcb",
"maestro"
]
}
},
"maxTicketAmount": {
"type": "string",
"description": "The maximum amount for a single transaction run through this processor."
},
"maxMonthlyVolume": {
"type": "string",
"description": "The maximum total amount that can be run through this processor in a single month."
},
"applyToAllCardType": {
"type": "boolean",
"description": "Whether the maxMonthlyVolume and maxTicketAmount should apply to all payment methods through this processor or not."
},
"avsCvvPreCheck": {
"type": "string",
"description": "The AVS/CVV precheck method for the processor."
},
"skipAvsCvv": {
"type": "boolean",
"description": "Whether to enable skipping AVS/CVV or not."
},
"enableDuplicateChecking": {
"type": "boolean",
"description": "Whether to enable duplicate checking or not."
},
"allowMerchantOverride": {
"type": "boolean",
"description": "Whether to allow the merchant to ignore the duplicate check on a per-transaction basis or not."
},
"duplicateTime": {
"type": "string",
"description": "The amount of time in seconds to look back to check if a transaction is a duplicate."
},
"requiredFields": {
"type": "object",
"description": "The fields that are required to be populated for each transaction.",
"properties": {
"name": {
"type": "boolean",
"description": "Whether the name should be a required field or not."
},
"company": {
"type": "boolean",
"description": "Whether the company should be a required field or not."
},
"address": {
"type": "boolean",
"description": "Whether the address should be a required field or not."
},
"city": {
"type": "boolean",
"description": "Whether the city should be a required field or not."
},
"state": {
"type": "boolean",
"description": "Whether the state should be a required field or not."
},
"zip": {
"type": "boolean",
"description": "Whether the ZIP code should be a required field or not."
},
"country": {
"type": "boolean",
"description": "Whether the country should be a required field or not."
},
"phone": {
"type": "boolean",
"description": "Whether the phone should be a required field or not."
},
"email": {
"type": "boolean",
"description": "Whether the email should be a required field or not."
},
"driversLicense": {
"type": "boolean",
"description": "Whether the driver's license should be a required field or not."
},
"driversLicenseState": {
"type": "boolean",
"description": "Whether the driver's license state should be a required field or not."
},
"driversLicenseDob": {
"type": "boolean",
"description": "Whether the driver's license date of birth should be a required field or not."
},
"ssn": {
"type": "boolean",
"description": "Whether the SSN should be a required field or not."
},
"cvv": {
"type": "string",
"description": "The CVV requirement setting."
},
"fax": {
"type": "boolean",
"description": "Whether the fax should be a required field or not."
},
"url": {
"type": "boolean",
"description": "Whether the URL should be a required field or not."
},
"orderId": {
"type": "boolean",
"description": "Whether the order ID should be a required field or not."
},
"orderDescription": {
"type": "boolean",
"description": "Whether the order description should be a required field or not."
},
"poNumber": {
"type": "boolean",
"description": "Whether the PO number should be a required field or not."
},
"shipping": {
"type": "boolean",
"description": "Whether shipping should be a required field or not."
},
"tax": {
"type": "boolean",
"description": "Whether tax should be a required field or not."
},
"shippingName": {
"type": "boolean",
"description": "Whether the shipping name should be a required field or not."
},
"shippingAddress": {
"type": "boolean",
"description": "Whether the shipping address should be a required field or not."
},
"shippingCity": {
"type": "boolean",
"description": "Whether the shipping city should be a required field or not."
},
"shippingState": {
"type": "boolean",
"description": "Whether the shipping state should be a required field or not."
},
"shippingZip": {
"type": "boolean",
"description": "Whether the shipping ZIP code should be a required field or not."
},
"shippingCountry": {
"type": "boolean",
"description": "Whether the shipping country should be a required field or not."
},
"mdf1": {
"type": "boolean",
"description": "Whether Merchant Defined Field 1 should be a required field or not."
},
"mdf2": {
"type": "boolean",
"description": "Whether Merchant Defined Field 2 should be a required field or not."
},
"mdf3": {
"type": "boolean",
"description": "Whether Merchant Defined Field 3 should be a required field or not."
},
"mdf4": {
"type": "boolean",
"description": "Whether Merchant Defined Field 4 should be a required field or not."
},
"mdf5": {
"type": "boolean",
"description": "Whether Merchant Defined Field 5 should be a required field or not."
},
"mdf6": {
"type": "boolean",
"description": "Whether Merchant Defined Field 6 should be a required field or not."
},
"mdf7": {
"type": "boolean",
"description": "Whether Merchant Defined Field 7 should be a required field or not."
},
"mdf8": {
"type": "boolean",
"description": "Whether Merchant Defined Field 8 should be a required field or not."
},
"mdf9": {
"type": "boolean",
"description": "Whether Merchant Defined Field 9 should be a required field or not."
},
"mdf10": {
"type": "boolean",
"description": "Whether Merchant Defined Field 10 should be a required field or not."
},
"mdf11": {
"type": "boolean",
"description": "Whether Merchant Defined Field 11 should be a required field or not."
},
"mdf12": {
"type": "boolean",
"description": "Whether Merchant Defined Field 12 should be a required field or not."
},
"mdf13": {
"type": "boolean",
"description": "Whether Merchant Defined Field 13 should be a required field or not."
},
"mdf14": {
"type": "boolean",
"description": "Whether Merchant Defined Field 14 should be a required field or not."
},
"mdf15": {
"type": "boolean",
"description": "Whether Merchant Defined Field 15 should be a required field or not."
},
"mdf16": {
"type": "boolean",
"description": "Whether Merchant Defined Field 16 should be a required field or not."
},
"mdf17": {
"type": "boolean",
"description": "Whether Merchant Defined Field 17 should be a required field or not."
},
"mdf18": {
"type": "boolean",
"description": "Whether Merchant Defined Field 18 should be a required field or not."
},
"mdf19": {
"type": "boolean",
"description": "Whether Merchant Defined Field 19 should be a required field or not."
},
"mdf20": {
"type": "boolean",
"description": "Whether Merchant Defined Field 20 should be a required field or not."
}
}
},
"processorName": {
"type": "string",
"description": "The name for the processor."
},
"mcc": {
"type": "string",
"description": "The Merchant Category Code."
},
"serviceId": {
"type": "string",
"description": "The ID of the processor platform you want to board."
},
"merchantId": {
"type": "string",
"description": "The merchant's Gateway ID."
},
"faceConfiguration": {
"type": "object",
"description": "The FACe configuration for the processor."
}
}
}
]
}
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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/nmi-add-processor-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.