QuickBooks · Schema

echeckresponse

AccountingBookkeepingSmall BusinessFinanceInvoicingPayrollTax

Properties

Name Type Description
Status object The current status of the check. Learn more about check states. Valid values types:PENDING: The check is being processed. SUCCEEDED: The check was funded and the transaction is complete. DECLINED: The
BankAccount object Specify or create the bank account associated with this transaction. Required if the token or bankAccountOnFile aren't specified. Review the bankAccount entity for field details.
Description string Additional details about the eCheck and transaction.
Created string The time the object was originally created. In ISO 8601 date-time format. It appears as YYYY-MM-DDTHH:MM:SSZ.
CheckNumber string The number of the eCheck associated with the transaction. This number must be unique. Using the same checkNumber to create multiple eChecks will result in declines.
AuthCode string The authorization code for the echeck.
PaymentMode object The payment mode. This is also known as the SEC Code. Valid values:WEB: Internet-initiated entry mode used for internet transactions.
Token string The opaque container for the credit or debit card account associated with the transaction. Required if the bankAccount or bankAccountOnFile aren't specified. Learn more about creating tokens.
BankAccountOnFile string An existing bank account that was previously stored. Specify the ID of the existing bank account. Required if the token or bankAccount aren't specified.
Amount number The eCheck amount. Valid values: Any value between 0.01 and 99999.99.
Context object Additional info stored with the transaction.
Id string The unique identifier for the eCheck.
View JSON Schema on GitHub

JSON Schema

quickbooks-echeckresponse-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/quickbooks/json-schema/quickbooks-echeckresponse-schema.json",
  "title": "echeckresponse",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/quickbooks-payments-openapi-generated.yml#/components/schemas/echeckresponse",
  "type": "object",
  "properties": {
    "Status": {
      "type": "object",
      "x-intuit-type": "ECheckStatus",
      "description": "The current status of the check. Learn more about check states.\n\nValid values types:PENDING: The check is being processed.\nSUCCEEDED: The check was funded and the transaction is complete.\nDECLINED: The check was rejected.\n VOIDED: The check was voided.\nREFUNDED: The check was refunded."
    },
    "BankAccount": {
      "allOf": [
        {
          "$ref": "#/$defs/bankaccount"
        }
      ],
      "description": "Specify or create the bank account associated with this transaction. \n\nRequired if the token or bankAccountOnFile aren't specified.\n\nReview the bankAccount entity for field details.",
      "x-intuit-required": "Conditionally required"
    },
    "Description": {
      "type": "string",
      "description": "Additional details about the eCheck and transaction.",
      "x-intuit-required": "Optional"
    },
    "Created": {
      "type": "string",
      "description": "The time the object was originally created. In ISO 8601 date-time format. It appears as YYYY-MM-DDTHH:MM:SSZ."
    },
    "CheckNumber": {
      "type": "string",
      "description": "The number of the eCheck associated with the transaction. \n\nThis number must be unique. Using the same checkNumber to create multiple eChecks will result in declines.",
      "x-intuit-required": "Optional"
    },
    "AuthCode": {
      "type": "string",
      "description": "The authorization code for the echeck.",
      "x-intuit-required": "Optional"
    },
    "PaymentMode": {
      "type": "object",
      "x-intuit-type": "PaymentModeType",
      "description": "The payment mode. This is also known as the SEC Code.\n\nValid values:WEB: Internet-initiated entry mode used for internet transactions.",
      "x-intuit-required": "Required"
    },
    "Token": {
      "type": "string",
      "description": "The opaque container for the credit or debit card account associated with the transaction.\n\nRequired if the bankAccount or bankAccountOnFile aren't specified. Learn more about creating tokens.",
      "x-intuit-required": "Conditionally Required"
    },
    "BankAccountOnFile": {
      "type": "string",
      "description": "An existing bank account that was previously stored.\n\nSpecify the ID of the existing bank account. Required if the token or bankAccount aren't specified.",
      "x-intuit-required": "Conditionally Required"
    },
    "Amount": {
      "type": "number",
      "description": "The eCheck amount.\n\nValid values: Any value between 0.01 and 99999.99.",
      "x-intuit-required": "Required"
    },
    "Context": {
      "allOf": [
        {
          "$ref": "#/$defs/checkcontext"
        }
      ],
      "description": "Additional info stored with the transaction.",
      "x-intuit-required": "Optional"
    },
    "Id": {
      "type": "string",
      "description": "The unique identifier for the eCheck.",
      "x-intuit-required": "Conditionally required"
    }
  },
  "required": [
    "Amount",
    "PaymentMode"
  ],
  "$defs": {
    "bankaccount": {
      "type": "object",
      "title": "bankaccount",
      "properties": {
        "Updated": {
          "type": "string",
          "description": "The time the object was last updated. In ISO 8601 date-time format. It appears as YYYY-MM-DDTHH:MM:SSZ.",
          "x-intuit-required": "Conditionally required"
        },
        "entityType": {
          "type": "string",
          "description": "The entity or user type the bank account is associated with. Example values: Customer, Employee, Vendor or Company",
          "x-intuit-required": "Optional"
        },
        "Name": {
          "type": "string",
          "description": "The name of the bank account owner.",
          "x-intuit-required": "Required"
        },
        "AccountNumber": {
          "type": "string",
          "description": "The number of the bank account.\n\n For privacy and security,\nAccount numbers that are 6 digits or less: all but the last 2 digits are masked\nAccount numbers that are 7 digits or longer: all but the last 4 digits are masked\n Account Number masking changes are available in Sandbox companies currently and will be available from July 11th, 2022 for Production companies.",
          "x-intuit-required": "Required"
        },
        "Default": {
          "type": "boolean",
          "description": "Indicates if the bank account is the default. When users set a default, the account flag is true.\n\n This is the bank account QuickBooks uses when another isn't specified.\n\n The flag defaults to false. When a bank account flag is true, all other stored bank accounts are automatically set to false.",
          "x-intuit-required": "Optional"
        },
        "Country": {
          "type": "string",
          "description": "The ISO-standard country code. Refer to the ISO Country Code List.",
          "x-intuit-required": "Optional"
        },
        "Created": {
          "type": "string",
          "description": "The time the object was originally created. In ISO 8601 date-time format. It appears as YYYY-MM-DDTHH:MM:SSZ."
        },
        "InputType": {
          "type": "string",
          "description": "Specifies the input type. \n\nValid values:KEYED: Indicates a manually-entered key.\nSCANNED",
          "x-intuit-required": "Optional"
        },
        "Phone": {
          "type": "string",
          "description": "The phone number associated with the bank account.",
          "x-intuit-required": "Required"
        },
        "AccountType": {
          "type": "string",
          "description": "The type of bank account. \n\nValid values:PERSONAL_CHECKING: Use for personal checking accounts.\n PERSONAL_SAVINGS: Use for personal savings accounts.\nBUSINESS_CHECKING: Use for business checking accounts.\nBUSINESS_SAVINGS: Use for business savings accounts.",
          "x-intuit-required": "Required"
        },
        "BankCode": {
          "type": "string",
          "description": "For US: This should also be the routing number for the bank associated with the account.",
          "x-intuit-required": "Optional"
        },
        "entityId": {
          "type": "string",
          "description": "The ID of the entity the bank account is associated with.",
          "x-intuit-required": "Optional"
        },
        "RoutingNumber": {
          "type": "string",
          "description": "The routing number for the bank associated with the account.\n\n For privacy and security, we only display the last four digits of the routing number.",
          "x-intuit-required": "Required"
        },
        "Id": {
          "type": "string",
          "description": "The unique identifier of a bank account object.\n\n The id is required for update or delete operations.",
          "x-intuit-required": "Conditionally required"
        }
      },
      "required": [
        "AccountNumber",
        "AccountType",
        "Name",
        "Phone",
        "RoutingNumber"
      ]
    },
    "checkcontext": {
      "type": "object",
      "title": "checkcontext",
      "properties": {
        "DeviceInfo": {
          "allOf": [
            {
              "$ref": "#/$defs/deviceinfo"
            }
          ],
          "description": "Info about the device used to process the payment.",
          "x-intuit-required": "Optional"
        }
      }
    },
    "deviceinfo": {
      "type": "object",
      "title": "deviceinfo",
      "properties": {
        "MacAddress": {
          "type": "string",
          "description": "The device's media access control (MAC) address.",
          "x-intuit-required": "Optional"
        },
        "Encrypted": {
          "type": "boolean",
          "description": "The device's encryption status.",
          "x-intuit-required": "Optional"
        },
        "IpAddress": {
          "type": "string",
          "description": "The device's IP address.",
          "x-intuit-required": "Optional"
        },
        "Longitude": {
          "type": "string",
          "description": "The device's longitude coordinates.",
          "x-intuit-required": "Optional"
        },
        "PhoneNumber": {
          "type": "string",
          "description": "The device's phone number (if available).",
          "x-intuit-required": "Optional"
        },
        "Latitude": {
          "type": "string",
          "description": "The device's latitude coordinates.",
          "x-intuit-required": "Optional"
        },
        "Type": {
          "type": "string",
          "description": "The type of device.",
          "x-intuit-required": "Optional"
        },
        "Id": {
          "type": "string",
          "description": "The device's ID.",
          "x-intuit-required": "Conditionally required"
        }
      }
    }
  }
}

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/quickbooks-echeckresponse"
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.