Veryfi Checks API

The Checks API from Veryfi — 2 operation(s) for checks.

OpenAPI Specification

veryfi-checks-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Veryfi OCR Any Documents Checks API
  description: The Veryfi OCR API extracts structured data from financial documents including receipts, invoices, bank statements, checks, W-2s, W-8s, W-9s, business cards, contracts, and more. The API uses AI-powered OCR to capture line items, taxes, totals, barcodes, vendor details, and other financial data across 91 currencies and 38 languages with enterprise-grade accuracy.
  version: v8
  contact:
    name: Veryfi Support
    url: https://docs.veryfi.com/
    email: support@veryfi.com
  license:
    name: Proprietary
    url: https://www.veryfi.com/terms/
servers:
- url: https://api.veryfi.com/api/v8
  description: Veryfi OCR API v8
security:
- clientId: []
  apiKey: []
tags:
- name: Checks
paths:
  /partner/checks:
    post:
      operationId: processCheck
      summary: Process a Check
      description: Submit a check image for OCR extraction including bank routing number, account number, check number, payee, amount, and date.
      tags:
      - Checks
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProcessDocumentRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ProcessDocumentRequest'
      responses:
        '201':
          description: Check processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Check'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    get:
      operationId: listChecks
      summary: List All Checks
      description: Retrieve a list of previously processed checks.
      tags:
      - Checks
      responses:
        '200':
          description: List of checks
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Check'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /partner/checks/{documentId}:
    get:
      operationId: getCheck
      summary: Get a Check
      description: Retrieve a specific processed check by ID.
      tags:
      - Checks
      parameters:
      - name: documentId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Check details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Check'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      operationId: deleteCheck
      summary: Delete a Check
      description: Permanently delete a processed check.
      tags:
      - Checks
      parameters:
      - name: documentId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Deleted successfully
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Check:
      type: object
      description: A processed check with extracted data
      properties:
        id:
          type: integer
        routing_number:
          type: string
          description: Bank routing number (MICR)
        account_number:
          type: string
          description: Bank account number (MICR)
        check_number:
          type: string
          description: Check number
        payee:
          type: string
          description: Pay to the order of
        payer:
          type: string
          description: Check issuer name
        amount:
          type: number
          format: float
          description: Check amount
        date:
          type: string
          description: Check date
        memo:
          type: string
          description: Memo field contents
    Error:
      type: object
      description: API error response
      properties:
        status:
          type: integer
          description: HTTP status code
        error:
          type: string
          description: Error type
        message:
          type: string
          description: Human-readable error message
    ProcessDocumentRequest:
      type: object
      description: Request body for document processing operations
      properties:
        file_url:
          type: string
          format: uri
          description: Publicly accessible URL to the document
        file_urls:
          type: array
          items:
            type: string
            format: uri
          description: Multiple document URLs (for multi-page documents)
        file_data:
          type: string
          description: Base64-encoded document data
        file:
          type: string
          format: binary
          description: Binary file upload
        async:
          type: boolean
          default: false
          description: Enable asynchronous processing via webhook
        boost_mode:
          type: boolean
          default: false
          description: Skip enrichment for faster processing
        max_pages_to_process:
          type: integer
          default: 15
          maximum: 15
          description: Maximum pages to process
        bounding_boxes:
          type: boolean
          default: false
          description: Include coordinate data for extracted fields
        confidence_details:
          type: boolean
          default: false
          description: Include confidence scores for each extracted field
        external_id:
          type: string
          description: Custom identifier for the document in your system
        tags:
          type: array
          items:
            type: string
          description: Tags for document organization
        country:
          type: string
          description: Two-letter country code as currency hint
        parse_address:
          type: boolean
          description: Break address fields into individual components
  securitySchemes:
    clientId:
      type: apiKey
      in: header
      name: CLIENT-ID
      description: Your Veryfi account client identifier
    apiKey:
      type: apiKey
      in: header
      name: AUTHORIZATION
      description: 'API key in format: ''apikey USERNAME:API_KEY'''
    requestSignature:
      type: apiKey
      in: header
      name: X-Veryfi-Request-Signature
      description: HMAC-SHA256 signature for request validation